MIRA
Classes | Namespaces | Macros | Typedefs | Enumerations | Functions | Variables
LoggingCore.h File Reference

Core class of the logging library. More...

#include <map>
#include <boost/thread/mutex.hpp>
#include <boost/function.hpp>
#include <platform/Types.h>
#include <thread/ThreadID.h>
#include <utils/Singleton.h>
#include <utils/Time.h>
#include <utils/Foreach.h>
Include dependency graph for LoggingCore.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  LogRecord
 Holds all the information about a log entry. More...
 
struct  LogRecordFunctionInfo
 Holds information about a log entry function. More...
 
class  LogFormatterBase
 Abstract base class for sink formatters. More...
 
class  LogFilterBase
 Abstract base class for log filters. More...
 
class  LogSink
 Abstract base class for all log sinks. More...
 
class  LogCore
 Single instance of the core logging class. More...
 
class  Logger
 Helper class that is created to make one logging process atomic and thread safe. More...
 

Namespaces

 mira
 specialize cv::DataType for our ImgPixel and inherit from cv::DataType<Vec>
 

Macros

#define MIRA_LOGGER   (mira::LogCore::instance())
 Macro for easier access to the logging core instance. More...
 
#define MIRA_SEVERITY_MAX_LEVEL   mira::TRACE
 Compile time defined maximum log level In release build the maximum log level should be NOTICE to eliminate some of the logging and gain performance. More...
 
#define MIRA_LOG(level)
 Use this macro to log data. More...
 
#define MIRA_LOG_ALWAYS(level)   mira::Logger(level, mira::Time::now(), __FILE__, __LINE__, MIRA_FUNCTION, mira::getCurrentThreadID()).stream()
 Use this macro to log data. More...
 
#define MIRA_LOG_ATTR(level, time, file, line, function, threadID)
 Use this macro to log data when you have collected the log data yourself. More...
 
#define MIRA_TRACE   MIRA_LOG(mira::TRACE) << "in : " << __FILE__ << "(" << __LINE__ << ") in " << MIRA_FUNCTION << " "
 

Typedefs

typedef boost::shared_ptr< LogFormatterBase > LogFormatterPtr
 A shared pointer for a log formatter. More...
 
typedef boost::shared_ptr< LogFilterBase > LogFilterPtr
 A shared pointer for a log filter. More...
 
typedef boost::shared_ptr< LogSink > LogSinkPtr
 A shared pointer for a log sink. More...
 

Enumerations

enum  SeverityLevel {
  CRITICAL = 0, ERROR = 1, WARNING = 2, NOTICE = 3,
  DEBUG = 4, TRACE = 5
}
 Severity levels to graduate between different log outputs. More...
 

Functions

MIRA_BASE_EXPORT SeverityLevel stringToSeverityLevel (const std::string &levelString)
 Converts the specified string into a numeric severity level. More...
 
template<typename Reflector >
void reflect (Reflector &r, LogRecord &record)
 Non-intrusive reflector for LogRecord. More...
 

Variables

const std::string severityLevelStr []
 String conversion for the enum severity types. More...
 

Detailed Description

Core class of the logging library.

Author
Tim Langner
Date
2010/07/06

Macro Definition Documentation

◆ MIRA_TRACE

#define MIRA_TRACE   MIRA_LOG(mira::TRACE) << "in : " << __FILE__ << "(" << __LINE__ << ") in " << MIRA_FUNCTION << " "