//===-- SWIG Interface for SBStream -----------------------------*- C++ -*-===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// #include namespace lldb { class SBStream { public: SBStream (); ~SBStream (); bool IsValid() const; // If this stream is not redirected to a file, it will maintain a local // cache for the stream data which can be accessed using this accessor. const char * GetData (); // If this stream is not redirected to a file, it will maintain a local // cache for the stream output whose length can be accessed using this // accessor. size_t GetSize(); void Printf (const char *format, ...); void RedirectToFile (const char *path, bool append); void RedirectToFileHandle (FILE *fh, bool transfer_fh_ownership); void RedirectToFileDescriptor (int fd, bool transfer_fh_ownership); // If the stream is redirected to a file, forget about the file and if // ownership of the file was transfered to this object, close the file. // If the stream is backed by a local cache, clear this cache. void Clear (); }; } // namespace lldb