| # Gaudi Framework, version v22r4 |

Home |  | Generated: Fri Sep 2 2011

Public Types | Public Member Functions | Protected Member Functions | Protected Attributes

# CommonMessaging< BASE > Class Template Reference

Templated class to add the standard messaging functionalities. More...

`#include <CommonMessaging.h>`

Collaboration diagram for CommonMessaging< BASE >:
[legend]

List of all members.

## Public Types
typedef CommonMessaging | base_class
## Public Member Functions
template<typename A1 , typename A2 , typename A3 >
| CommonMessaging (const A1 &a1, const A2 &a2, const A3 &a3)
| Templated constructor with 3 arguments.
template<typename A1 , typename A2 >
| CommonMessaging (const A1 &a1, const A2 &a2)
| Templated constructor with 2 arguments.
template<typename A1 >
| CommonMessaging (const A1 &a1)
| Templated constructor with 1 argument.
| CommonMessaging ()
| Default constructor.
virtual | ~CommonMessaging ()
| Virtual destructor.
virtual SmartIF< ISvcLocator > & | serviceLocator () const =0
| Needed to locate the message service.
virtual const std::string & | name () const =0
| This is needed to avoid ambiguous calls to name()
SmartIF< IMessageSvc > & | msgSvc () const
| The standard message service.
MsgStream & | msgStream () const
| Return an uninitialized MsgStream.
MsgStream & | msgStream (const MSG::Level level) const
| Predefined configurable message stream for the efficient printouts.
MsgStream & | always () const
| shortcut for the method msgStream(MSG::ALWAYS)
MsgStream & | fatal () const
| shortcut for the method msgStream(MSG::FATAL)
MsgStream & | err () const
| shortcut for the method msgStream(MSG::ERROR)
MsgStream & | error () const
| shortcut for the method msgStream(MSG::ERROR)
MsgStream & | warning () const
| shortcut for the method msgStream(MSG::WARNING)
MsgStream & | info () const
| shortcut for the method msgStream(MSG::INFO)
MsgStream & | debug () const
| shortcut for the method msgStream(MSG::DEBUG)
MsgStream & | verbose () const
| shortcut for the method msgStream(MSG::VERBOSE)
MsgStream & | msg () const
| shortcut for the method msgStream(MSG::INFO)
MSG::Level | msgLevel ()
| get the output level from the embedded MsgStream
bool | msgLevel (MSG::Level lvl)
| get the output level from the embedded MsgStream
## Protected Member Functions
void | updateMsgStreamOutputLevel (int level)
| Update the output level of the cached MsgStream.
## Protected Attributes
SmartIF< IMessageSvc > | m_msgsvc
| Pointer to the message service;.
std::auto_ptr< MsgStream > | m_msgStream
| The predefined message stream.
bool | m_streamWithService
| Flag to create a new MsgStream if it was created without the message service.

## Detailed Description

### template<class BASE>
class CommonMessaging< BASE >

Templated class to add the standard messaging functionalities.

Definition at line 23 of file CommonMessaging.h.

## Member Typedef Documentation

template<class BASE>

typedef CommonMessaging CommonMessaging< BASE >::base_class

Reimplemented in ApplicationMgr, extends1< Service, IIoComponentMgr >, extends1< DataSvc, IIncidentListener >, extends1< Service, IToolSvc >, extends1< ConversionSvc, IPoolDbMgr >, extends1< Service, ICounterSvc >, extends1< Service, Gaudi::ISignalMonitor >, extends1< Service, IIncidentListener >, extends1< DataSvc, IHistogramSvc >, extends1< Service, IAuditorSvc >, extends1< Service, IGslSvc >, extends1< Service, IIODataManager >, extends1< Service, IPartPropSvc >, extends1< Service, IRunable >, extends1< Service, IEvtSelector >, extends1< Service, IFileAccess >, extends1< Service, IIssueLogger >, extends1< Service, IIncidentSvc >, extends1< Service, IExceptionSvc >, extends1< Service, IParticlePropertySvc >, extends1< Service, IPoolCacheSvc >, extends1< Service, IStatusCodeSvc >, extends1< Service, IEventProcessor >, extends1< ComponentManager, IAlgManager >, extends1< Service, IChronoStatSvc >, extends1< DataSvc, IAIDATupleSvc >, extends2< DataSvc, IDetDataSvc, IIncidentListener >, extends2< Service, IFileCatalog, IFileCatalogMgr >, extends2< Service, IAlgContextSvc, IIncidentListener >, extends2< Service, IMonitorSvc, IIncidentListener >, extends2< Service, IProperty, IJobOptionsSvc >, extends2< Service, IHistorySvc, IIncidentListener >, extends2< Service, IMessageSvc, IInactiveMessageCounter >, extends2< ComponentManager, ISvcManager, ISvcLocator >, extends2< Service, IConversionSvc, IAddressCreator >, extends2< Service, IDataProviderSvc, IDataManagerSvc >, extends2< DataSvc, INTupleSvc, IDataSourceMgr >, extends3< Service, ITHistSvc, IIncidentListener, IIoComponent >, extends3< Service, IDataProviderSvc, IDataManagerSvc, IPartitionControl >, extends3< Service, IConversionSvc, IPersistencySvc, IAddressCreator >, extends3< Service, IRndmGenSvc, IRndmEngine, ISerialize >, and extends3< Service, IRndmEngine, ISerialize, IIncidentListener >.

Definition at line 25 of file CommonMessaging.h.

## Constructor & Destructor Documentation

template<class BASE>
template<typename A1 , typename A2 , typename A3 >

CommonMessaging< BASE >::CommonMessaging | ( | const A1 & | a1,
|  | const A2 & | a2,
|  | const A3 & | a3
| ) |  | `[inline]`

Templated constructor with 3 arguments.

Definition at line 28 of file CommonMessaging.h.

                                                                                                                :
        BASE(a1,a2,a3), m_streamWithService(false) {}

template<class BASE>
template<typename A1 , typename A2 >

CommonMessaging< BASE >::CommonMessaging | ( | const A1 & | a1,
|  | const A2 & | a2
| ) |  | `[inline]`

Templated constructor with 2 arguments.

Definition at line 31 of file CommonMessaging.h.

                                                                                     :
        BASE(a1, a2), m_streamWithService(false) {}

template<class BASE>
template<typename A1 >

CommonMessaging< BASE >::CommonMessaging | ( | const A1 & | a1 ) | `[inline]`

Templated constructor with 1 argument.

Definition at line 34 of file CommonMessaging.h.

                                                          :
        BASE(a1), m_streamWithService(false) {}

template<class BASE>

CommonMessaging< BASE >::CommonMessaging | ( | ) | `[inline]`

Default constructor.

Definition at line 37 of file CommonMessaging.h.

                       :
        BASE(), m_streamWithService(false) {}

template<class BASE>

virtual CommonMessaging< BASE >::~CommonMessaging | ( | ) | `[inline, virtual]`

Virtual destructor.

Definition at line 41 of file CommonMessaging.h.

    {}

## Member Function Documentation

template<class BASE>

MsgStream& CommonMessaging< BASE >::always | ( | ) | const`[inline]`

shortcut for the method msgStream(MSG::ALWAYS)

Definition at line 95 of file CommonMessaging.h.

    { return msgStream(MSG::ALWAYS); }

template<class BASE>

MsgStream& CommonMessaging< BASE >::debug | ( | ) | const`[inline]`

shortcut for the method msgStream(MSG::DEBUG)

Definition at line 113 of file CommonMessaging.h.

    { return msgStream(MSG::DEBUG); }

template<class BASE>

MsgStream& CommonMessaging< BASE >::err | ( | ) | const`[inline]`

shortcut for the method msgStream(MSG::ERROR)

Definition at line 101 of file CommonMessaging.h.

    { return msgStream(MSG::ERROR); }

template<class BASE>

MsgStream& CommonMessaging< BASE >::error | ( | ) | const`[inline]`

shortcut for the method msgStream(MSG::ERROR)

Definition at line 104 of file CommonMessaging.h.

    { return msgStream(MSG::ERROR); }

template<class BASE>

MsgStream& CommonMessaging< BASE >::fatal | ( | ) | const`[inline]`

shortcut for the method msgStream(MSG::FATAL)

Definition at line 98 of file CommonMessaging.h.

    { return msgStream(MSG::FATAL); }

template<class BASE>

MsgStream& CommonMessaging< BASE >::info | ( | ) | const`[inline]`

shortcut for the method msgStream(MSG::INFO)

Definition at line 110 of file CommonMessaging.h.

    { return msgStream(MSG::INFO); }

template<class BASE>

MsgStream& CommonMessaging< BASE >::msg | ( | ) | const`[inline]`

shortcut for the method msgStream(MSG::INFO)

Definition at line 119 of file CommonMessaging.h.

    { return msgStream(MSG::INFO); }

template<class BASE>

bool CommonMessaging< BASE >::msgLevel | ( | MSG::Level | lvl ) | `[inline]`

get the output level from the embedded MsgStream

Definition at line 127 of file CommonMessaging.h.

                                         {
        return UNLIKELY(msgLevel() <= lvl);
      }

template<class BASE>

MSG::Level CommonMessaging< BASE >::msgLevel | ( | ) | `[inline]`

get the output level from the embedded MsgStream

Definition at line 122 of file CommonMessaging.h.

                                 {
        return msgStream().level();
      }

template<class BASE>

MsgStream& CommonMessaging< BASE >::msgStream | ( | const MSG::Level | level ) | const`[inline]`

Predefined configurable message stream for the efficient printouts.

      if ( a < 0 ) { msgStream( MSG::ERROR ) << "a = " << endmsg ; }

Returns:
  Reference to the predefined stream

Definition at line 90 of file CommonMessaging.h.

                                                              {
        return msgStream() << level;
      }

template<class BASE>

MsgStream& CommonMessaging< BASE >::msgStream | ( | ) | const`[inline]`

Return an uninitialized MsgStream.

Definition at line 71 of file CommonMessaging.h.

                                          {
        if (UNLIKELY((!m_msgStream.get()) || (!m_streamWithService))) {
          SmartIF<IMessageSvc>& ms = msgSvc();
          m_msgStream.reset(new MsgStream(ms, this->name()));
          m_streamWithService = ms.get() != 0;
        }
        return *m_msgStream;
      }

template<class BASE>

SmartIF<IMessageSvc>& CommonMessaging< BASE >::msgSvc | ( | ) | const`[inline]`

The standard message service.

Returns a pointer to the standard message service.

Definition at line 52 of file CommonMessaging.h.

                                                  {
        if (!m_msgsvc.get()) {
          // Get default implementation of the message service.
          m_msgsvc = this->serviceLocator();
        }
        return m_msgsvc;
      }

template<class BASE>

virtual const std::string& CommonMessaging< BASE >::name | ( | ) | const`[pure virtual]`

This is needed to avoid ambiguous calls to name()

Implemented in Service, AlgorithmManager, ApplicationMgr, and ServiceManager.

template<class BASE>

virtual SmartIF<ISvcLocator>& CommonMessaging< BASE >::serviceLocator | ( | ) | const`[pure virtual]`

Needed to locate the message service.

Implemented in ComponentManager, Service, ApplicationMgr, and ServiceManager.

template<class BASE>

void CommonMessaging< BASE >::updateMsgStreamOutputLevel | ( | int | level ) | `[inline, protected]`

Update the output level of the cached MsgStream.

This function is meant to be called by the update handler of the OutputLevel property.

Definition at line 143 of file CommonMessaging.h.

                                                 {
        if (m_msgStream.get()) m_msgStream->setLevel(level);
      }

template<class BASE>

MsgStream& CommonMessaging< BASE >::verbose | ( | ) | const`[inline]`

shortcut for the method msgStream(MSG::VERBOSE)

Definition at line 116 of file CommonMessaging.h.

    { return msgStream(MSG::VERBOSE); }

template<class BASE>

MsgStream& CommonMessaging< BASE >::warning | ( | ) | const`[inline]`

shortcut for the method msgStream(MSG::WARNING)

Definition at line 107 of file CommonMessaging.h.

    { return msgStream(MSG::WARNING); }

## Member Data Documentation

template<class BASE>

std::auto_ptr<MsgStream> CommonMessaging< BASE >::m_msgStream`[mutable, protected]`

The predefined message stream.

Definition at line 136 of file CommonMessaging.h.

template<class BASE>

SmartIF<IMessageSvc> CommonMessaging< BASE >::m_msgsvc`[mutable, protected]`

Pointer to the message service;.

Definition at line 133 of file CommonMessaging.h.

template<class BASE>

bool CommonMessaging< BASE >::m_streamWithService`[mutable, protected]`

Flag to create a new MsgStream if it was created without the message service.

Definition at line 139 of file CommonMessaging.h.

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

- /afs/cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v22r4/GaudiKernel/GaudiKernel/CommonMessaging.h

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines