19 static void setEnabled(
bool enable);
20 virtual void consumeMessage(
const char* source,
Category category, uint32_t errorNumber,
const char * message,
const char* filename,
int lineNumber)
override;
21 void flush(
bool flushAll =
true);
28 int64_t outputTime = 0;
29 const char* file =
nullptr;
#define COGSFOUNDATION_API
Definition: FoundationBase.h:31
Consumer is the base class for objects that want to consume log messages through the LogManager.
Definition: Consumer.h:18
ThrottledConsumer is a log message consumer that attempts to throttle messages to reduce log spam.
Definition: ThrottledConsumer.h:17
std::map< size_t, Message > MessageMap
Definition: ThrottledConsumer.h:35
Mutex messagesMutex
Definition: ThrottledConsumer.h:38
virtual void outputMessage(const std::string &prefix, const Message &message)=0
MessageMap messages
Definition: ThrottledConsumer.h:37
void consumeMessage(const char *source, Category category, uint32_t errorNumber, const char *filename, int lineNumber, _Printf_format_string_ const char *fmt, va_list argptr)
Forwards the incoming log message to all interested consumers.
Definition: LogManager.cpp:49
Category
Logging categories used to filter log messages.
Definition: LogManager.h:31
Main Cogs namespace.
Definition: MortonCode.h:5
std::mutex Mutex
Definition: Threads.h:62
Definition: ThrottledConsumer.h:24
std::string message
Message to be output.
Definition: ThrottledConsumer.h:25
std::string source
Source of this message.
Definition: ThrottledConsumer.h:26