_JM_NAMESPACE::Logger< Formatter > Class Template Reference

#include <logger.h>

List of all members.

Public Member Functions

 Logger (std::ostream &out, const std::string &header)
 Logger (const std::string &header)
 ~Logger ()
void output (std::ostream &out)
void start_log (const std::string &prefix, const std::string &file, const std::string &function, int line)
template<typename T >
Loggeroperator<< (const T &msg)
void end_log ()

Private Attributes

Formatter _ft
std::ostream & _out
const std::string _header

Detailed Description

template<typename Formatter = SimpleFormatter>
class _JM_NAMESPACE::Logger< Formatter >

Logger class providing explicit formatting, runtime output level and output destination change. typedef _JM_NAMESPACE::Logger<> KernelLogger; KernelLogger kernelog ("KERNEL"); define LOG(logger,msg) \ logger.start_log ("level", __FILE__, __FUNCTION__, __LINE__); \ logger << msg; \ logger.end_log();

Advanced usage:


Constructor & Destructor Documentation

template<typename Formatter = SimpleFormatter>
_JM_NAMESPACE::Logger< Formatter >::Logger ( std::ostream &  out,
const std::string &  header 
) [inline]
template<typename Formatter = SimpleFormatter>
_JM_NAMESPACE::Logger< Formatter >::Logger ( const std::string &  header  )  [inline]
template<typename Formatter = SimpleFormatter>
_JM_NAMESPACE::Logger< Formatter >::~Logger (  )  [inline]

Member Function Documentation

template<typename Formatter = SimpleFormatter>
void _JM_NAMESPACE::Logger< Formatter >::end_log (  )  [inline]
template<typename Formatter = SimpleFormatter>
template<typename T >
Logger& _JM_NAMESPACE::Logger< Formatter >::operator<< ( const T &  msg  )  [inline]
template<typename Formatter = SimpleFormatter>
void _JM_NAMESPACE::Logger< Formatter >::output ( std::ostream &  out  )  [inline]
template<typename Formatter = SimpleFormatter>
void _JM_NAMESPACE::Logger< Formatter >::start_log ( const std::string &  prefix,
const std::string &  file,
const std::string &  function,
int  line 
) [inline]

Member Data Documentation

template<typename Formatter = SimpleFormatter>
Formatter _JM_NAMESPACE::Logger< Formatter >::_ft [private]
template<typename Formatter = SimpleFormatter>
const std::string _JM_NAMESPACE::Logger< Formatter >::_header [private]
template<typename Formatter = SimpleFormatter>
std::ostream& _JM_NAMESPACE::Logger< Formatter >::_out [private]

The documentation for this class was generated from the following file: