|
Gaudi Framework, version v23r2 |
| Home | Generated: Thu Jun 28 2012 |
00001 // $Id: EventLoopMgr.h,v 1.9 2008/10/09 13:40:18 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 // std includes 00010 #include <memory> 00011 00012 // Forward declarations 00013 class IIncidentSvc; 00014 class IDataManagerSvc; 00015 class IDataProviderSvc; 00016 00039 class EventLoopMgr : public MinimalEventLoopMgr { 00040 public: 00041 00042 protected: 00044 SmartIF<IDataManagerSvc> m_evtDataMgrSvc; 00046 SmartIF<IDataProviderSvc> m_evtDataSvc; 00048 SmartIF<IEvtSelector> m_evtSelector; 00050 IEvtSelector::Context* m_evtContext; 00052 std::string m_evtsel; 00054 SmartIF<IDataManagerSvc> m_histoDataMgrSvc; 00056 SmartIF<IConversionSvc> m_histoPersSvc; 00058 std::string m_histPersName; 00060 SmartIF<IProperty> m_appMgrProperty; 00063 bool m_endEventFired; 00065 bool m_warnings; 00066 00067 public: 00069 EventLoopMgr(const std::string& nam, ISvcLocator* svcLoc); 00071 virtual ~EventLoopMgr(); 00073 StatusCode getEventRoot(IOpaqueAddress*& refpAddr); 00074 00076 virtual StatusCode initialize(); 00078 virtual StatusCode reinitialize(); 00080 virtual StatusCode stop(); 00082 virtual StatusCode finalize(); 00084 virtual StatusCode nextEvent(int maxevt); 00086 virtual StatusCode executeEvent(void* par); 00088 virtual StatusCode executeRun(int maxevt); 00089 }; 00090 #endif // GAUDISVC_EVENTLOOPMGR_H