mixpp: bdm::log_level_intermediate< T > Class Template Reference

bdm::log_level_intermediate< T > Class Template Reference

#include <bdmbase.h>

Inheritance diagram for bdm::log_level_intermediate< T >:

bdm::log_level_base bdm::root bdm::log_level_template< T > List of all members.

Public Member Functions

string store_id_and_give_name (enum T::log_level_enums const log_level_enum, int enum_subindex, int id)
 this method adds new id to its proper position and return the name of this position
const Array< string > & names () const
 string equivalents of the used enumerations which are filled with a help of LOG_LEVEL macro within class T
bool operator[] (const enum T::log_level_enums &log_level_enum) const
bitset< 32 >::reference operator[] (const enum T::log_level_enums &log_level_enum)

Static Public Member Functions

static Array< string > string2Array (const string &input)
 a general utility transforming a comma-separated sequence of strings into an instance of Array<strings>

Protected Member Functions

 log_level_intermediate ()
 default constructor is protected to prevent creating instances elsewhere than in log_level_template descendant class

Protected Attributes

bitset< 32 > values
 boolean flags related indicating which details will be logged to a logger

Detailed Description

template<class T>
class bdm::log_level_intermediate< T >

This class stores a details that will be logged to a logger

This is only the first part of the whole declaration, which has to be however separated into two different classes for allowing the compilation of source code. For more details see logger::add_setting(...) method and mainly log_level_template<T>::template<class U> void store( const enum T::log_level_enums log_level_enum, const U data ) const method. For the reason the second one is templated, it was necessary to declare this whole class.


Member Function Documentation

template<class T>
bitset<32>::reference bdm::log_level_intermediate< T >::operator[] ( const enum T::log_level_enums &  log_level_enum  )  [inline]

operator for setting an individual field of log_level

it is necessary to acces it with a proper enumeration type, thus this approach is type-safe

template<class T>
bool bdm::log_level_intermediate< T >::operator[] ( const enum T::log_level_enums &  log_level_enum  )  const [inline]

read only operator for testing individual fields of log_level

it is necessary to acces it with a proper enumeration type, thus this approach is type-safe


The documentation for this class was generated from the following file:
Generated on 2 Dec 2013 for mixpp by  doxygen 1.4.7