oak - a modern logger 1.1.0
Loading...
Searching...
No Matches
oak::Logger Class Reference

#include <oak.hpp>

Public Types

using Formatter = std::function< std::string(enum Level, int flags, const char *file, int line, const std::string &log)>
 

Public Member Functions

 Logger ()
 
 ~Logger ()=default
 
template<typename... Args>
void debug (const char *fmt, Args &&...args)
 
template<typename... Args>
void debug2 (const char *file, int line, const char *fmt, Args &&...args)
 
template<typename... Args>
void info (const char *fmt, Args &&...args)
 
template<typename... Args>
void info2 (const char *file, int line, const char *fmt, Args &&...args)
 
template<typename... Args>
void warn (const char *fmt, Args &&...args)
 
template<typename... Args>
void warn2 (const char *file, int line, const char *fmt, Args &&...args)
 
template<typename... Args>
void error (const char *fmt, Args &&...args)
 
template<typename... Args>
void error2 (const char *file, int line, const char *fmt, Args &&...args)
 
template<typename... Args>
void log (enum Level l, const char *fmt, Args &&...args)
 
template<typename... Args>
void log2 (enum Level level, const char *file, int line, const char *fmt, Args &&...args)
 
template<typename W , typename ... Args>
void add_writer (Args &&...init_args)
 
bool remove_writer (const std::string &name)
 
enum Level get_level () const
 
void set_level (enum Level level)
 
unsigned int get_flags () const
 
template<typename ... F>
void set_flags (F &&... flags)
 
template<typename ... F>
void add_flags (Flags flag, F &&... flags)
 
void add_flags (Flags flag)
 
std::expected< int, std::string > load_config_file (const std::filesystem::path &file)
 
void set_formatter (Formatter formatter)
 
void enable_event (unsigned int id, const std::string &name)
 
void disable_event (unsigned int id)
 
template<typename... Args>
void event2 (const char *file, int line, unsigned int id, const char *fmt, Args &&...args)
 
template<typename... Args>
void event (unsigned int id, const char *fmt, Args &&...args)
 

Detailed Description

Definition at line 134 of file oak.hpp.

Member Typedef Documentation

◆ Formatter

using oak::Logger::Formatter = std::function<std::string(enum Level, int flags, const char* file, int line, const std::string& log)>

Definition at line 138 of file oak.hpp.

Constructor & Destructor Documentation

◆ Logger()

Logger::Logger ( )

Definition at line 116 of file oak.cpp.

◆ ~Logger()

oak::Logger::~Logger ( )
default

Member Function Documentation

◆ add_flags() [1/2]

void oak::Logger::add_flags ( Flags  flag)
inline

◆ add_flags() [2/2]

template<typename ... F>
void oak::Logger::add_flags ( Flags  flag,
F &&...  flags 
)

◆ add_writer()

template<typename W , typename ... Args>
void oak::Logger::add_writer ( Args &&...  init_args)

◆ debug()

template<typename... Args>
void oak::Logger::debug ( const char fmt,
Args &&...  args 
)
inline

◆ debug2()

template<typename... Args>
void oak::Logger::debug2 ( const char file,
int  line,
const char fmt,
Args &&...  args 
)
inline

◆ disable_event()

void Logger::disable_event ( unsigned int  id)

Definition at line 317 of file oak.cpp.

◆ enable_event()

void Logger::enable_event ( unsigned int  id,
const std::string &  name 
)

Definition at line 311 of file oak.cpp.

◆ error()

template<typename... Args>
void oak::Logger::error ( const char fmt,
Args &&...  args 
)
inline

◆ error2()

template<typename... Args>
void oak::Logger::error2 ( const char file,
int  line,
const char fmt,
Args &&...  args 
)
inline

◆ event()

template<typename... Args>
void oak::Logger::event ( unsigned int  id,
const char fmt,
Args &&...  args 
)

◆ event2()

template<typename... Args>
void oak::Logger::event2 ( const char file,
int  line,
unsigned int  id,
const char fmt,
Args &&...  args 
)

◆ get_flags()

unsigned int Logger::get_flags ( ) const

Definition at line 161 of file oak.cpp.

◆ get_level()

enum Level Logger::get_level ( ) const

Definition at line 142 of file oak.cpp.

◆ info()

template<typename... Args>
void oak::Logger::info ( const char fmt,
Args &&...  args 
)
inline

◆ info2()

template<typename... Args>
void oak::Logger::info2 ( const char file,
int  line,
const char fmt,
Args &&...  args 
)
inline

◆ load_config_file()

std::expected< int, std::string > Logger::load_config_file ( const std::filesystem::path &  file)

Definition at line 219 of file oak.cpp.

◆ log()

template<typename... Args>
void oak::Logger::log ( enum Level  l,
const char fmt,
Args &&...  args 
)

◆ log2()

template<typename... Args>
void oak::Logger::log2 ( enum Level  level,
const char file,
int  line,
const char fmt,
Args &&...  args 
)

◆ remove_writer()

bool Logger::remove_writer ( const std::string &  name)

Definition at line 127 of file oak.cpp.

◆ set_flags()

template<typename ... F>
void oak::Logger::set_flags ( F &&...  flags)

◆ set_formatter()

void Logger::set_formatter ( Formatter  formatter)

Definition at line 154 of file oak.cpp.

◆ set_level()

void Logger::set_level ( enum Level  level)

Definition at line 147 of file oak.cpp.

◆ warn()

template<typename... Args>
void oak::Logger::warn ( const char fmt,
Args &&...  args 
)
inline

◆ warn2()

template<typename... Args>
void oak::Logger::warn2 ( const char file,
int  line,
const char fmt,
Args &&...  args 
)
inline

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