9 #ifndef YAGE_CORE_LOGGER_H
10 #define YAGE_CORE_LOGGER_H
16 #include "../util/active.h"
28 explicit Logger(
const std::string &file_path);
33 const std::string &fileName =
"",
int lineNum = -1);
37 void remove(
const LogSink &sink);
46 std::vector<LogSink> sinks_;
47 std::unique_ptr<Active> active_;
53 #define yLogger (yage::Logger::instance())
56 (yage::Logger::instance()(yage::LogLevel::DEBUG, __FILE__, __LINE__))
59 (yage::Logger::instance()(yage::LogLevel::INFO, __FILE__, __LINE__))
62 (yage::Logger::instance()(yage::LogLevel::WARNING, __FILE__, __LINE__))
65 (yage::Logger::instance()(yage::LogLevel::ERROR, __FILE__, __LINE__))
68 (yage::Logger::instance()(yage::LogLevel::FATAL, __FILE__, __LINE__))
Logger()
Definition: logger.cpp:22
Definition: logmessage.h:23
LogLevel
Different log levels that can be assigned to each message sent to the Logger.
Definition: loglevel.h:20
void setLevel(LogLevel min_level)
Definition: logger.cpp:95
void clear()
Definition: logger.cpp:83
static Logger & instance()
Definition: logger.cpp:88
LogMessage operator()(LogLevel level=LogLevel::INFO, const std::string &fileName="", int lineNum=-1)
Definition: logger.cpp:47
void flush(const LogMessage *msg)
Definition: logger.cpp:53
void add(const LogSink &sink)
Definition: logger.cpp:69