Gaudi Framework, version v22r0

Home   Generated: 9 Feb 2011

CommonMessaging< BASE > Class Template Reference

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

#include <CommonMessaging.h>

Collaboration diagram for CommonMessaging< BASE >:
Collaboration graph
[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::stringname () const =0
 This is needed to avoid ambiguous calls to name().
SmartIF< IMessageSvc > & msgSvc () const
 The standard message service.
MsgStreammsgStream (const MSG::Level level=MSG::INFO) const
 Predefined configurable message stream for the efficient printouts.
MsgStreamalways () const
 shortcut for the method msgStream(MSG::ALWAYS)
MsgStreamfatal () const
 shortcut for the method msgStream(MSG::FATAL)
MsgStreamerr () const
 shortcut for the method msgStream(MSG::ERROR)
MsgStreamerror () const
 shortcut for the method msgStream(MSG::ERROR)
MsgStreamwarning () const
 shortcut for the method msgStream(MSG::WARNING)
MsgStreaminfo () const
 shortcut for the method msgStream(MSG::INFO)
MsgStreamdebug () const
 shortcut for the method msgStream(MSG::DEBUG)
MsgStreamverbose () const
 shortcut for the method msgStream(MSG::VERBOSE)
MsgStreammsg () const
 shortcut for the method msgStream()

Protected Attributes

SmartIF< IMessageSvcm_msgsvc
 Pointer to the message service;.
std::auto_ptr< MsgStreamm_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

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.

00029                                                                                                             :
    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.

00032                                                                                  :
    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.

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

template<class BASE>
CommonMessaging< BASE >::CommonMessaging (  )  [inline]

Default constructor.

Definition at line 37 of file CommonMessaging.h.

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

template<class BASE>
virtual CommonMessaging< BASE >::~CommonMessaging (  )  [inline, virtual]

Virtual destructor.

Definition at line 41 of file CommonMessaging.h.

00041 {}


Member Function Documentation

template<class BASE>
MsgStream& CommonMessaging< BASE >::always (  )  const [inline]

shortcut for the method msgStream(MSG::ALWAYS)

Definition at line 90 of file CommonMessaging.h.

00090 { return msgStream(MSG::ALWAYS); }

template<class BASE>
MsgStream& CommonMessaging< BASE >::debug (  )  const [inline]

shortcut for the method msgStream(MSG::DEBUG)

Definition at line 108 of file CommonMessaging.h.

00108 { return msgStream(MSG::DEBUG); }

template<class BASE>
MsgStream& CommonMessaging< BASE >::err (  )  const [inline]

shortcut for the method msgStream(MSG::ERROR)

Definition at line 96 of file CommonMessaging.h.

00096 { return msgStream(MSG::ERROR); }

template<class BASE>
MsgStream& CommonMessaging< BASE >::error (  )  const [inline]

shortcut for the method msgStream(MSG::ERROR)

Definition at line 99 of file CommonMessaging.h.

00099 { return msgStream(MSG::ERROR); }

template<class BASE>
MsgStream& CommonMessaging< BASE >::fatal (  )  const [inline]

shortcut for the method msgStream(MSG::FATAL)

Definition at line 93 of file CommonMessaging.h.

00093 { return msgStream(MSG::FATAL); }

template<class BASE>
MsgStream& CommonMessaging< BASE >::info (  )  const [inline]

shortcut for the method msgStream(MSG::INFO)

Definition at line 105 of file CommonMessaging.h.

00105 { return msgStream(MSG::INFO); }

template<class BASE>
MsgStream& CommonMessaging< BASE >::msg (  )  const [inline]

shortcut for the method msgStream()

Definition at line 114 of file CommonMessaging.h.

00114 { return msgStream(); }

template<class BASE>
MsgStream& CommonMessaging< BASE >::msgStream ( const MSG::Level  level = MSG::INFO  )  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 80 of file CommonMessaging.h.

00080                                                                     {
00081     if ((!m_msgStream.get()) || (!m_streamWithService)) {
00082       SmartIF<IMessageSvc>& ms = msgSvc();
00083       m_msgStream.reset(new MsgStream(ms, this->name()));
00084       m_streamWithService = ms.get() != 0;
00085     }
00086     return *m_msgStream << level;
00087   }

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.

00052                                               {
00053     if (!m_msgsvc.get()) {
00054       // Get default implementation of the message service.
00055       m_msgsvc = this->serviceLocator();
00056     }
00057     return m_msgsvc;
00058   }

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>
MsgStream& CommonMessaging< BASE >::verbose (  )  const [inline]

shortcut for the method msgStream(MSG::VERBOSE)

Definition at line 111 of file CommonMessaging.h.

00111 { return msgStream(MSG::VERBOSE); }

template<class BASE>
MsgStream& CommonMessaging< BASE >::warning (  )  const [inline]

shortcut for the method msgStream(MSG::WARNING)

Definition at line 102 of file CommonMessaging.h.

00102 { 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 121 of file CommonMessaging.h.

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

Pointer to the message service;.

Definition at line 118 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 124 of file CommonMessaging.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines

Generated at Wed Feb 9 16:30:21 2011 for Gaudi Framework, version v22r0 by Doxygen version 1.6.2 written by Dimitri van Heesch, © 1997-2004