| The Gaudi Framework v27r1

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

ComponentManager.h
Go to the documentation of this file.
1 #ifndef COMPONENTMANAGER_H_
2 #define COMPONENTMANAGER_H_
3
4 #include "GaudiKernel/IComponentManager.h"
5 #include "GaudiKernel/CommonMessaging.h"
6
13 class GAUDI_API ComponentManager: public CommonMessaging<implements<IComponentManager> > {
14 public:
15
18 ComponentManager(IInterface *application, const InterfaceID &baseIID);
19
21 const InterfaceID& componentBaseInterface() const override;
22
24 ~ComponentManager() override = default;
25
29 StatusCode queryInterface(const InterfaceID& iid, void** pinterface) override;
30
31 SmartIF<ISvcLocator>& serviceLocator() const override {
32 if (!m_svcLocator) m_svcLocator = m_application;
33 return m_svcLocator;
34 }
35
37 StatusCode configure() override {return StatusCode::SUCCESS;}
38
40 StatusCode initialize() override {return StatusCode::SUCCESS;}
41
43 StatusCode start() override {return StatusCode::SUCCESS;}
44
46 StatusCode stop() override {return StatusCode::SUCCESS;}
47
49 StatusCode finalize() override {return StatusCode::SUCCESS;}
50
52 StatusCode terminate() override {return StatusCode::SUCCESS;}
53
54
56 StatusCode reinitialize() override {return StatusCode::SUCCESS;}
57
59 StatusCode restart() override {return StatusCode::SUCCESS;}
60
62 Gaudi::StateMachine::State FSMState() const override {return m_stateful->FSMState();}
63
66 Gaudi::StateMachine::State targetFSMState() const override {return m_stateful->targetFSMState();}
67
68 protected:
69
71 SmartIF<IInterface> m_application;
72
74 SmartIF<IStateful> m_stateful;
75
77 InterfaceID m_basicInterfaceId;
78
80 mutable SmartIF<ISvcLocator> m_svcLocator;
81
82 };
83
84
85 #endif /* COMPONENTMANAGER_H_ */
ComponentManager::targetFSMState
Gaudi::StateMachine::State targetFSMState() const override
When we are in the middle of a transition, get the state where the transition is leading us...
Definition: ComponentManager.h:66
SmartIF< ISvcLocator >
ComponentManager
Base class for a component manager.
Definition: ComponentManager.h:13
ComponentManager::m_svcLocator
SmartIF< ISvcLocator > m_svcLocator
Service locator (needed to access the MessageSvc)
Definition: ComponentManager.h:80
Gaudi::StateMachine::State
State
Allowed states for classes implementing the state machine (ApplicationMgr, Algorithm, Service, AlgTool).
Definition: StateMachine.h:12
ComponentManager::m_stateful
SmartIF< IStateful > m_stateful
Pointer to the IStateful interface of the owner.
Definition: ComponentManager.h:74
ComponentManager::finalize
StatusCode finalize() override
Finalize (from INITIALIZED to CONFIGURED).
Definition: ComponentManager.h:49
InterfaceID
Interface ID class.
Definition: IInterface.h:30
ComponentManager::reinitialize
StatusCode reinitialize() override
Initialization (from INITIALIZED or RUNNING to INITIALIZED, via CONFIGURED).
Definition: ComponentManager.h:56
ComponentManager::m_basicInterfaceId
InterfaceID m_basicInterfaceId
Basic interface id of the managed components.
Definition: ComponentManager.h:77
StatusCode::SUCCESS
Definition: StatusCode.h:30
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
IInterface
Definition of the basic interface.
Definition: IInterface.h:234
ComponentManager::restart
StatusCode restart() override
Initialization (from RUNNING to RUNNING, via INITIALIZED).
Definition: ComponentManager.h:59
CommonMessaging.h
ComponentManager::m_application
SmartIF< IInterface > m_application
Pointer to the owner of the manager.
Definition: ComponentManager.h:71
ComponentManager::initialize
StatusCode initialize() override
Initialization (from CONFIGURED to INITIALIZED).
Definition: ComponentManager.h:40
ComponentManager::start
StatusCode start() override
Start (from INITIALIZED to RUNNING).
Definition: ComponentManager.h:43
IComponentManager.h
ComponentManager::configure
StatusCode configure() override
Configuration (from OFFLINE to CONFIGURED).
Definition: ComponentManager.h:37
CommonMessaging
Definition: CommonMessaging.h:58
ComponentManager::serviceLocator
SmartIF< ISvcLocator > & serviceLocator() const override
Definition: ComponentManager.h:31
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:107
ComponentManager::stop
StatusCode stop() override
Stop (from RUNNING to INITIALIZED).
Definition: ComponentManager.h:46
ComponentManager::FSMState
Gaudi::StateMachine::State FSMState() const override
Get the current state.
Definition: ComponentManager.h:62
ComponentManager::terminate
StatusCode terminate() override
Initialization (from CONFIGURED to OFFLINE).
Definition: ComponentManager.h:52