qxLib
Classes | Macros | Functions
logger.h File Reference
#include <qx/containers/string/string_converters.h>
#include <qx/logger/fwrite_logger_stream.h>
#include <qx/logger/time_string.h>
#include <qx/macros/details/macro_user_message.h>
#include <qx/patterns/singleton.h>
#include <qx/sbo/sbo_poly.h>
#include <shared_mutex>
#include <qx/logger/logger.inl>

Go to the source code of this file.

Classes

class  qx::logger
 Logger class. More...
 
struct  qx::logger::category_data
 
class  qx::logger_singleton
 Default logger instance. More...
 

Macros

#define QX_LOG_C(category, eVerbosity, ...)   _QX_LOG_C(constexpr, category, eVerbosity, ##__VA_ARGS__)
 Log with category. More...
 
#define QX_LOG(eVerbosity, ...)   QX_LOG_C(QX_GET_FILE_CATEGORY(), eVerbosity, ##__VA_ARGS__)
 Log message. More...
 
#define QX_LOG_REF(category, eVerbosity, ...)   _QX_LOG_C(, category, eVerbosity, ##__VA_ARGS__)
 Log with category and with non compile time category check. More...
 

Functions

logger & qx::get_logger () noexcept
 Get the logger instance used in QX_LOG macros. More...
 

Detailed Description

Author
Khrapov
Date
17.06.2019

Definition in file logger.h.

Macro Definition Documentation

◆ QX_LOG

#define QX_LOG (   eVerbosity,
  ... 
)    QX_LOG_C(QX_GET_FILE_CATEGORY(), eVerbosity, ##__VA_ARGS__)

Log message.

Parameters
eVerbosity- message verbosity
...- user message and its format args. the format string should be without QXT

Definition at line 38 of file logger.h.

◆ QX_LOG_C

#define QX_LOG_C (   category,
  eVerbosity,
  ... 
)    _QX_LOG_C(constexpr, category, eVerbosity, ##__VA_ARGS__)

Log with category.

Parameters
category- category to be used to manage output
eVerbosity- message verbosity
...- user message and its format args. the format string should be without QXT

Definition at line 31 of file logger.h.

◆ QX_LOG_REF

#define QX_LOG_REF (   category,
  eVerbosity,
  ... 
)    _QX_LOG_C(, category, eVerbosity, ##__VA_ARGS__)

Log with category and with non compile time category check.

Parameters
category- category to be used to manage output
eVerbosity- message verbosity
...- user message and its format args. the format string should be without QXT

Definition at line 46 of file logger.h.

Function Documentation

◆ get_logger()

logger& qx::get_logger ( )
inlinenoexcept

Get the logger instance used in QX_LOG macros.

Return values
-logger instance

Definition at line 220 of file logger.h.