The Gaudi Framework
v41r0 (bdbe7744)
Toggle main menu visibility
Loading...
Searching...
No Matches
EventLoopMgr.h
Go to the documentation of this file.
1
/***********************************************************************************\
2
* (c) Copyright 1998-2025 CERN for the benefit of the LHCb and ATLAS collaborations *
3
* *
4
* This software is distributed under the terms of the Apache version 2 licence, *
5
* copied verbatim in the file "LICENSE". *
6
* *
7
* In applying this licence, CERN does not waive the privileges and immunities *
8
* granted to it by virtue of its status as an Intergovernmental Organization *
9
* or submit itself to any jurisdiction. *
10
\***********************************************************************************/
11
#pragma once
12
13
#include <
GaudiKernel/IConversionSvc.h
>
14
#include <
GaudiKernel/IDataManagerSvc.h
>
15
#include <
GaudiKernel/IDataProviderSvc.h
>
16
#include <
GaudiKernel/IEvtSelector.h
>
17
#include <
GaudiKernel/IIncidentSvc.h
>
18
#include <
GaudiKernel/MinimalEventLoopMgr.h
>
19
#include <memory>
20
43
class
EventLoopMgr
:
public
MinimalEventLoopMgr
{
44
public
:
45
protected
:
46
// Properties
47
48
Gaudi::Property<std::string>
m_histPersName
{
this
,
"HistogramPersistency"
, {},
"name of the Hist Pers type"
};
49
Gaudi::Property<std::string>
m_evtsel
{
this
,
"EvtSel"
, {},
"event selector"
};
50
52
SmartIF<IDataManagerSvc>
m_evtDataMgrSvc
=
nullptr
;
54
SmartIF<IDataProviderSvc>
m_evtDataSvc
=
nullptr
;
56
SmartIF<IEvtSelector>
m_evtSelector
=
nullptr
;
58
IEvtSelector::Context
*
m_evtContext
=
nullptr
;
60
SmartIF<IDataManagerSvc>
m_histoDataMgrSvc
=
nullptr
;
62
SmartIF<IConversionSvc>
m_histoPersSvc
=
nullptr
;
64
SmartIF<IProperty>
m_appMgrProperty
=
nullptr
;
67
bool
m_endEventFired
=
true
;
68
69
public
:
70
// inherit contructor from base class
71
using
MinimalEventLoopMgr::MinimalEventLoopMgr
;
72
74
~EventLoopMgr
()
override
;
76
StatusCode
getEventRoot
(
IOpaqueAddress
*& refpAddr );
77
79
StatusCode
initialize
()
override
;
81
StatusCode
reinitialize
()
override
;
83
StatusCode
stop
()
override
;
85
StatusCode
finalize
()
override
;
87
StatusCode
nextEvent
(
int
maxevt )
override
;
89
StatusCode
executeEvent
(
EventContext
&& ctx )
override
;
90
};
IConversionSvc.h
IDataManagerSvc.h
IDataProviderSvc.h
IEvtSelector.h
IIncidentSvc.h
MinimalEventLoopMgr.h
EventContext
This class represents an entry point to all the event specific data.
Definition
EventContext.h:35
EventLoopMgr
Class definition of EventLoopMgr.
Definition
EventLoopMgr.h:43
EventLoopMgr::m_evtSelector
SmartIF< IEvtSelector > m_evtSelector
Reference to the Event Selector.
Definition
EventLoopMgr.h:56
EventLoopMgr::MinimalEventLoopMgr
MinimalEventLoopMgr(const std::string &nam, ISvcLocator *svcLoc)
Standard Constructor.
Definition
MinimalEventLoopMgr.cpp:38
EventLoopMgr::getEventRoot
StatusCode getEventRoot(IOpaqueAddress *&refpAddr)
Create event address using event selector.
Definition
EventLoopMgr.cpp:340
EventLoopMgr::reinitialize
StatusCode reinitialize() override
implementation of IService::reinitialize
Definition
EventLoopMgr.cpp:99
EventLoopMgr::stop
StatusCode stop() override
implementation of IService::stop
Definition
EventLoopMgr.cpp:159
EventLoopMgr::m_evtContext
IEvtSelector::Context * m_evtContext
Event Iterator.
Definition
EventLoopMgr.h:58
EventLoopMgr::m_histPersName
Gaudi::Property< std::string > m_histPersName
Definition
EventLoopMgr.h:48
EventLoopMgr::nextEvent
StatusCode nextEvent(int maxevt) override
implementation of IEventProcessor::nextEvent
Definition
EventLoopMgr.cpp:251
EventLoopMgr::m_appMgrProperty
SmartIF< IProperty > m_appMgrProperty
Property interface of ApplicationMgr.
Definition
EventLoopMgr.h:64
EventLoopMgr::m_evtsel
Gaudi::Property< std::string > m_evtsel
Definition
EventLoopMgr.h:49
EventLoopMgr::m_evtDataSvc
SmartIF< IDataProviderSvc > m_evtDataSvc
Reference to the Event Data Service's IDataProviderSvc interface.
Definition
EventLoopMgr.h:54
EventLoopMgr::finalize
StatusCode finalize() override
implementation of IService::finalize
Definition
EventLoopMgr.cpp:171
EventLoopMgr::~EventLoopMgr
~EventLoopMgr() override
Standard Destructor.
Definition
EventLoopMgr.cpp:31
EventLoopMgr::executeEvent
StatusCode executeEvent(EventContext &&ctx) override
implementation of IEventProcessor::executeEvent(EventContext&&)
Definition
EventLoopMgr.cpp:229
EventLoopMgr::m_histoDataMgrSvc
SmartIF< IDataManagerSvc > m_histoDataMgrSvc
Reference to the Histogram Data Service.
Definition
EventLoopMgr.h:60
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:67
EventLoopMgr::initialize
StatusCode initialize() override
implementation of IService::initialize
Definition
EventLoopMgr.cpp:33
EventLoopMgr::m_histoPersSvc
SmartIF< IConversionSvc > m_histoPersSvc
Reference to the Histogram Persistency Service.
Definition
EventLoopMgr.h:62
EventLoopMgr::m_evtDataMgrSvc
SmartIF< IDataManagerSvc > m_evtDataMgrSvc
Reference to the Event Data Service's IDataManagerSvc interface.
Definition
EventLoopMgr.h:52
Gaudi::Property
Implementation of property with value of concrete type.
Definition
Property.h:35
IEvtSelector::Context
Definition
IEvtSelector.h:31
IOpaqueAddress
Opaque address interface definition.
Definition
IOpaqueAddress.h:28
MinimalEventLoopMgr::MinimalEventLoopMgr
MinimalEventLoopMgr(const std::string &nam, ISvcLocator *svcLoc)
Standard Constructor.
Definition
MinimalEventLoopMgr.cpp:38
SmartIF
Small smart pointer class with automatic reference counting for IInterface.
Definition
SmartIF.h:28
StatusCode
This class is used for returning status codes from appropriate routines.
Definition
StatusCode.h:64
GaudiCoreSvc
src
ApplicationMgr
EventLoopMgr.h
Generated on
for The Gaudi Framework by
1.17.0