25 #include <boost/foreach.hpp>
45 tmp =
instance_.load(boost::memory_order_consume);
49 instance_.store(tmp, boost::memory_order_release);
72 output.
print(msg, sev, file, line);
Logger - defined in the form of a singleton, with double-checked locking pattern (DCLP) based access ...
Severity_t
Message severity level.
static boost::atomic< Logger * > instance_
void setSeverityLevel(Severity_t sev)
void log(const std::string &file, int line, Severity_t sev, const std::string &msg)
Contains declaration of a logger, a singleton responsible for logging and displaying all kinds of mes...
Severity_t getLvl() const
void incrementSeverityLevel()
void setLvl(Severity_t sev)
Abstract interface for different logger outputs.
static Logger * getInstance()
void addOutput(LoggerOutput *out)
boost::ptr_vector< LoggerOutput > outputs
void decrementSeverityLevel()
virtual void print(const std::string &msg_, Severity_t severity_, const std::string &file_, int line_) const =0
Logs given message. Depending on actual implementation, it can be printed on terminal, ncurses window, file etc.
static boost::mutex instantiation_mutex