![]() |
|
|
Generated: 18 Jul 2008 |
00001 // $Id: EventLoopMgr.h,v 1.8 2008/06/06 13:20:49 marcocle Exp $ 00002 #ifndef GAUDISVC_EVENTLOOPMGR_H 00003 #define GAUDISVC_EVENTLOOPMGR_H 1 00004 00005 // Framework include files 00006 #include "GaudiKernel/IEvtSelector.h" 00007 #include "GaudiKernel/MinimalEventLoopMgr.h" 00008 00009 // Forward declarations 00010 class IIncidentSvc; 00011 class IDataManagerSvc; 00012 class IDataProviderSvc; 00013 00036 class EventLoopMgr : public MinimalEventLoopMgr { 00037 public: 00038 00039 protected: 00041 IDataManagerSvc* m_evtDataMgrSvc; 00043 IDataProviderSvc* m_evtDataSvc; 00045 IEvtSelector* m_evtSelector; 00047 IEvtSelector::Context* m_evtContext; 00049 std::string m_evtsel; 00051 IDataManagerSvc* m_histoDataMgrSvc; 00053 IConversionSvc* m_histoPersSvc; 00055 std::string m_histPersName; 00057 IProperty* m_appMgrProperty; 00060 bool m_endEventFired; 00061 00062 00063 public: 00065 EventLoopMgr(const std::string& nam, ISvcLocator* svcLoc); 00067 virtual ~EventLoopMgr(); 00069 StatusCode getEventRoot(IOpaqueAddress*& refpAddr); 00070 00072 virtual StatusCode initialize(); 00074 virtual StatusCode reinitialize(); 00076 virtual StatusCode stop(); 00078 virtual StatusCode finalize(); 00080 virtual StatusCode nextEvent(int maxevt); 00082 virtual StatusCode executeEvent(void* par); 00084 virtual StatusCode executeRun(int maxevt); 00085 }; 00086 #endif // GAUDISVC_EVENTLOOPMGR_H