DDraceNetwork Docs
CAssertionLogger Class Reference
Inheritance diagram for CAssertionLogger:
[legend]
Collaboration diagram for CAssertionLogger:
[legend]

Classes

struct  SDebugMessageItem
 

Public Member Functions

 CAssertionLogger (const char *pAssertLogPath, const char *pGameName)
 
void Log (const CLogMessage *pMessage) override REQUIRES(!m_DbgMessageMutex)
 
void GlobalFinish () override REQUIRES(!m_DbgMessageMutex)
 
- Public Member Functions inherited from ILogger
virtual ~ILogger ()
 
void SetFilter (const CLogFilter &Filter)
 
virtual void Log (const CLogMessage *pMessage)=0
 
virtual void GlobalFinish ()
 
virtual void OnFilterChange ()
 

Private Member Functions

void Dump () REQUIRES(!m_DbgMessageMutex)
 

Private Attributes

CLock m_DbgMessageMutex
 
CStaticRingBuffer< SDebugMessageItem, sizeof(SDebugMessageItem) *64, CRingBufferBase::FLAG_RECYCLEm_DbgMessages
 
char m_aAssertLogPath [IO_MAX_PATH_LENGTH]
 
char m_aGameName [256]
 

Additional Inherited Members

- Protected Attributes inherited from ILogger
CLogFilter m_Filter
 

Constructor & Destructor Documentation

◆ CAssertionLogger()

CAssertionLogger::CAssertionLogger ( const char *  pAssertLogPath,
const char *  pGameName 
)

Member Function Documentation

◆ Dump()

void CAssertionLogger::Dump ( )
private

◆ GlobalFinish()

void CAssertionLogger::GlobalFinish ( )
overridevirtual

Flushes output buffers and shuts down. Global loggers cannot be destroyed because they might be accessed from multiple threads concurrently.

This function is called on the global logger by log_global_logger_finish when the program is about to shut down and loggers are supposed to finish writing the log messages they have received so far.

The destructor of this ILogger instance will not be called if this function is called.

See also
log_global_logger_finish

Reimplemented from ILogger.

◆ Log()

void CAssertionLogger::Log ( const CLogMessage pMessage)
overridevirtual

Send the specified message to the logging backend.

Parameters
pMessageStruct describing the log message.

Implements ILogger.

Member Data Documentation

◆ m_aAssertLogPath

char CAssertionLogger::m_aAssertLogPath[IO_MAX_PATH_LENGTH]
private

◆ m_aGameName

char CAssertionLogger::m_aGameName[256]
private

◆ m_DbgMessageMutex

CLock CAssertionLogger::m_DbgMessageMutex
private

◆ m_DbgMessages

CStaticRingBuffer<SDebugMessageItem, sizeof(SDebugMessageItem) * 64, CRingBufferBase::FLAG_RECYCLE> CAssertionLogger::m_DbgMessages
private

The documentation for this class was generated from the following file: