The Gaudi Framework  v32r2 (46d42edc)
ComponentManager.h
Go to the documentation of this file.
1 #ifndef COMPONENTMANAGER_H_
2 #define COMPONENTMANAGER_H_
3 
6 
7 class ApplicationMgr;
8 
15 class GAUDI_API ComponentManager : public CommonMessaging<implements<IComponentManager>> {
16 public:
20 
22  const InterfaceID& componentBaseInterface() const override;
23 
27  StatusCode queryInterface( const InterfaceID& iid, void** pinterface ) override;
28 
30  if ( !m_svcLocator ) m_svcLocator = m_application;
31  return m_svcLocator;
32  }
33 
35  StatusCode configure() override { return StatusCode::SUCCESS; }
36 
38  StatusCode initialize() override { return StatusCode::SUCCESS; }
39 
41  StatusCode start() override { return StatusCode::SUCCESS; }
42 
44  StatusCode stop() override { return StatusCode::SUCCESS; }
45 
47  StatusCode finalize() override { return StatusCode::SUCCESS; }
48 
50  StatusCode terminate() override { return StatusCode::SUCCESS; }
51 
54 
56  StatusCode restart() override { return StatusCode::SUCCESS; }
57 
59  Gaudi::StateMachine::State FSMState() const override { return m_stateful->FSMState(); }
60 
63  Gaudi::StateMachine::State targetFSMState() const override { return m_stateful->targetFSMState(); }
64 
65 protected:
68 
71 
74 
77 
79 };
80 
81 #endif /* COMPONENTMANAGER_H_ */
Gaudi::StateMachine::State targetFSMState() const override
When we are in the middle of a transition, get the state where the transition is leading us.
Base class for a component manager.
SmartIF< ISvcLocator > m_svcLocator
Service locator (needed to access the MessageSvc)
constexpr static const auto SUCCESS
Definition: StatusCode.h:85
State
Allowed states for classes implementing the state machine (ApplicationMgr, Algorithm,...
Definition: StateMachine.h:12
SmartIF< IStateful > m_stateful
Pointer to the IStateful interface of the owner.
StatusCode finalize() override
Finalize (from INITIALIZED to CONFIGURED).
Interface ID class.
Definition: IInterface.h:29
StatusCode reinitialize() override
Initialization (from INITIALIZED or RUNNING to INITIALIZED, via CONFIGURED).
InterfaceID m_basicInterfaceId
Basic interface id of the managed components.
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:50
Definition of the basic interface.
Definition: IInterface.h:244
StatusCode restart() override
Initialization (from RUNNING to RUNNING, via INITIALIZED).
SmartIF< IInterface > m_application
Pointer to the owner of the manager.
StatusCode initialize() override
Initialization (from CONFIGURED to INITIALIZED).
The Application Manager class.
StatusCode start() override
Start (from INITIALIZED to RUNNING).
StatusCode configure() override
Configuration (from OFFLINE to CONFIGURED).
SmartIF< ISvcLocator > & serviceLocator() const override
#define GAUDI_API
Definition: Kernel.h:71
StatusCode stop() override
Stop (from RUNNING to INITIALIZED).
Gaudi::StateMachine::State FSMState() const override
Get the current state.
StatusCode terminate() override
Initialization (from CONFIGURED to OFFLINE).