The Debug Object class, this object represents one output device (ostream).
More...
#include <libcwd/debug.h>
Public Member Functions | |
| debug_string_ct & | margin () |
| The margin. More... | |
| debug_string_ct & | marker () |
| The marker. More... | |
| void | set_indent (unsigned short indentation) |
| Set number of spaces to indent. | |
| void | inc_indent (unsigned short indentation) |
| Increment number of spaces to indent. | |
| void | dec_indent (unsigned short indentation) |
| Decrement number of spaces to indent. | |
| unsigned short | get_indent () const |
| Get the current indentation. | |
| void | push_margin () |
| Push the current margin on a stack. | |
| void | pop_margin () |
| Pop margin from the stack. | |
| void | push_marker () |
| Push the current marker on a stack. | |
| void | pop_marker () |
| Pop marker from the stack. | |
| std::ostream * | get_ostream () const |
Get the ostream device as set with set_ostream(). | |
| debug_ct () | |
| Constructor. More... | |
| void | set_ostream (std::ostream *os) |
| Set output device (single threaded applications). More... | |
| template<class T > | |
| void | set_ostream (std::ostream *os, T *mutex) |
| Set output device and provide external lock. More... | |
| void | off () |
| Turn this debug object off. | |
| void | on () |
| Cancel last call to off(). More... | |
The Debug Object class, this object represents one output device (ostream).
|
inline |
Constructor.
A debug object must be global.
|
inline |
Cancel last call to off().
Calls to off() and on() has to be done in pairs (first off() then on()). These pairs can be nested.
Example:
Outputs:
NOTICE : i == 0
Note that the statement i++ was never executed.