The Gaudi Framework  master (82fdf313)
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
19#include <memory>
20
44public:
45protected:
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
67 bool m_endEventFired = true;
68
69public:
70 // inherit contructor from base class
72
74 ~EventLoopMgr() override;
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};
This class represents an entry point to all the event specific data.
Class definition of EventLoopMgr.
SmartIF< IEvtSelector > m_evtSelector
Reference to the Event Selector.
MinimalEventLoopMgr(const std::string &nam, ISvcLocator *svcLoc)
Standard Constructor.
StatusCode getEventRoot(IOpaqueAddress *&refpAddr)
Create event address using event selector.
StatusCode reinitialize() override
implementation of IService::reinitialize
StatusCode stop() override
implementation of IService::stop
IEvtSelector::Context * m_evtContext
Event Iterator.
Gaudi::Property< std::string > m_histPersName
StatusCode nextEvent(int maxevt) override
implementation of IEventProcessor::nextEvent
SmartIF< IProperty > m_appMgrProperty
Property interface of ApplicationMgr.
Gaudi::Property< std::string > m_evtsel
SmartIF< IDataProviderSvc > m_evtDataSvc
Reference to the Event Data Service's IDataProviderSvc interface.
StatusCode finalize() override
implementation of IService::finalize
~EventLoopMgr() override
Standard Destructor.
StatusCode executeEvent(EventContext &&ctx) override
implementation of IEventProcessor::executeEvent(EventContext&&)
SmartIF< IDataManagerSvc > m_histoDataMgrSvc
Reference to the Histogram Data Service.
bool m_endEventFired
Flag to avoid to fire the EnvEvent incident twice in a row (and also not before the first event)
StatusCode initialize() override
implementation of IService::initialize
SmartIF< IConversionSvc > m_histoPersSvc
Reference to the Histogram Persistency Service.
SmartIF< IDataManagerSvc > m_evtDataMgrSvc
Reference to the Event Data Service's IDataManagerSvc interface.
Implementation of property with value of concrete type.
Definition PropertyFwd.h:27
Opaque address interface definition.
MinimalEventLoopMgr(const std::string &nam, ISvcLocator *svcLoc)
Standard Constructor.
Small smart pointer class with automatic reference counting for IInterface.
Definition SmartIF.h:28
This class is used for returning status codes from appropriate routines.
Definition StatusCode.h:64