18 #include <unordered_map> 28 void SetTracer(std::shared_ptr<ITracer> tracer);
72 virtual void Message(
const char* component,
const TTV_MessageLevel messageLevel,
const char* format, ...)
override;
86 void GetLinePrefix(
const char* component,
const char* messageLevel,
char* buffer,
size_t bufferLength);
89 virtual void Log(
const char* component,
const char* messageLevel,
const char* format, va_list args) = 0;
91 virtual bool OpenFile(
const std::string& path);
92 virtual bool OpenFile(
const std::wstring& path);
93 virtual void LogToFile(
const char* message);
94 virtual bool CloseFile();
110 : mComponent(component)
111 , mMessageLevel(messageLevel)
TTV_ErrorCode GetGlobalMessageLevel(TTV_MessageLevel &level)
TTV_MessageLevel
Definition: tracingtypes.h:14
AutoTracer(const char *component, const TTV_MessageLevel messageLevel, const char *message)
Definition: tracer.h:107
JSON (JavaScript Object Notation).
Definition: adsapi.h:16
std::shared_ptr< IMutex > mMutex
Tries to keep logging on different threads done atomically.
Definition: tracer.h:99
void Message(const char *component, const TTV_MessageLevel messageLevel, const char *format,...)
TTV_MessageLevel mMessageLevel
Definition: tracer.h:123
uint32_t TTV_ErrorCode
Definition: errortypes.h:30
FILE * mTraceFile
Definition: tracer.h:100
TTV_ErrorCode SetComponentMessageLevel(const char *component, TTV_MessageLevel level)
void MessageVaList(const char *component, const TTV_MessageLevel messageLevel, const char *format, va_list args)
TTV_ErrorCode SetGlobalMessageLevel(TTV_MessageLevel level)
TTV_ErrorCode GetComponentMessageLevel(const char *component, TTV_MessageLevel &level)
std::vector< char > mPrintBuffer
Definition: tracer.h:96
const char * mMessage
Definition: tracer.h:124
std::unordered_map< std::string, TTV_MessageLevel > mTraceLevels
Definition: tracer.h:97
const char * mComponent
Definition: tracer.h:122
TTV_MessageLevel mGlobalTraceLevel
Definition: tracer.h:98
void SetTracer(std::shared_ptr< ITracer > tracer)
~AutoTracer()
Definition: tracer.h:116
TTV_ErrorCode SetOutputFile(const std::string &path)