20 #ifndef LOGGING_H_3B1A3A0F
21 #define LOGGING_H_3B1A3A0F
23 #include "uscxml/config.h"
31 #define LOG(logger, lvl) logger.log(lvl)
32 #define LOG2(logger, lvl, thing) logger.log(lvl, thing)
33 #define LOGD(lvl) uscxml::Logger::getDefault().log(lvl)
34 #define LOGD2(lvl, thing) uscxml::Logger::getDefault().log(lvl, thing);
50 void log(LogSeverity severity,
const Event& event);
51 void log(LogSeverity severity,
const Data& data);
55 std::ostream& operator<<(
const std::string& message);
59 StreamLogger(LogSeverity severity, std::shared_ptr<LoggerImpl> logger) : _severity(severity), _logger(logger) {}
62 LogSeverity _severity;
63 std::shared_ptr<LoggerImpl> _logger;
73 virtual void log(LogSeverity severity,
const Event& event);
74 virtual void log(LogSeverity severity,
const Data& data);
75 virtual void log(LogSeverity severity,
const std::string& message);
78 static std::string severityToString(LogSeverity severity);
80 static Logger getDefault();
82 std::shared_ptr<LoggerImpl> getImpl()
const;
84 std::shared_ptr<LoggerImpl> _impl;
Definition: Breakpoint.cpp:26
#define PIMPL_OPERATORS(type)
The usual operators as required for the PIMPL pattern.
Definition: Common.h:68