CLI  2.9
Traces Class Reference

Traces service. More...

#include <traces.h>

Inheritance diagram for Traces:

Public Member Functions

virtual ~Traces (void)
 Destructor. More...
 
const OutputDeviceGetStream (void) const
 Stream access. More...
 
const bool SetStream (OutputDevice &CLI_Stream)
 Stream positionning (if not already set). More...
 
const bool UnsetStream (OutputDevice &CLI_Stream)
 Stream dereferencing. More...
 
const bool Declare (const TraceClass &CLI_Class)
 Trace class declaration. More...
 
const TraceClass::List GetAllClasses (void) const
 All classes accessor. More...
 
const TraceClass::List GetCurrentFilter (void) const
 Current filter retrieval. More...
 
const bool SetFilter (const TraceClass &CLI_Class, const bool B_ShowTraces)
 Current filter modification. More...
 
const bool SetAllFilter (const bool B_ShowTraces)
 All filter management. More...
 
const bool IsTraceOn (const TraceClass &CLI_Class) const
 Trace status. More...
 
const OutputDeviceTrace (const TraceClass &CLI_Class)
 Trace routine. More...
 
const OutputDeviceSafeTrace (const TraceClass &CLI_Class, const Object &CLI_AvoidStream)
 Safe trace routine. More...
 
- Public Member Functions inherited from Object
virtual ~Object (void)=0
 Pure virtual destructor. More...
 

Static Public Member Functions

static TracesGetInstance (void)
 Singleton. More...
 

Protected Member Functions

 Traces (void)
 Default constructor. More...
 
- Protected Member Functions inherited from Object
 Object (void)
 Default constructor only available to sub-classes. More...
 

Detailed Description

Traces service.

Definition at line 114 of file traces.h.

Constructor & Destructor Documentation

◆ Traces()

Traces::Traces ( void  )
explicitprotected

Default constructor.

◆ ~Traces()

virtual Traces::~Traces ( void  )
virtual

Destructor.

Member Function Documentation

◆ Declare()

const bool Traces::Declare ( const TraceClass CLI_Class)

Trace class declaration.

Returns
true if the class has been declared successfully or the class was already declared.
false if an error as occurred.
Parameters
CLI_ClassTrace class to declare.

◆ GetAllClasses()

const TraceClass::List Traces::GetAllClasses ( void  ) const

All classes accessor.

Returns
List of all trace classes that have been registered.

◆ GetCurrentFilter()

const TraceClass::List Traces::GetCurrentFilter ( void  ) const

Current filter retrieval.

Returns
List of trace classes that constitutes the current trace filter.

◆ GetInstance()

static Traces& Traces::GetInstance ( void  )
static

Singleton.

Returns
Only one instance of the kind.

◆ GetStream()

const OutputDevice& Traces::GetStream ( void  ) const

Stream access.

Returns
Trace stream reference.

◆ IsTraceOn()

const bool Traces::IsTraceOn ( const TraceClass CLI_Class) const

Trace status.

Returns
true if the trace is active, false otherwise.
Parameters
CLI_ClassTrace class.

◆ SafeTrace()

const OutputDevice& Traces::SafeTrace ( const TraceClass CLI_Class,
const Object CLI_AvoidStream 
)

Safe trace routine.

Returns
Trace output stream prepared to receive the trace. Null device if trace is avoided.
Note
Prevents output from infinite loops.
Parameters
CLI_ClassTrace class.
CLI_AvoidStreamAvoid stream from being sent characters.

◆ SetAllFilter()

const bool Traces::SetAllFilter ( const bool  B_ShowTraces)

All filter management.

Returns
true for success, false otherwise.

Same as above but for all filters in one operation.

Parameters
B_ShowTracesShow traces flag.

◆ SetFilter()

const bool Traces::SetFilter ( const TraceClass CLI_Class,
const bool  B_ShowTraces 
)

Current filter modification.

Returns
true if the filter has been set (or was set previously), false otherwise.
Parameters
CLI_ClassTrace class.
B_ShowTracesShow traces flag.

◆ SetStream()

const bool Traces::SetStream ( OutputDevice CLI_Stream)

Stream positionning (if not already set).

Returns
true: success, false: failure.
Warning
For consistency reasons, if you use this method, you should better call UnsetStream() before program termination.

When SetStream() has not been called previously, then it takes CLI_Stream in account immediately for tracing. Otherwise it stacks the stream (for consistency concerns) and waits for the previous ones to be released possibly.

Parameters
CLI_StreamStream reference.

◆ Trace()

const OutputDevice& Traces::Trace ( const TraceClass CLI_Class)

Trace routine.

Returns
Trace output stream prepared to receive the trace.
Note
If enabled, the trace is directed to the output stream of the shell corresponding to context element.
Parameters
CLI_ClassTrace class.

◆ UnsetStream()

const bool Traces::UnsetStream ( OutputDevice CLI_Stream)

Stream dereferencing.

Returns
true: success, false: failure.

This method should be called if you have previously called SetStream().

Parameters
CLI_StreamStream reference.

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