dxd - dynax driver framework 3.0.1d223
cross platform open source driver development framework
Loading...
Searching...
No Matches
dx::redirect::indent Class Reference

one nesting level on a stream carrying an dx::redirect::indent::streambuf, taken for the object's scope: every line written inside it is prefixed. Levels nest LIFO per thread More...

#include <dx_redirect.h>

Inheritance diagram for dx::redirect::indent:
Collaboration diagram for dx::redirect::indent:

Classes

struct  dflt
class  streambuf
 a stream's distributor: over the stream's own buffer while a sink is joined, the stream's own restored once the last one left - every write to each sink, a line's start prefixed by the writing thread's indent, a line sink given each line whole. Every distributor joins the stream's own buffer: the stream stays where it was, indented - a sink wanting the stream for itself leaves it (leave(*origin)). std::cout, std::clog and std::cerr get theirs at their first indent level or sink. A buffer joined twice is written once. Joining and leaving take the lock the writes take (io_mutex). More...

Public Member Functions

 indent ()=default
 indent (std::ostream &ostream)
 indent (std::ostream &ostream, int amount, std::string pattern=dflt::pattern)
void initialize (std::ostream &ostream)
void initialize (std::ostream &ostream, int amount, std::string pattern=dflt::pattern)
 ~indent ()

Public Attributes

dx::redirect::indent::streambuf * streambuf

Detailed Description

one nesting level on a stream carrying an dx::redirect::indent::streambuf, taken for the object's scope: every line written inside it is prefixed. Levels nest LIFO per thread

Constructor & Destructor Documentation

◆ indent() [1/3]

dx::redirect::indent::indent ( )
default
Here is the caller graph for this function:

◆ indent() [2/3]

dx::redirect::indent::indent ( std::ostream & ostream)
inline
Here is the call graph for this function:

◆ indent() [3/3]

dx::redirect::indent::indent ( std::ostream & ostream,
int amount,
std::string pattern = dflt::pattern )
inline
Here is the call graph for this function:

◆ ~indent()

dx::redirect::indent::~indent ( )
inline

Member Function Documentation

◆ initialize() [1/2]

void dx::redirect::indent::initialize ( std::ostream & ostream)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ initialize() [2/2]

void dx::redirect::indent::initialize ( std::ostream & ostream,
int amount,
std::string pattern = dflt::pattern )
inline
Here is the call graph for this function:

Member Data Documentation

◆ streambuf

dx::redirect::indent::streambuf* dx::redirect::indent::streambuf

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

(c) copyright 2009 dynamic acoustics e.U. generated on

a closed source license may be obtained by requesting a written permission from dynamic acoustics e.U.
however - governmental use generally and military use especially is strictly prohibited though.