![]() |
The Gaudi Framework
v27r0
|
#include <GaudiHive/HiveEventLoopMgr.h>
Public Member Functions | |
HiveEventLoopMgr (const std::string &nam, ISvcLocator *svcLoc) | |
Standard Constructor. More... | |
virtual | ~HiveEventLoopMgr () |
Standard Destructor. More... | |
StatusCode | getEventRoot (IOpaqueAddress *&refpAddr) |
Create event address using event selector. More... | |
virtual StatusCode | initialize () |
implementation of IService::initialize More... | |
virtual StatusCode | reinitialize () |
implementation of IService::reinitialize More... | |
virtual StatusCode | stop () |
implementation of IService::stop More... | |
virtual StatusCode | finalize () |
implementation of IService::finalize More... | |
virtual StatusCode | nextEvent (int maxevt) |
implementation of IService::nextEvent More... | |
virtual StatusCode | executeEvent (void *par) |
implementation of IEventProcessor::executeEvent(void* par) More... | |
virtual StatusCode | executeRun (int maxevt) |
implementation of IEventProcessor::executeRun() More... | |
void | taskFinished (IAlgorithm *&algo) |
Decrement the number of algos in flight and put algo back in manager - maybe private. More... | |
![]() | |
MinimalEventLoopMgr (const std::string &nam, ISvcLocator *svcLoc) | |
Standard Constructor. More... | |
~MinimalEventLoopMgr () override=default | |
Standard Destructor. More... | |
StatusCode | initialize () override |
implementation of IService::initialize More... | |
StatusCode | start () override |
implementation of IService::start More... | |
StatusCode | stop () override |
implementation of IService::stop More... | |
StatusCode | finalize () override |
implementation of IService::finalize More... | |
StatusCode | reinitialize () override |
implementation of IService::reinitialize More... | |
StatusCode | restart () override |
implementation of IService::restart More... | |
StatusCode | nextEvent (int maxevt) override |
implementation of IEventProcessor::nextEvent More... | |
StatusCode | executeEvent (void *par) override |
implementation of IEventProcessor::executeEvent(void* par) More... | |
StatusCode | executeRun (int maxevt) override |
implementation of IEventProcessor::executeRun( ) More... | |
StatusCode | stopRun () override |
implementation of IEventProcessor::stopRun( ) More... | |
void | topAlgHandler (Property &p) |
Top algorithm List handler. More... | |
StatusCode | decodeTopAlgs () |
decodeTopAlgNameList & topAlgNameListHandler More... | |
void | outStreamHandler (Property &p) |
Output stream List handler. More... | |
StatusCode | decodeOutStreams () |
decodeOutStreamNameList & outStreamNameListHandler More... | |
MinimalEventLoopMgr (const std::string &nam, ISvcLocator *svcLoc) | |
Standard Constructor. More... | |
~MinimalEventLoopMgr () override=default | |
Standard Destructor. More... | |
StatusCode | initialize () override |
implementation of IService::initialize More... | |
StatusCode | start () override |
implementation of IService::start More... | |
StatusCode | stop () override |
implementation of IService::stop More... | |
StatusCode | finalize () override |
implementation of IService::finalize More... | |
StatusCode | reinitialize () override |
implementation of IService::reinitialize More... | |
StatusCode | restart () override |
implementation of IService::restart More... | |
StatusCode | nextEvent (int maxevt) override |
implementation of IEventProcessor::nextEvent More... | |
StatusCode | executeEvent (void *par) override |
implementation of IEventProcessor::executeEvent(void* par) More... | |
StatusCode | executeRun (int maxevt) override |
implementation of IEventProcessor::executeRun( ) More... | |
StatusCode | stopRun () override |
implementation of IEventProcessor::stopRun( ) More... | |
void | topAlgHandler (Property &p) |
Top algorithm List handler. More... | |
StatusCode | decodeTopAlgs () |
decodeTopAlgNameList & topAlgNameListHandler More... | |
void | outStreamHandler (Property &p) |
Output stream List handler. More... | |
StatusCode | decodeOutStreams () |
decodeOutStreamNameList & outStreamNameListHandler More... | |
![]() | |
void * | i_cast (const InterfaceID &tid) const override |
Implementation of IInterface::i_cast. More... | |
StatusCode | queryInterface (const InterfaceID &ti, void **pp) override |
Implementation of IInterface::queryInterface. More... | |
std::vector< std::string > | getInterfaceNames () const override |
Implementation of IInterface::getInterfaceNames. More... | |
~extends () override=default | |
Virtual destructor. More... | |
void * | i_cast (const InterfaceID &tid) const override |
Implementation of IInterface::i_cast. More... | |
StatusCode | queryInterface (const InterfaceID &ti, void **pp) override |
Implementation of IInterface::queryInterface. More... | |
std::vector< std::string > | getInterfaceNames () const override |
Implementation of IInterface::getInterfaceNames. More... | |
~extends () override=default | |
Virtual destructor. More... | |
![]() | |
~extend_interfaces () override=default | |
Virtual destructor. More... | |
~extend_interfaces () override=default | |
Virtual destructor. More... | |
Protected Types | |
typedef std::vector< std::vector< std::string > > | algosDependenciesCollection |
Algorithms Inputs. More... | |
![]() | |
enum | State { OFFLINE, CONFIGURED, FINALIZED, INITIALIZED, OFFLINE, CONFIGURED, FINALIZED, INITIALIZED } |
enum | State { OFFLINE, CONFIGURED, FINALIZED, INITIALIZED, OFFLINE, CONFIGURED, FINALIZED, INITIALIZED } |
Protected Member Functions | |
void | find_dependencies () |
Get the input and output collections. More... | |
Protected Attributes | |
SmartIF< IDataManagerSvc > | m_evtDataMgrSvc |
Reference to the Event Data Service's IDataManagerSvc interface. More... | |
SmartIF< IDataProviderSvc > | m_evtDataSvc |
Reference to the Event Data Service's IDataProviderSvc interface. More... | |
SmartIF< IEvtSelector > | m_evtSelector |
Reference to the Event Selector. More... | |
IEvtSelector::Context * | m_evtContext |
Event Iterator. More... | |
std::string | m_evtsel |
Event selector. More... | |
SmartIF< IDataManagerSvc > | m_histoDataMgrSvc |
Reference to the Histogram Data Service. More... | |
SmartIF< IConversionSvc > | m_histoPersSvc |
Reference to the Histogram Persistency Service. More... | |
SmartIF< IHiveWhiteBoard > | m_whiteboard |
Reference to the Histogram Persistency Service. More... | |
SmartIF< IAlgResourcePool > | m_algResourcePool |
Reference to the Algorithm resource pool. More... | |
std::string | m_histPersName |
Name of the Hist Pers type. More... | |
SmartIF< IProperty > | m_appMgrProperty |
Property interface of ApplicationMgr. More... | |
bool | m_endEventFired |
Flag to avoid to fire the EnvEvent incident twice in a row (and also not before the first event) More... | |
bool | m_warnings |
Flag to disable warning messages when using external input. More... | |
unsigned int | m_max_parallel |
Maximum number of parallel running algorithms. More... | |
tbb::task_scheduler_init * | m_tbb_scheduler_init |
Pointer to tbb task scheduler. More... | |
state_type | m_termination_requirement |
The termination requirement. More... | |
std::vector< state_type > | m_all_requirements |
All requirements. More... | |
std::map< std::string, unsigned int > | m_product_indices |
Register of input products. More... | |
std::atomic_uint | m_total_algos_in_flight |
Total number of algos in flight across all events. More... | |
unsigned int | m_numberOfAlgos |
Total number of algos. More... | |
bool | m_DumpQueues |
Dump the algorithm queues. More... | |
unsigned int | m_evts_parallel |
Number of events in parallel. More... | |
unsigned int | m_num_threads |
Total numbers of threads. More... | |
bool | m_CloneAlgorithms |
Clone algorithms to run them simultaneously. More... | |
algosDependenciesCollection | m_AlgosDependencies |
unsigned int | m_nProducts |
![]() | |
SmartIF< IAppMgrUI > | m_appMgrUI |
Reference to the IAppMgrUI interface of the application manager. More... | |
SmartIF< IIncidentSvc > | m_incidentSvc |
Reference to the incident service. More... | |
ListAlg | m_topAlgList |
List of top level algorithms. More... | |
ListAlg | m_outStreamList |
List of output streams. More... | |
std::string | m_outStreamType |
Out Stream type. More... | |
StringArrayProperty | m_topAlgNames |
List of top level algorithms names. More... | |
StringArrayProperty | m_outStreamNames |
List of output stream names. More... | |
State | m_state = OFFLINE |
State of the object. More... | |
bool | m_scheduledStop = false |
Scheduled stop of event processing. More... | |
SmartIF< IIncidentListener > | m_abortEventListener |
Instance of the incident listener waiting for AbortEvent. More... | |
bool | m_abortEvent = false |
Flag signalling that the event being processedhas to be aborted (skip all following top algs). More... | |
std::string | m_abortEventSource |
Source of the AbortEvent incident. More... | |
Additional Inherited Members | |
![]() | |
typedef std::vector< SmartIF< IAlgorithm > > | ListAlg |
typedef std::vector< SmartIF< IAlgorithm > > | ListAlg |
![]() | |
using | base_class = extends |
Typedef to this class. More... | |
using | extend_interfaces_base = extend_interfaces< Interfaces...> |
Typedef to the base of this class. More... | |
using | base_class = extends |
Typedef to this class. More... | |
using | extend_interfaces_base = extend_interfaces< Interfaces...> |
Typedef to the base of this class. More... | |
![]() | |
using | ext_iids = typename Gaudi::interface_list_cat< typename Interfaces::ext_iids...>::type |
take union of the ext_iids of all Interfaces... More... | |
using | ext_iids = typename Gaudi::interface_list_cat< typename Interfaces::ext_iids...>::type |
take union of the ext_iids of all Interfaces... More... | |
Definition at line 32 of file HiveEventLoopMgr.h.
|
protected |
Algorithms Inputs.
Definition at line 91 of file HiveEventLoopMgr.h.
HiveEventLoopMgr::HiveEventLoopMgr | ( | const std::string & | nam, |
ISvcLocator * | svcLoc | ||
) |
Standard Constructor.
Definition at line 79 of file HiveEventLoopMgr.cpp.
|
virtual |
Standard Destructor.
Definition at line 113 of file HiveEventLoopMgr.cpp.
|
virtual |
implementation of IEventProcessor::executeEvent(void* par)
Definition at line 370 of file HiveEventLoopMgr.cpp.
|
virtual |
implementation of IEventProcessor::executeRun()
Definition at line 428 of file HiveEventLoopMgr.cpp.
|
virtual |
implementation of IService::finalize
Definition at line 299 of file HiveEventLoopMgr.cpp.
|
protected |
Get the input and output collections.
Compute dependencies between the algorithms.
Definition at line 743 of file HiveEventLoopMgr.cpp.
StatusCode HiveEventLoopMgr::getEventRoot | ( | IOpaqueAddress *& | refpAddr | ) |
Create event address using event selector.
Definition at line 716 of file HiveEventLoopMgr.cpp.
|
virtual |
implementation of IService::initialize
Definition at line 125 of file HiveEventLoopMgr.cpp.
|
virtual |
implementation of IService::nextEvent
Definition at line 442 of file HiveEventLoopMgr.cpp.
|
virtual |
implementation of IService::reinitialize
Definition at line 217 of file HiveEventLoopMgr.cpp.
|
virtual |
implementation of IService::stop
Definition at line 287 of file HiveEventLoopMgr.cpp.
void HiveEventLoopMgr::taskFinished | ( | IAlgorithm *& | algo | ) |
Decrement the number of algos in flight and put algo back in manager - maybe private.
Definition at line 786 of file HiveEventLoopMgr.cpp.
|
protected |
Definition at line 93 of file HiveEventLoopMgr.h.
|
protected |
Reference to the Algorithm resource pool.
Definition at line 53 of file HiveEventLoopMgr.h.
|
protected |
All requirements.
Definition at line 74 of file HiveEventLoopMgr.h.
Property interface of ApplicationMgr.
Definition at line 57 of file HiveEventLoopMgr.h.
|
protected |
Clone algorithms to run them simultaneously.
Definition at line 88 of file HiveEventLoopMgr.h.
|
protected |
Dump the algorithm queues.
Definition at line 82 of file HiveEventLoopMgr.h.
|
protected |
Flag to avoid to fire the EnvEvent incident twice in a row (and also not before the first event)
Definition at line 60 of file HiveEventLoopMgr.h.
|
protected |
Event Iterator.
Definition at line 43 of file HiveEventLoopMgr.h.
|
protected |
Reference to the Event Data Service's IDataManagerSvc interface.
Definition at line 37 of file HiveEventLoopMgr.h.
|
protected |
Reference to the Event Data Service's IDataProviderSvc interface.
Definition at line 39 of file HiveEventLoopMgr.h.
|
protected |
Number of events in parallel.
Definition at line 84 of file HiveEventLoopMgr.h.
|
protected |
Event selector.
Definition at line 45 of file HiveEventLoopMgr.h.
|
protected |
Reference to the Event Selector.
Definition at line 41 of file HiveEventLoopMgr.h.
|
protected |
Reference to the Histogram Data Service.
Definition at line 47 of file HiveEventLoopMgr.h.
|
protected |
Reference to the Histogram Persistency Service.
Definition at line 49 of file HiveEventLoopMgr.h.
|
protected |
Name of the Hist Pers type.
Definition at line 55 of file HiveEventLoopMgr.h.
|
protected |
Maximum number of parallel running algorithms.
Definition at line 66 of file HiveEventLoopMgr.h.
|
protected |
Definition at line 95 of file HiveEventLoopMgr.h.
|
protected |
Total numbers of threads.
Definition at line 86 of file HiveEventLoopMgr.h.
|
protected |
Total number of algos.
Definition at line 80 of file HiveEventLoopMgr.h.
|
protected |
Register of input products.
Definition at line 76 of file HiveEventLoopMgr.h.
|
protected |
Pointer to tbb task scheduler.
Definition at line 68 of file HiveEventLoopMgr.h.
|
protected |
The termination requirement.
Definition at line 72 of file HiveEventLoopMgr.h.
|
protected |
Total number of algos in flight across all events.
Definition at line 78 of file HiveEventLoopMgr.h.
|
protected |
Flag to disable warning messages when using external input.
Definition at line 62 of file HiveEventLoopMgr.h.
|
protected |
Reference to the Histogram Persistency Service.
Definition at line 51 of file HiveEventLoopMgr.h.