The Gaudi Framework
v28r1
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 "
GaudiKernel/EventContext.h
"
6
7
#include "
DataFlowManager.h
"
8
9
// Event slots management -------------------------------------------------
11
class
EventSlot
{
12
public
:
13
EventSlot
(
const
std::vector<DataObjIDColl>
& algoDependencies,
14
unsigned
int
numberOfAlgorithms,
15
unsigned
int
numberOfControlFlowNodes,
16
SmartIF<IMessageSvc>
MS):
17
eventContext
(nullptr),
18
algsStates
(numberOfAlgorithms,MS),
19
complete
(false),
20
dataFlowMgr
(algoDependencies),
21
controlFlowState
(numberOfControlFlowNodes,-1){};
22
23
~EventSlot
(){};
24
26
void
reset
(
EventContext
* theeventContext){
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:25
EventSlot::EventSlot
EventSlot(const std::vector< DataObjIDColl > &algoDependencies, unsigned int numberOfAlgorithms, unsigned int numberOfControlFlowNodes, SmartIF< IMessageSvc > MS)
Definition:
EventSlot.h:13
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:26
DataFlowManager::reset
void reset()
Reset to default values.
Definition:
DataFlowManager.cpp:78
AlgsExecutionStates::reset
void reset()
Definition:
AlgsExecutionStates.h:52
EventSlot
Class representing the event slot.
Definition:
EventSlot.h:11
DataFlowManager.h
EventSlot::~EventSlot
~EventSlot()
Definition:
EventSlot.h:23
GaudiHive
src
EventSlot.h
Generated on Tue Feb 14 2017 13:19:49 for The Gaudi Framework by
1.8.11