18 #ifndef INCLUDED_CLOGGER
19 #define INCLUDED_CLOGGER
32 #define LOGMESSAGE g_Logger->LogMessage
33 #define LOGMESSAGERENDER g_Logger->LogMessageRender
34 #define LOGWARNING g_Logger->LogWarning
35 #define LOGERROR g_Logger->LogError
61 CLogger(std::ostream* mainLog, std::ostream* interestingLog,
bool takeOwnership,
bool useDebugPrintf);
67 void WriteMessage(
const wchar_t* message,
bool doRender);
74 void LogWarning(const
wchar_t* fmt, ...) WPRINTF_ARGS(2);
75 void LogError(const
wchar_t* fmt, ...) WPRINTF_ARGS(2);
Error/warning/message logging class.
void PushRenderMessage(ELogMethod method, const wchar_t *message)
void LogMessage(const wchar_t *fmt,...) WPRINTF_ARGS(2)
void CleanupRenderQueue()
NONCOPYABLE(TestStdoutLogger)
void LogError(const wchar_t *fmt,...) WPRINTF_ARGS(2)
std::deque< RenderedMessage > m_RenderMessages
A non-recursive mutual exclusion lock.
Helper class for unit tests - captures all log output while it is in scope, and returns it as a singl...
double m_RenderLastEraseTime
std::stringstream m_Stream
void WriteError(const wchar_t *message)
std::ostream * m_InterestingLog
void WriteWarning(const wchar_t *message)
#define WPRINTF_ARGS(fmtpos)
void LogMessageRender(const wchar_t *fmt,...) WPRINTF_ARGS(2)
void WriteMessage(const wchar_t *message, bool doRender)
void LogWarning(const wchar_t *fmt,...) WPRINTF_ARGS(2)
Helper class for unit tests - redirects all log output to stdout.