The Gaudi Framework  v29r0 (ff2e7097)
ComponentManager Class Reference

Base class for a component manager. More...

#include <GaudiKernel/ComponentManager.h>

Inheritance diagram for ComponentManager:
Collaboration diagram for ComponentManager:

Public Member Functions

 ComponentManager (IInterface *application, const InterfaceID &baseIID)
 Constructor. More...
 
const InterfaceIDcomponentBaseInterface () const override
 Basic interface id of the managed components. More...
 
StatusCode queryInterface (const InterfaceID &iid, void **pinterface) override
 Specialized queryInterface implementation. More...
 
SmartIF< ISvcLocator > & serviceLocator () const override
 
StatusCode configure () override
 Configuration (from OFFLINE to CONFIGURED). More...
 
StatusCode initialize () override
 Initialization (from CONFIGURED to INITIALIZED). More...
 
StatusCode start () override
 Start (from INITIALIZED to RUNNING). More...
 
StatusCode stop () override
 Stop (from RUNNING to INITIALIZED). More...
 
StatusCode finalize () override
 Finalize (from INITIALIZED to CONFIGURED). More...
 
StatusCode terminate () override
 Initialization (from CONFIGURED to OFFLINE). More...
 
StatusCode reinitialize () override
 Initialization (from INITIALIZED or RUNNING to INITIALIZED, via CONFIGURED). More...
 
StatusCode restart () override
 Initialization (from RUNNING to RUNNING, via INITIALIZED). More...
 
Gaudi::StateMachine::State FSMState () const override
 Get the current state. More...
 
Gaudi::StateMachine::State targetFSMState () const override
 When we are in the middle of a transition, get the state where the transition is leading us. More...
 
- Public Member Functions inherited from CommonMessagingBase
virtual ~CommonMessagingBase ()=default
 Virtual destructor. More...
 
SmartIF< IMessageSvc > & msgSvc () const
 The standard message service. More...
 
MsgStreammsgStream () const
 Return an uninitialized MsgStream. More...
 
MsgStreammsgStream (const MSG::Level level) const
 Predefined configurable message stream for the efficient printouts. More...
 
MsgStreamalways () const
 shortcut for the method msgStream(MSG::ALWAYS) More...
 
MsgStreamfatal () const
 shortcut for the method msgStream(MSG::FATAL) More...
 
MsgStreamerr () const
 shortcut for the method msgStream(MSG::ERROR) More...
 
MsgStreamerror () const
 shortcut for the method msgStream(MSG::ERROR) More...
 
MsgStreamwarning () const
 shortcut for the method msgStream(MSG::WARNING) More...
 
MsgStreaminfo () const
 shortcut for the method msgStream(MSG::INFO) More...
 
MsgStreamdebug () const
 shortcut for the method msgStream(MSG::DEBUG) More...
 
MsgStreamverbose () const
 shortcut for the method msgStream(MSG::VERBOSE) More...
 
MsgStreammsg () const
 shortcut for the method msgStream(MSG::INFO) More...
 
MSG::Level msgLevel () const
 get the output level from the embedded MsgStream More...
 
MSG::Level outputLevel () const __attribute__((deprecated))
 Backward compatibility function for getting the output level. More...
 
bool msgLevel (MSG::Level lvl) const
 get the output level from the embedded MsgStream More...
 

Protected Attributes

SmartIF< IInterfacem_application
 Pointer to the owner of the manager. More...
 
SmartIF< IStatefulm_stateful
 Pointer to the IStateful interface of the owner. More...
 
InterfaceID m_basicInterfaceId
 Basic interface id of the managed components. More...
 
SmartIF< ISvcLocatorm_svcLocator
 Service locator (needed to access the MessageSvc) More...
 

Additional Inherited Members

- Public Types inherited from CommonMessaging< implements< IComponentManager > >
using base_class = CommonMessaging
 
- Protected Member Functions inherited from CommonMessaging< implements< IComponentManager > >
void updateMsgStreamOutputLevel (int level)
 Update the output level of the cached MsgStream. More...
 

Detailed Description

Base class for a component manager.

Author
Marco Clemencic

Definition at line 13 of file ComponentManager.h.

Constructor & Destructor Documentation

ComponentManager::ComponentManager ( IInterface application,
const InterfaceID baseIID 
)

Constructor.

Parameters
applicationthe manager of managers

Definition at line 12 of file ComponentManager.cpp.

13  : m_application( application ), m_stateful( application ), m_basicInterfaceId( baseIID )
14 {
15 }
SmartIF< IStateful > m_stateful
Pointer to the IStateful interface of the owner.
InterfaceID m_basicInterfaceId
Basic interface id of the managed components.
SmartIF< IInterface > m_application
Pointer to the owner of the manager.

Member Function Documentation

const InterfaceID & ComponentManager::componentBaseInterface ( ) const
override

Basic interface id of the managed components.

Definition at line 19 of file ComponentManager.cpp.

19 { return m_basicInterfaceId; }
InterfaceID m_basicInterfaceId
Basic interface id of the managed components.
StatusCode ComponentManager::configure ( )
inlineoverride

Configuration (from OFFLINE to CONFIGURED).

Definition at line 35 of file ComponentManager.h.

StatusCode ComponentManager::finalize ( )
inlineoverride

Finalize (from INITIALIZED to CONFIGURED).

Definition at line 47 of file ComponentManager.h.

Gaudi::StateMachine::State ComponentManager::FSMState ( ) const
inlineoverride

Get the current state.

Definition at line 59 of file ComponentManager.h.

59 { return m_stateful->FSMState(); }
SmartIF< IStateful > m_stateful
Pointer to the IStateful interface of the owner.
virtual Gaudi::StateMachine::State FSMState() const =0
Get the current state.
StatusCode ComponentManager::initialize ( )
inlineoverride

Initialization (from CONFIGURED to INITIALIZED).

Definition at line 38 of file ComponentManager.h.

StatusCode ComponentManager::queryInterface ( const InterfaceID iid,
void **  pinterface 
)
override

Specialized queryInterface implementation.

If an interface is not fount in the implemented ones, we fall back on the owner.

Definition at line 23 of file ComponentManager.cpp.

24 {
25  // try local interfaces
26  StatusCode sc = base_class::queryInterface( iid, pinterface );
27  // fall back on the owner, if local interface didn't match...
28  return sc.isSuccess() ? sc : m_application->queryInterface( iid, pinterface );
29 }
bool isSuccess() const
Test for a status code of SUCCESS.
Definition: StatusCode.h:75
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:28
SmartIF< IInterface > m_application
Pointer to the owner of the manager.
StatusCode queryInterface(const InterfaceID &iid, void **pinterface) override
virtual StatusCode queryInterface(const InterfaceID &ti, void **pp)=0
Set the void** to the pointer to the requested interface of the instance.
StatusCode ComponentManager::reinitialize ( )
inlineoverride

Initialization (from INITIALIZED or RUNNING to INITIALIZED, via CONFIGURED).

Definition at line 53 of file ComponentManager.h.

StatusCode ComponentManager::restart ( )
inlineoverride

Initialization (from RUNNING to RUNNING, via INITIALIZED).

Definition at line 56 of file ComponentManager.h.

SmartIF<ISvcLocator>& ComponentManager::serviceLocator ( ) const
inlineoverride

Definition at line 28 of file ComponentManager.h.

29  {
31  return m_svcLocator;
32  }
SmartIF< ISvcLocator > m_svcLocator
Service locator (needed to access the MessageSvc)
SmartIF< IInterface > m_application
Pointer to the owner of the manager.
StatusCode ComponentManager::start ( )
inlineoverride

Start (from INITIALIZED to RUNNING).

Definition at line 41 of file ComponentManager.h.

StatusCode ComponentManager::stop ( )
inlineoverride

Stop (from RUNNING to INITIALIZED).

Definition at line 44 of file ComponentManager.h.

Gaudi::StateMachine::State ComponentManager::targetFSMState ( ) const
inlineoverride

When we are in the middle of a transition, get the state where the transition is leading us.

Otherwise it returns the same state as state().

Definition at line 63 of file ComponentManager.h.

63 { return m_stateful->targetFSMState(); }
SmartIF< IStateful > m_stateful
Pointer to the IStateful interface of the owner.
virtual Gaudi::StateMachine::State targetFSMState() const =0
When we are in the middle of a transition, get the state where the transition is leading us...
StatusCode ComponentManager::terminate ( )
inlineoverride

Initialization (from CONFIGURED to OFFLINE).

Definition at line 50 of file ComponentManager.h.

Member Data Documentation

SmartIF<IInterface> ComponentManager::m_application
protected

Pointer to the owner of the manager.

Definition at line 67 of file ComponentManager.h.

InterfaceID ComponentManager::m_basicInterfaceId
protected

Basic interface id of the managed components.

Definition at line 73 of file ComponentManager.h.

SmartIF<IStateful> ComponentManager::m_stateful
protected

Pointer to the IStateful interface of the owner.

Definition at line 70 of file ComponentManager.h.

SmartIF<ISvcLocator> ComponentManager::m_svcLocator
mutableprotected

Service locator (needed to access the MessageSvc)

Definition at line 76 of file ComponentManager.h.


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