| EvolvingObjects
   
    | 
eoLogger Class providing a verbose management through EO Use of a global variable eo::log to easily use the logger like std::cout More...
#include <eoLogger.h>
 
  
 | Classes | |
| class | outbuf | 
| outbuf this class inherits from std::streambuf which is used by eoLogger to write the buffer in an output stream  More... | |
| Public Member Functions | |
| eoLogger () | |
| default ctor | |
| eoLogger (eo::file file) | |
| overidded ctor in order to instanciate a logger with a file define in parameter | |
| ~eoLogger () | |
| dtor | |
| virtual std::string | className () const | 
| common function for all eo objects | |
| void | printLevels () const | 
| Print the available levels on the standard output enablable with the option -l. | |
| eo::Levels | getLevelSelected () const | 
| eo::Levels | getLevelContext () const | 
| Protected Member Functions | |
| void | addLevel (std::string name, eo::Levels level) | 
| in order to add a level of verbosity | |
| Private Types | |
| typedef std::map< std::string, eo::Levels > | MapLevel | 
| MapLevel is the type used by the map member _levels. | |
| Private Member Functions | |
| void | _createParameters (eoParser &) | 
| used by the function make_verbose in order to add options to specify the verbose level | |
| void | _init () | 
| used by the set of ctors to initiate some useful variables | |
| Private Attributes | |
| eoValueParam< std::string > | _verbose | 
| eoValueParam< bool > | _printVerboseLevels | 
| eoValueParam< std::string > | _output | 
| eo::Levels | _selectedLevel | 
| _selectedLevel is the member storing verbose level setted by the user thanks to operator() | |
| eo::Levels | _contextLevel | 
| int | _fd | 
| _fd in storing the file descriptor at this place we can disable easily the buffer in changing the value at -1. | |
| outbuf | _obuf | 
| _obuf std::ostream mandates to use a buffer. | |
| MapLevel | _levels | 
| _levels contains all the existing level order by position | |
| std::vector< std::string > | _sortedLevels | 
| _levelsOrder is just a list to keep the order of levels | |
| std::map< std::ostream *, int > | _standard_io_streams | 
| _standard_io_streams | |
| Friends | |
| eoLogger & | operator<< (eoLogger &, const eo::Levels) | 
| operator<< used there to set a verbose mode. | |
| eoLogger & | operator<< (eoLogger &, eo::file) | 
| operator<< used there to set a filename through the class file. | |
| eoLogger & | operator<< (eoLogger &, eo::setlevel) | 
| operator<< used there to set a verbose level through the class setlevel. | |
| eoLogger & | operator<< (eoLogger &, std::ostream &) | 
| operator<< used there to be able to use std::cout to say that we wish to redirect back the buffer to a standard output. | |
| void | make_verbose (eoParser &) | 
| make_verbose gets level of verbose and sets it in eoLogger | |
eoLogger Class providing a verbose management through EO Use of a global variable eo::log to easily use the logger like std::cout
Definition at line 141 of file eoLogger.h.
| eo::Levels eoLogger::getLevelSelected | ( | ) | const  [inline] | 
Returns the selected levels, that is the one asked by the user
Use this function if you want to be able to compare selected levels to a given one, like: if( eo::log.getLevelSelected() >= eo::progress ) {...}
Definition at line 166 of file eoLogger.h.
References _selectedLevel.
| eo::Levels eoLogger::getLevelContext | ( | ) | const  [inline] | 
Returns the current level of the context the one given when you output message with the logger
Definition at line 171 of file eoLogger.h.
operator<< used there to set a verbose mode.
in order to use stream style to define the context verbose level where the following logs will be saved
Definition at line 158 of file eoLogger.cpp.
operator<< used there to set a filename through the class file.
in order to use stream style to define a file to dump instead the standart output
Definition at line 164 of file eoLogger.cpp.
| eoLogger& operator<< | ( | eoLogger & | l, | 
| eo::setlevel | v | ||
| ) |  [friend] | 
operator<< used there to set a verbose level through the class setlevel.
in order to use stream style to define manually the verbose level instead using options
Definition at line 170 of file eoLogger.cpp.
operator<< used there to be able to use std::cout to say that we wish to redirect back the buffer to a standard output.
in order to use stream style to go back to a standart output defined by STL and to get retro-compatibility
Definition at line 176 of file eoLogger.cpp.
| int eoLogger::_fd  [private] | 
_fd in storing the file descriptor at this place we can disable easily the buffer in changing the value at -1.
It is used by operator <<.
Definition at line 250 of file eoLogger.h.
Referenced by ~eoLogger().
| outbuf eoLogger::_obuf  [private] | 
_obuf std::ostream mandates to use a buffer.
_obuf is a outbuf inheriting of std::streambuf.
Definition at line 255 of file eoLogger.h.