cDBG Class Reference
A class to print colored debug messages.
More...
#include <dbg.h>
List of all members.
Detailed Description
A class to print colored debug messages.
- The printing can be switched on or off so the debug code can remain in the code. (default is off)
- The messages can be colorized (default is red).
- The output can be redirected. (default is sys.stderr)
- Debug messages can be printed in a functional way or in C++ stream like way
If the environment variable "SDH_NO_COLOR" is defined then the messages are printed without coloring (usefull for logging or if your terminal does not support colors.
Example:
#include "sdh/dbg.h"
d = cDBG( true );
g = cDBG( true, "green" );
d.PDM( "This message is printed in default color red" );
g << "and this one in a nice green ";
g << "of course you can debug print any objects that have a string representation: " << 08 << 15 << true;
g << "Messages can be turned of and on, e.g. selected by command line options";
g.SetFlag(false);
g << "This messages is not printed";
Definition at line 112 of file dbg.h.
Constructor & Destructor Documentation
cDBG::cDBG |
( |
bool |
flag = false , |
|
|
char const * |
color = "red" , |
|
|
std::ostream * |
fd = &std::cerr | |
|
) |
| | [inline] |
constructor: construct a cDBG object
- Parameters:
-
| flag | - the initial state of the flag, if true then messages sent to the object are printed. Default is false. Can be changed with SetFlag() |
| color | - the name of the color to use, default is "red". Can be changed with SetColor() |
| fd | - the ostream to use for output, default is stderr. Can be changed with SetOutput() |
Definition at line 129 of file dbg.h.
Member Function Documentation
bool cDBG::GetFlag |
( |
void |
|
) |
const [inline] |
Get debug_flag of this cDBG object.
Definition at line 155 of file dbg.h.
void cDBG::PDM |
( |
char const * |
fmt, |
|
|
|
... | |
|
) |
| | |
Print debug messages of printf like fmt, ... in the color set with SetColor, but only if debug_flag is true.
void cDBG::SetColor |
( |
char const * |
color |
) |
[inline] |
Set debug_color of this cDBG object to color. color is a string like "red", see util.py for valid names.
- Attention:
- The string is NOT copied, just a pointer is stored
Definition at line 167 of file dbg.h.
void cDBG::SetFlag |
( |
bool |
flag |
) |
[inline] |
Set debug_flag of this cDBG object to flag. After setting the flag to true debug messages are printed, else not.
Definition at line 146 of file dbg.h.
void cDBG::SetOutput |
( |
std::ostream * |
fd |
) |
[inline] |
Set output of this cDBG object to fd, which must be a file like object like sys.stderr
Definition at line 182 of file dbg.h.
Member Data Documentation
The documentation for this class was generated from the following file: