dEngine
Simple 2D C++ game engine
Classes | Typedefs | Enumerations | Functions | Variables
nanolog Namespace Reference

Namespace consiting of the nanolog logger This logger is a third party application that was added to this project to help facilitate logging. More...

Classes

class  Buffer
 
struct  BufferBase
 
class  FileWriter
 
struct  GuaranteedLogger
 
struct  NanoLog
 
class  NanoLogger
 
class  NanoLogLine
 
struct  NonGuaranteedLogger
 
class  QueueBuffer
 
class  RingBuffer
 
struct  SpinLock
 

Typedefs

typedef std::tuple< char, uint32_t, uint64_t, int32_t, int64_t, double, NanoLogLine::string_literal_t, char *> SupportedTypes
 

Enumerations

enum  LogLevel : uint8_t { LogLevel::INFO, LogLevel::WARN, LogLevel::CRIT }
 

Functions

void set_log_level (LogLevel level)
 
bool is_logged (LogLevel level)
 
void initialize (GuaranteedLogger gl, std::string const &log_directory, std::string const &log_file_name, uint32_t log_file_roll_size_mb)
 
void initialize (NonGuaranteedLogger ngl, std::string const &log_directory, std::string const &log_file_name, uint32_t log_file_roll_size_mb)
 
char const * to_string (LogLevel loglevel)
 
template<typename Arg >
char * decode (std::ostream &os, char *b, Arg *dummy)
 
template<>
char * decode (std::ostream &os, char *b, NanoLogLine::string_literal_t *dummy)
 
template<>
char * decode (std::ostream &os, char *b, char **dummy)
 

Variables

std::unique_ptr< NanoLoggernanologger
 
std::atomic< NanoLogger *> atomic_nanologger
 
std::atomic< unsigned int > loglevel = {0}
 

Detailed Description

Namespace consiting of the nanolog logger This logger is a third party application that was added to this project to help facilitate logging.

See also
https://github.com/Iyengar111/NanoLog

Typedef Documentation

◆ SupportedTypes

typedef std::tuple< char, uint32_t, uint64_t, int32_t, int64_t, double, NanoLogLine::string_literal_t, char * > nanolog::SupportedTypes

Enumeration Type Documentation

◆ LogLevel

enum nanolog::LogLevel : uint8_t
strong
Enumerator
INFO 
WARN 
CRIT 

Function Documentation

◆ decode() [1/3]

template<typename Arg >
char* nanolog::decode ( std::ostream &  os,
char *  b,
Arg *  dummy 
)

◆ decode() [2/3]

template<>
char* nanolog::decode ( std::ostream &  os,
char *  b,
NanoLogLine::string_literal_t dummy 
)

◆ decode() [3/3]

template<>
char* nanolog::decode ( std::ostream &  os,
char *  b,
char **  dummy 
)

◆ initialize() [1/2]

void nanolog::initialize ( GuaranteedLogger  gl,
std::string const &  log_directory,
std::string const &  log_file_name,
uint32_t  log_file_roll_size_mb 
)

◆ initialize() [2/2]

void nanolog::initialize ( NonGuaranteedLogger  ngl,
std::string const &  log_directory,
std::string const &  log_file_name,
uint32_t  log_file_roll_size_mb 
)

◆ is_logged()

bool nanolog::is_logged ( LogLevel  level)

◆ set_log_level()

void nanolog::set_log_level ( LogLevel  level)

◆ to_string()

char const* nanolog::to_string ( LogLevel  loglevel)

Variable Documentation

◆ atomic_nanologger

std::atomic< NanoLogger * > nanolog::atomic_nanologger

◆ loglevel

std::atomic< unsigned int > nanolog::loglevel = {0}

◆ nanologger

std::unique_ptr< NanoLogger > nanolog::nanologger