Gaudi Framework, version v23r2

Home   Generated: Thu Jun 28 2012

ComponentManager.h

Go to the documentation of this file.
00001 #ifndef COMPONENTMANAGER_H_
00002 #define COMPONENTMANAGER_H_
00003 
00004 #include "GaudiKernel/IComponentManager.h"
00005 #include "GaudiKernel/CommonMessaging.h"
00006 #include "GaudiKernel/HashMap.h"
00007 
00014 class GAUDI_API ComponentManager: public CommonMessaging<implements1<IComponentManager> > {
00015 public:
00016 
00019   ComponentManager(IInterface *application, const InterfaceID &baseIID);
00020 
00022   virtual const InterfaceID& componentBaseInterface() const;
00023 
00025   virtual ~ComponentManager();
00026 
00030   StatusCode queryInterface(const InterfaceID& iid, void** pinterface);
00031 
00032   virtual SmartIF<ISvcLocator>& serviceLocator() const {
00033     if (!m_svcLocator) m_svcLocator = m_application;
00034     return m_svcLocator;
00035   }
00036 
00038   virtual StatusCode configure() {return StatusCode::SUCCESS;}
00039 
00041   virtual StatusCode initialize() {return StatusCode::SUCCESS;}
00042 
00044   virtual StatusCode start() {return StatusCode::SUCCESS;}
00045 
00047   virtual StatusCode stop() {return StatusCode::SUCCESS;}
00048 
00050   virtual StatusCode finalize() {return StatusCode::SUCCESS;}
00051 
00053   virtual StatusCode terminate() {return StatusCode::SUCCESS;}
00054 
00055 
00057   virtual StatusCode reinitialize() {return StatusCode::SUCCESS;}
00058 
00060   virtual StatusCode restart() {return StatusCode::SUCCESS;}
00061 
00063   virtual Gaudi::StateMachine::State FSMState() const {return m_stateful->FSMState();}
00064 
00067   virtual Gaudi::StateMachine::State targetFSMState() const {return m_stateful->targetFSMState();}
00068 
00069 protected:
00070 
00072   SmartIF<IInterface> m_application;
00073 
00075   SmartIF<IStateful> m_stateful;
00076 
00078   InterfaceID m_basicInterfaceId;
00079 
00081   mutable SmartIF<ISvcLocator> m_svcLocator;
00082 
00083 };
00084 
00085 
00086 #endif /* COMPONENTMANAGER_H_ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines

Generated at Thu Jun 28 2012 23:27:19 for Gaudi Framework, version v23r2 by Doxygen version 1.7.2 written by Dimitri van Heesch, © 1997-2004