CoriEngine
Loading...
Searching...
No Matches
Cori::Logger Class Reference

Logger is the first thing that is initialized during startup. Does console and file logging. More...

#include <Logger.hpp>

Classes

struct  Tags
 Available logger tags in somewhat hierarchical state. These are used in CORI_DEBUGLEVEL_CORE_TAGGED logging calls. More...

Public Types

enum class  LogLevel {
  CORI_TRACE , CORI_DEBUG , CORI_INFO , CORI_WARN ,
  CORI_ERROR , CORI_FATAL
}

Static Public Member Functions

static void EnableVirtualTerminalProcessing ()
static void Init (bool async, bool fileWrite)
static bool GetStatus ()
static std::shared_ptr< spdlog::logger > & GetCoreLogger ()
static std::shared_ptr< spdlog::logger > & GetClientLogger ()
static void SetCoreLogLevel (LogLevel level)
static void SetClientLogLevel (LogLevel level)
template<typename T>
static auto ColoredText (const T &text, const fmt::color c, const fmt::text_style s=fmt::text_style{})
template<typename T>
static auto HighlightedText (const T &text, const fmt::color c, const fmt::text_style s=fmt::text_style{})
static std::string BoolAlpha (const bool b)
static void EnableCoreTag (const char *tag)
 Enables the logging of a specific core tag.
static void EnableCoreTags (const std::initializer_list< const char * > tags)
 Same as EnableCoreTag but enables multiple tags at once.
static void DisableCoreTag (const char *tag)
 Disables the logging of a specific core tag.
static void DisableCoreTags (const std::initializer_list< const char * > tags)
 Same as DisableCoreTag but disables multiple tags at once.
static bool IsCoreTagDisabled (const char *tag)
 Checks if a specific core tag is enabled.
static void ClearCoreTagFilter ()
 Clears the core tag filter, all tags that were disabled become enabled again as a result.
static std::vector< std::string > GetCoreInactiveTags ()
 Gies a list of all currently disabled core tags.
static void EnableClientTag (const char *tag)
 Enables the logging of a specific client tag.
static void EnableClientTags (const std::initializer_list< const char * > tags)
 Same as EnableClientTag but enables multiple tags at once.
static void DisableClientTag (const char *tag)
 Disables the logging of a specific core tag.
static void DisableClientTags (const std::initializer_list< const char * > tags)
 Same as DisableClientTag but disables multiple tags at once.
static bool IsClientTagDisabled (const char *tag)
 Checks if a specific client tag is enabled.
static void ClearClientTagFilter ()
 Clears the client tag filter, all tags that were disabled become enabled again as a result.
static std::vector< std::string > GetClientInactiveTags ()
 Gies a list of all currently disabled client tags.
template<typename... Args>
static void CoreLogTraceTagged (const std::initializer_list< const char * > tags, const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void CoreLogDebugTagged (const std::initializer_list< const char * > tags, const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void CoreLogInfoTagged (const std::initializer_list< const char * > tags, const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void CoreLogWarnTagged (const std::initializer_list< const char * > tags, const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void CoreLogErrorTagged (const std::initializer_list< const char * > tags, const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void CoreLogFatalTagged (const std::initializer_list< const char * > tags, const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void ClientLogTraceTagged (const std::initializer_list< const char * > tags, const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void ClientLogDebugTagged (const std::initializer_list< const char * > tags, const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void ClientLogInfoTagged (const std::initializer_list< const char * > tags, const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void ClientLogWarnTagged (const std::initializer_list< const char * > tags, const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void ClientLogErrorTagged (const std::initializer_list< const char * > tags, const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void ClientLogFatalTagged (const std::initializer_list< const char * > tags, const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void CoreLogTrace (const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void CoreLogDebug (const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void CoreLogInfo (const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void CoreLogWarn (const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void CoreLogError (const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void CoreLogFatal (const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void ClientLogTrace (const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void ClientLogDebug (const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void ClientLogInfo (const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void ClientLogWarn (const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void ClientLogError (const fmt::format_string< Args... > &fmt, Args &&... args)
template<typename... Args>
static void ClientLogFatal (const fmt::format_string< Args... > &fmt, Args &&... args)
static void SampleColors ()

Detailed Description

Logger is the first thing that is initialized during startup. Does console and file logging.

Definition at line 27 of file Logger.hpp.

Member Enumeration Documentation

◆ LogLevel

enum class Cori::Logger::LogLevel
strong
Enumerator
CORI_TRACE 
CORI_DEBUG 
CORI_INFO 
CORI_WARN 
CORI_ERROR 
CORI_FATAL 

Definition at line 29 of file Logger.hpp.

Member Function Documentation

◆ BoolAlpha()

std::string Cori::Logger::BoolAlpha ( const bool b)
inlinestatic

Definition at line 181 of file Logger.hpp.

◆ ClearClientTagFilter()

void Cori::Logger::ClearClientTagFilter ( )
static

Clears the client tag filter, all tags that were disabled become enabled again as a result.

Definition at line 230 of file Logger.cpp.

◆ ClearCoreTagFilter()

void Cori::Logger::ClearCoreTagFilter ( )
static

Clears the core tag filter, all tags that were disabled become enabled again as a result.

Definition at line 186 of file Logger.cpp.

◆ ClientLogDebug()

template<typename... Args>
void Cori::Logger::ClientLogDebug ( const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 740 of file Logger.hpp.

◆ ClientLogDebugTagged()

template<typename... Args>
void Cori::Logger::ClientLogDebugTagged ( const std::initializer_list< const char * > tags,
const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 472 of file Logger.hpp.

◆ ClientLogError()

template<typename... Args>
void Cori::Logger::ClientLogError ( const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 794 of file Logger.hpp.

◆ ClientLogErrorTagged()

template<typename... Args>
void Cori::Logger::ClientLogErrorTagged ( const std::initializer_list< const char * > tags,
const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 553 of file Logger.hpp.

◆ ClientLogFatal()

template<typename... Args>
void Cori::Logger::ClientLogFatal ( const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 812 of file Logger.hpp.

◆ ClientLogFatalTagged()

template<typename... Args>
void Cori::Logger::ClientLogFatalTagged ( const std::initializer_list< const char * > tags,
const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 580 of file Logger.hpp.

◆ ClientLogInfo()

template<typename... Args>
void Cori::Logger::ClientLogInfo ( const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 758 of file Logger.hpp.

◆ ClientLogInfoTagged()

template<typename... Args>
void Cori::Logger::ClientLogInfoTagged ( const std::initializer_list< const char * > tags,
const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 499 of file Logger.hpp.

◆ ClientLogTrace()

template<typename... Args>
void Cori::Logger::ClientLogTrace ( const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 722 of file Logger.hpp.

◆ ClientLogTraceTagged()

template<typename... Args>
void Cori::Logger::ClientLogTraceTagged ( const std::initializer_list< const char * > tags,
const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 445 of file Logger.hpp.

◆ ClientLogWarn()

template<typename... Args>
void Cori::Logger::ClientLogWarn ( const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 776 of file Logger.hpp.

◆ ClientLogWarnTagged()

template<typename... Args>
void Cori::Logger::ClientLogWarnTagged ( const std::initializer_list< const char * > tags,
const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 526 of file Logger.hpp.

◆ ColoredText()

template<typename T>
auto Cori::Logger::ColoredText ( const T & text,
const fmt::color c,
const fmt::text_style s = fmt::text_style{} )
inlinestatic

Definition at line 172 of file Logger.hpp.

◆ CoreLogDebug()

template<typename... Args>
void Cori::Logger::CoreLogDebug ( const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 628 of file Logger.hpp.

◆ CoreLogDebugTagged()

template<typename... Args>
void Cori::Logger::CoreLogDebugTagged ( const std::initializer_list< const char * > tags,
const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 307 of file Logger.hpp.

◆ CoreLogError()

template<typename... Args>
void Cori::Logger::CoreLogError ( const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 684 of file Logger.hpp.

◆ CoreLogErrorTagged()

template<typename... Args>
void Cori::Logger::CoreLogErrorTagged ( const std::initializer_list< const char * > tags,
const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 389 of file Logger.hpp.

◆ CoreLogFatal()

template<typename... Args>
void Cori::Logger::CoreLogFatal ( const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 702 of file Logger.hpp.

◆ CoreLogFatalTagged()

template<typename... Args>
void Cori::Logger::CoreLogFatalTagged ( const std::initializer_list< const char * > tags,
const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 416 of file Logger.hpp.

◆ CoreLogInfo()

template<typename... Args>
void Cori::Logger::CoreLogInfo ( const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 647 of file Logger.hpp.

◆ CoreLogInfoTagged()

template<typename... Args>
void Cori::Logger::CoreLogInfoTagged ( const std::initializer_list< const char * > tags,
const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 334 of file Logger.hpp.

◆ CoreLogTrace()

template<typename... Args>
void Cori::Logger::CoreLogTrace ( const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 609 of file Logger.hpp.

◆ CoreLogTraceTagged()

template<typename... Args>
void Cori::Logger::CoreLogTraceTagged ( const std::initializer_list< const char * > tags,
const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 280 of file Logger.hpp.

◆ CoreLogWarn()

template<typename... Args>
void Cori::Logger::CoreLogWarn ( const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 666 of file Logger.hpp.

◆ CoreLogWarnTagged()

template<typename... Args>
void Cori::Logger::CoreLogWarnTagged ( const std::initializer_list< const char * > tags,
const fmt::format_string< Args... > & fmt,
Args &&... args )
inlinestatic

Definition at line 362 of file Logger.hpp.

◆ DisableClientTag()

void Cori::Logger::DisableClientTag ( const char * tag)
static

Disables the logging of a specific core tag.

Parameters
tagTag to disable.

Definition at line 211 of file Logger.cpp.

◆ DisableClientTags()

void Cori::Logger::DisableClientTags ( const std::initializer_list< const char * > tags)
static

Same as DisableClientTag but disables multiple tags at once.

Parameters
tagsTags to disable.

Definition at line 216 of file Logger.cpp.

◆ DisableCoreTag()

void Cori::Logger::DisableCoreTag ( const char * tag)
static

Disables the logging of a specific core tag.

Parameters
tagTag to disable.

Definition at line 169 of file Logger.cpp.

◆ DisableCoreTags()

void Cori::Logger::DisableCoreTags ( const std::initializer_list< const char * > tags)
static

Same as DisableCoreTag but disables multiple tags at once.

Parameters
tagsTags to disable.

Definition at line 174 of file Logger.cpp.

◆ EnableClientTag()

void Cori::Logger::EnableClientTag ( const char * tag)
static

Enables the logging of a specific client tag.

Parameters
tagTag to enable.
Note
All client tags are enabled by default, you only need to enable a tag if you disabled it earlier.

Definition at line 199 of file Logger.cpp.

◆ EnableClientTags()

void Cori::Logger::EnableClientTags ( const std::initializer_list< const char * > tags)
static

Same as EnableClientTag but enables multiple tags at once.

Parameters
tagsTags to enable.
Note
All client tags are enabled by default, you only need to enable a tag if you disabled it earlier.

Definition at line 204 of file Logger.cpp.

◆ EnableCoreTag()

void Cori::Logger::EnableCoreTag ( const char * tag)
static

Enables the logging of a specific core tag.

Parameters
tagTag to enable.
Note
All core tags are enabled by default, you only need to enable a tag if you disabled it earlier.

Definition at line 157 of file Logger.cpp.

◆ EnableCoreTags()

void Cori::Logger::EnableCoreTags ( const std::initializer_list< const char * > tags)
static

Same as EnableCoreTag but enables multiple tags at once.

Parameters
tagsTags to enable.
Note
All core tags are enabled by default, you only need to enable a tag if you disabled it earlier.

Definition at line 162 of file Logger.cpp.

◆ EnableVirtualTerminalProcessing()

void Cori::Logger::EnableVirtualTerminalProcessing ( )
static

Definition at line 23 of file Logger.cpp.

◆ GetClientInactiveTags()

std::vector< std::string > Cori::Logger::GetClientInactiveTags ( )
static

Gies a list of all currently disabled client tags.

Returns
Vector with all disabled client tags.

Definition at line 236 of file Logger.cpp.

◆ GetClientLogger()

std::shared_ptr< spdlog::logger > & Cori::Logger::GetClientLogger ( )
inlinestatic

Definition at line 166 of file Logger.hpp.

◆ GetCoreInactiveTags()

std::vector< std::string > Cori::Logger::GetCoreInactiveTags ( )
static

Gies a list of all currently disabled core tags.

Returns
Vector with all disabled core tags.

Definition at line 192 of file Logger.cpp.

◆ GetCoreLogger()

std::shared_ptr< spdlog::logger > & Cori::Logger::GetCoreLogger ( )
inlinestatic

Definition at line 165 of file Logger.hpp.

◆ GetStatus()

bool Cori::Logger::GetStatus ( )
static

Definition at line 95 of file Logger.cpp.

◆ HighlightedText()

template<typename T>
auto Cori::Logger::HighlightedText ( const T & text,
const fmt::color c,
const fmt::text_style s = fmt::text_style{} )
inlinestatic

Definition at line 177 of file Logger.hpp.

◆ Init()

void Cori::Logger::Init ( bool async,
bool fileWrite )
static

Definition at line 43 of file Logger.cpp.

◆ IsClientTagDisabled()

bool Cori::Logger::IsClientTagDisabled ( const char * tag)
static

Checks if a specific client tag is enabled.

Parameters
tagTag to check.
Returns
True if enabled, false otherwise.

Definition at line 225 of file Logger.cpp.

◆ IsCoreTagDisabled()

bool Cori::Logger::IsCoreTagDisabled ( const char * tag)
static

Checks if a specific core tag is enabled.

Parameters
tagTag to check.
Returns
True if enabled, false otherwise.

Definition at line 181 of file Logger.cpp.

◆ SampleColors()

void Cori::Logger::SampleColors ( )
inlinestatic

Definition at line 830 of file Logger.hpp.

Here is the call graph for this function:

◆ SetClientLogLevel()

void Cori::Logger::SetClientLogLevel ( LogLevel level)
static

Definition at line 99 of file Logger.cpp.

◆ SetCoreLogLevel()

void Cori::Logger::SetCoreLogLevel ( LogLevel level)
static

Definition at line 128 of file Logger.cpp.


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