#include <Logger.h>
Inheritance diagram for Teem::Logger:
Public Member Functions | |
Logger (const char *fileName) | |
Constructor. | |
virtual | ~Logger () |
Destructor. | |
template<typename T> | |
void | addVariable (const std::string &label, const T &ref) |
Add a reference to the logger. | |
template<typename T> | |
void | addIshtarVariable (const std::string &label, const char *id) |
Add an Ishtar variable to the logger. | |
template<typename ForwardIterator> | |
void | addVariables (const std::string &label, ForwardIterator from, ForwardIterator to) |
Add a collection of variables using iterators. | |
void | step () |
Add a new snapshot to the log file. | |
Protected Types | |
typedef std::map< std::string, std::vector< Loggable * > > | LoggableMap |
Map for all logable units. | |
Protected Member Functions | |
void | add (const std::string &label, Loggable *loggable) |
Add a new loggable in the log under a certain label. | |
virtual void | initLog (std::ostream &log)=0 |
Init the log file (e.g. write information in the begining of the log file). | |
virtual void | dumpSnapshot (std::ostream &log)=0 |
Dump a snapshot (e.g. write the content of all variables to the log file). | |
Protected Attributes | |
std::ofstream | logFile |
file to log to | |
bool | inited |
true if log is initialised. Used for delayed initialisation | |
LoggableMap | loggables |
all logables units | |
Friends | |
std::ostream & | operator<< (std::ostream &os, const Logger::Loggable &loggable) |
Operator << for ostreams and Loggables. | |
Classes | |
class | Loggable |
Abstract class for loggable unit. More... | |
class | LoggableIshtarVariable |
Lagable based on an ishtar variable. More... | |
class | LoggableVariable |
Loggable based on pointer. More... |