| The Gaudi Framework v27r1

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

- File List
- File Members

EventLoopMgr.h
Go to the documentation of this file.
1 #ifndef GAUDISVC_EVENTLOOPMGR_H
2 #define GAUDISVC_EVENTLOOPMGR_H 1
3
4 // Framework include files
5 #include "GaudiKernel/IEvtSelector.h"
6 #include "GaudiKernel/MinimalEventLoopMgr.h"
7
8 // std includes
9 #include <memory>
10
11 // Forward declarations
12 class IIncidentSvc;
13 class IDataManagerSvc;
14 class IDataProviderSvc;
15
38 class EventLoopMgr : public MinimalEventLoopMgr {
39 public:
40
41 protected:
43 SmartIF<IDataManagerSvc> m_evtDataMgrSvc = nullptr;
45 SmartIF<IDataProviderSvc> m_evtDataSvc = nullptr;
47 SmartIF<IEvtSelector> m_evtSelector = nullptr;
49 IEvtSelector::Context* m_evtContext = nullptr;
51 std::string m_evtsel;
53 SmartIF<IDataManagerSvc> m_histoDataMgrSvc = nullptr;
55 SmartIF<IConversionSvc> m_histoPersSvc = nullptr;
57 std::string m_histPersName;
59 SmartIF<IProperty> m_appMgrProperty = nullptr;
62 bool m_endEventFired = true;
64 bool m_warnings = true;
65
66 public:
68 EventLoopMgr(const std::string& nam, ISvcLocator* svcLoc);
70 ~EventLoopMgr() override;
72 StatusCode getEventRoot(IOpaqueAddress*& refpAddr);
73
75 StatusCode initialize() override;
77 StatusCode reinitialize() override;
79 StatusCode stop() override;
81 StatusCode finalize() override;
83 StatusCode nextEvent(int maxevt) override;
85 StatusCode executeEvent(void* par) override;
86 };
87 #endif // GAUDISVC_EVENTLOOPMGR_H
SmartIF< IDataManagerSvc >
ISvcLocator
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
Definition: ISvcLocator.h:25
EventLoopMgr::finalize
StatusCode finalize() override
implementation of IService::finalize
Definition: EventLoopMgr.cpp:204
EventLoopMgr::m_histoPersSvc
SmartIF< IConversionSvc > m_histoPersSvc
Reference to the Histogram Persistency Service.
Definition: EventLoopMgr.h:55
EventLoopMgr::m_histPersName
std::string m_histPersName
Name of the Hist Pers type.
Definition: EventLoopMgr.h:57
EventLoopMgr::reinitialize
StatusCode reinitialize() override
implementation of IService::reinitialize
Definition: EventLoopMgr.cpp:123
IEvtSelector::Context
Definition: IEvtSelector.h:23
IDataProviderSvc
Data provider interface definition.
Definition: IDataProviderSvc.h:45
EventLoopMgr
Class definition of EventLoopMgr.
Definition: EventLoopMgr.h:38
std::string
STL class.
compareOutputFiles.par
string par
Definition: compareOutputFiles.py:386
EventLoopMgr::m_warnings
bool m_warnings
Flag to disable warning messages when using external input.
Definition: EventLoopMgr.h:64
EventLoopMgr::executeEvent
StatusCode executeEvent(void *par) override
implementation of IEventProcessor::executeEvent(void* par)
Definition: EventLoopMgr.cpp:270
EventLoopMgr::nextEvent
StatusCode nextEvent(int maxevt) override
implementation of IService::nextEvent
Definition: EventLoopMgr.cpp:301
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
EventLoopMgr::getEventRoot
StatusCode getEventRoot(IOpaqueAddress *&refpAddr)
Create event address using event selector.
Definition: EventLoopMgr.cpp:396
EventLoopMgr::EventLoopMgr
EventLoopMgr(const std::string &nam, ISvcLocator *svcLoc)
Standard Constructor.
Definition: EventLoopMgr.cpp:32
EventLoopMgr::m_evtDataMgrSvc
SmartIF< IDataManagerSvc > m_evtDataMgrSvc
Reference to the Event Data Service's IDataManagerSvc interface.
Definition: EventLoopMgr.h:43
EventLoopMgr::initialize
StatusCode initialize() override
implementation of IService::initialize
Definition: EventLoopMgr.cpp:52
MinimalEventLoopMgr.h
EventLoopMgr::m_appMgrProperty
SmartIF< IProperty > m_appMgrProperty
Property interface of ApplicationMgr.
Definition: EventLoopMgr.h:59
EventLoopMgr::m_evtContext
IEvtSelector::Context * m_evtContext
Event Iterator.
Definition: EventLoopMgr.h:49
EventLoopMgr::m_evtSelector
SmartIF< IEvtSelector > m_evtSelector
Reference to the Event Selector.
Definition: EventLoopMgr.h:47
IDataManagerSvc
Definition: IDataManagerSvc.h:45
EventLoopMgr::stop
StatusCode stop() override
implementation of IService::stop
Definition: EventLoopMgr.cpp:192
EventLoopMgr::m_endEventFired
bool m_endEventFired
Flag to avoid to fire the EnvEvent incident twice in a row (and also not before the first event) ...
Definition: EventLoopMgr.h:62
EventLoopMgr::m_evtDataSvc
SmartIF< IDataProviderSvc > m_evtDataSvc
Reference to the Event Data Service's IDataProviderSvc interface.
Definition: EventLoopMgr.h:45
IEvtSelector.h
MinimalEventLoopMgr
This is the default processing manager of the application manager.
Definition: MinimalEventLoopMgr.h:25
EventLoopMgr::~EventLoopMgr
~EventLoopMgr() override
Standard Destructor.
Definition: EventLoopMgr.cpp:45
IOpaqueAddress
Opaque address interface definition.
Definition: IOpaqueAddress.h:23
EventLoopMgr::m_evtsel
std::string m_evtsel
Event selector.
Definition: EventLoopMgr.h:51
IIncidentSvc
The interface implemented by the IncidentSvc service.
Definition: IIncidentSvc.h:21
EventLoopMgr::m_histoDataMgrSvc
SmartIF< IDataManagerSvc > m_histoDataMgrSvc
Reference to the Histogram Data Service.
Definition: EventLoopMgr.h:53