coriolis/hurricane/doc/hurricane/Commons.dox

100 lines
3.8 KiB
C++

// -*- C++ -*-
/*! \class tstream
* \brief Trace & indentation enabled stream.
*
* Traced \e stream are a derived class of std::ostream that provides
* integrated indentation and selective printing according to a
* verbosity level. Only messages comprised between \c minLevel and
* \c maxLevel are to be printed:
\f[
minLevel \leq level < maxLevel
\f]
*
* The cdebug instance of this class, in conjunction with Hurricane::DebugSession
* is provided to create tailored program traces. cdebug is a global
* variable which is put in the root namespace (not the Hurricane namespace).
*/
//! \function int tstream::getMinLevel () const;
//! \Return The current mimimum level for the messages to be printeds
//! (equal or superior).
//! \function int tstream::getMaxLevel () const;
//! \Return The current maximum level for the messages to be printeds
//! (strictly inferior).
//! \function int tstream::setMinLevel ( int level );
//! Sets the minimum level, returns the \e previous value of the level.
//! \function int tstream::setMaxLevel ( int level );
//! Sets the maximum level, returns the \e previous value of the level.
//! \function int tstream::getLevel () const;
//! \Return The level of the latest message that was submitted to the stream.
//! It is automatically set up after any call to tstream::log() or
//! tstream::tabw().
//! \function int tstream::setLevel ( int level );
//! Sets the current level, returns the \e previous value of the level.
//! This is the level of the latest message that was submitted to the
//! stream.
//! \function bool tstream::enabled () const;
//! \Return \true if the currently memorised level is inside the current valid range.
//! \function bool tstream::enabled ( int level ) const;
//! \Return \true if this level is inside the current valid range.
//! \function tstream& tstream::log ( int level, int count=0 ) const;
//! \param level The level into which to print.
//! \param count Increment/decrement the number of tabulations to print
//! at the beginning of a line.
//! \return A reference to the stream so the operator \c << can be used.
//!
//! Send a message into the stream, that will be displayed if \c level
//! is enabled. The number of tabulations printed at the beginning of
//! the line will be changed \e after this message has been printed
//! (or discarted).
//! \function tstream& tstream::tabw ( int level, int count=0 ) const;
//! \param level The level into which to print.
//! \param count Increment/decrement the number of tabulations to print
//! at the beginning of a line.
//! \return A reference to the stream.
//!
//! This function is dedicated to change the indentation level, but
//! not print something on the stream (event if it returns a reference
//! to it).
namespace Hurricane {
/*! \namespace Hurricane
*
* \brief Contains Almost Everything.
*
* Almost everything is inside the Hurricane namespace.
*/
//! \addtogroup Generalities
// \{
/*! \function string demangle ( const char* symbol );
* Translate (demangle) a symbol from C++ (\c gnu-v3) internal format
* into a human readable \string.
*/
/*! \function string demangle ( const type_info& info );
* \param info a type_info structure as returned by \c typeid().
*
* Translate (demangle) a symbol from C++ (\c gnu-v3) internal format
* into a human readable \string.
*/
// \}
}