13 #define Log(lvl, mymask, where, what) \
15 if (Logger::get()->getLevel() >= lvl && Logger::get()->isLogged(mymask)) \
17 std::ostringstream outs; \
18 outs << "dmlite " << where << " " << __func__ << " : " << what; \
19 Logger::get()->log((Logger::Level)lvl, outs.str()); \
24 #define Err(where, what) \
26 std::ostringstream outs; \
27 outs << "dmlite " << where << " !! " << __func__ << " : " << what; \
28 Logger::get()->log((Logger::Level)0, outs.str()); \
107 void log(
Level lvl, std::string
const & msg)
const;
static bitmask unregistered
Definition: logger.h:43
void registerComponents(std::vector< component > const &components)
std::map< component, bitmask > mapping
component name to bitmask mapping
Definition: logger.h:152
bitmask getMask(component const &comp)
static Logger * instance
Definition: logger.h:60
bool isLogged(bitmask m) const
Definition: logger.h:83
int size
number of components that were assigned with a bitmask
Definition: logger.h:148
void setLogged(component const &comp, bool tobelogged)
unsigned long long bitmask
typedef for a bitmask (long long)
Definition: logger.h:39
short level
current log level
Definition: logger.h:146
void logAll()
Definition: logger.h:113
Logger & operator=(Logger const &)
void setLevel(Level lvl)
Definition: logger.h:77
bitmask mask
global bitmask with all registered components
Definition: logger.h:150
std::string component
typedef for a component name (std:string)
Definition: logger.h:41
void registerComponent(component const &comp)
void log(Level lvl, std::string const &msg) const
Level
Definition: logger.h:48
Logger()
Private constructor.
short getLevel() const
Definition: logger.h:71
static int getStackTrace(std::string &s)