The Gaudi Framework
v29r0 (ff2e7097)
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
EventSlot.h
Go to the documentation of this file.
1
#ifndef EVENTSLOT_H_
2
#define EVENTSLOT_H_
3
4
// Framework includes
5
#include "
AlgsExecutionStates.h
"
6
#include "
DataFlowManager.h
"
7
#include "
GaudiKernel/EventContext.h
"
8
9
// Event slots management -------------------------------------------------
11
class
EventSlot
12
{
13
public
:
14
EventSlot
(
const
std::vector<DataObjIDColl>
& algoDependencies,
unsigned
int
numberOfAlgorithms,
15
unsigned
int
numberOfControlFlowNodes,
SmartIF<IMessageSvc>
MS )
16
:
eventContext
( nullptr )
17
,
algsStates
( numberOfAlgorithms, MS )
18
,
complete
( false )
19
,
dataFlowMgr
( algoDependencies )
20
,
controlFlowState
( numberOfControlFlowNodes, -1 ){};
21
22
~EventSlot
(){};
23
25
void
reset
(
EventContext
* theeventContext )
26
{
27
eventContext
= theeventContext;
28
algsStates
.
reset
();
29
dataFlowMgr
.
reset
();
30
complete
=
false
;
31
controlFlowState
.
assign
(
controlFlowState
.
size
(), -1 );
32
};
33
35
EventContext
*
eventContext
;
37
AlgsExecutionStates
algsStates
;
39
bool
complete
;
41
DataFlowManager
dataFlowMgr
;
43
std::vector<int>
controlFlowState
;
44
};
45
46
#endif
/* EVENTSLOT_H_ */
DataFlowManager
The DataFlowManager takes care of keeping track of the dependencies of the algorithms in terms of dat...
Definition:
DataFlowManager.h:28
SmartIF< IMessageSvc >
EventSlot::algsStates
AlgsExecutionStates algsStates
Vector of algorithms states.
Definition:
EventSlot.h:37
EventSlot::eventContext
EventContext * eventContext
Cache for the eventContext.
Definition:
EventSlot.h:32
EventContext.h
EventContext
This class represents an entry point to all the event specific data.
Definition:
EventContext.h:24
EventSlot::EventSlot
EventSlot(const std::vector< DataObjIDColl > &algoDependencies, unsigned int numberOfAlgorithms, unsigned int numberOfControlFlowNodes, SmartIF< IMessageSvc > MS)
Definition:
EventSlot.h:14
EventSlot::dataFlowMgr
DataFlowManager dataFlowMgr
DataFlowManager of this slot.
Definition:
EventSlot.h:41
AlgsExecutionStates
The AlgsExecutionStates encodes the state machine for the execution of algorithms within a single eve...
Definition:
AlgsExecutionStates.h:28
EventSlot::controlFlowState
std::vector< int > controlFlowState
State of the control flow.
Definition:
EventSlot.h:43
EventSlot::complete
bool complete
Flags completion of the event.
Definition:
EventSlot.h:39
std::vector::size
T size(T...args)
std::vector::assign
T assign(T...args)
std::vector
STL class.
EventSlot::reset
void reset(EventContext *theeventContext)
Reset all resources in order to reuse the slot.
Definition:
EventSlot.h:25
DataFlowManager::reset
void reset()
Reset to default values.
Definition:
DataFlowManager.cpp:77
AlgsExecutionStates::reset
void reset()
Definition:
AlgsExecutionStates.h:51
EventSlot
Class representing the event slot.
Definition:
EventSlot.h:11
AlgsExecutionStates.h
DataFlowManager.h
EventSlot::~EventSlot
~EventSlot()
Definition:
EventSlot.h:22
GaudiHive
src
EventSlot.h
Generated on Tue Sep 26 2017 11:39:03 for The Gaudi Framework by
1.8.11