diff options
Diffstat (limited to 'lldb/tools/lldb-mi/MICmnStreamStdout.h')
-rw-r--r-- | lldb/tools/lldb-mi/MICmnStreamStdout.h | 80 |
1 files changed, 42 insertions, 38 deletions
diff --git a/lldb/tools/lldb-mi/MICmnStreamStdout.h b/lldb/tools/lldb-mi/MICmnStreamStdout.h index 9d7f91a..928dcc2 100644 --- a/lldb/tools/lldb-mi/MICmnStreamStdout.h +++ b/lldb/tools/lldb-mi/MICmnStreamStdout.h @@ -10,50 +10,54 @@ #pragma once // In-house headers: -#include "MIUtilString.h" #include "MICmnBase.h" -#include "MIUtilThreadBaseStd.h" #include "MIUtilSingletonBase.h" +#include "MIUtilString.h" +#include "MIUtilThreadBaseStd.h" -//++ ============================================================================ +//++ +//============================================================================ // Details: MI common code class. The MI driver requires this object. // CMICmnStreamStdout sets up and tears downs stdout for the driver. // // Singleton class. //-- -class CMICmnStreamStdout : public CMICmnBase, public MI::ISingleton<CMICmnStreamStdout> -{ - friend class MI::ISingleton<CMICmnStreamStdout>; - - // Statics: - public: - static bool TextToStdout(const CMIUtilString &vrTxt); - static bool WritePrompt(); - - // Methods: - public: - bool Initialize() override; - bool Shutdown() override; - // - bool Lock(); - bool Unlock(); - bool Write(const CMIUtilString &vText, const bool vbSendToLog = true); - bool WriteMIResponse(const CMIUtilString &vText, const bool vbSendToLog = true); - - // Methods: - private: - /* ctor */ CMICmnStreamStdout(); - /* ctor */ CMICmnStreamStdout(const CMICmnStreamStdout &); - void operator=(const CMICmnStreamStdout &); - // - bool WritePriv(const CMIUtilString &vText, const CMIUtilString &vTxtForLogFile, const bool vbSendToLog = true); - - // Overridden: - private: - // From CMICmnBase - /* dtor */ ~CMICmnStreamStdout() override; - - // Attributes: - private: - CMIUtilThreadMutex m_mutex; // Mutex object for sync during writing to stream +class CMICmnStreamStdout : public CMICmnBase, + public MI::ISingleton<CMICmnStreamStdout> { + friend class MI::ISingleton<CMICmnStreamStdout>; + + // Statics: +public: + static bool TextToStdout(const CMIUtilString &vrTxt); + static bool WritePrompt(); + + // Methods: +public: + bool Initialize() override; + bool Shutdown() override; + // + bool Lock(); + bool Unlock(); + bool Write(const CMIUtilString &vText, const bool vbSendToLog = true); + bool WriteMIResponse(const CMIUtilString &vText, + const bool vbSendToLog = true); + + // Methods: +private: + /* ctor */ CMICmnStreamStdout(); + /* ctor */ CMICmnStreamStdout(const CMICmnStreamStdout &); + void operator=(const CMICmnStreamStdout &); + // + bool WritePriv(const CMIUtilString &vText, + const CMIUtilString &vTxtForLogFile, + const bool vbSendToLog = true); + + // Overridden: +private: + // From CMICmnBase + /* dtor */ ~CMICmnStreamStdout() override; + + // Attributes: +private: + CMIUtilThreadMutex m_mutex; // Mutex object for sync during writing to stream }; |