![]() |
|
|
Generated: 24 Nov 2008 |
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 // 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; 00062 bool m_warnings; 00063 00064 public: 00066 EventLoopMgr(const std::string& nam, ISvcLocator* svcLoc); 00068 virtual ~EventLoopMgr(); 00070 StatusCode getEventRoot(IOpaqueAddress*& refpAddr); 00071 00073 virtual StatusCode initialize(); 00075 virtual StatusCode reinitialize(); 00077 virtual StatusCode stop(); 00079 virtual StatusCode finalize(); 00081 virtual StatusCode nextEvent(int maxevt); 00083 virtual StatusCode executeEvent(void* par); 00085 virtual StatusCode executeRun(int maxevt); 00086 }; 00087 #endif // GAUDISVC_EVENTLOOPMGR_H