The Gaudi Framework
v28r0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
AlgoExecutionTask.h
Go to the documentation of this file.
1
#ifndef GAUDIHIVE_ALGOEXECUTIONTASK_H
2
#define GAUDIHIVE_ALGOEXECUTIONTASK_H
3
4
// Framework include files
5
#include "
GaudiKernel/IAlgorithm.h
"
6
#include "
GaudiKernel/SmartIF.h
"
7
#include "
GaudiKernel/ISvcLocator.h
"
8
#include "
GaudiKernel/EventContext.h
"
9
#include "
GaudiKernel/IAlgExecStateSvc.h
"
10
11
#include "
ForwardSchedulerSvc.h
"
12
13
// External libs
14
#include "tbb/task.h"
15
16
class
AlgoExecutionTask
:
public
tbb::task {
17
public
:
18
AlgoExecutionTask
(
IAlgorithm
* algorithm,
19
unsigned
int
algoIndex,
20
EventContext
* ctx,
21
ISvcLocator
*
svcLocator
,
22
ForwardSchedulerSvc
* schedSvc,
23
IAlgExecStateSvc
* aem):
24
m_algorithm
(algorithm),
25
m_evtCtx
(ctx),
26
m_algoIndex
(algoIndex),
27
m_schedSvc
(schedSvc),
28
m_aess
(aem),
29
m_serviceLocator
(svcLocator){};
30
tbb::task*
execute
()
override
;
31
private
:
32
SmartIF<IAlgorithm>
m_algorithm
;
33
EventContext
*
m_evtCtx
;
34
const
unsigned
int
m_algoIndex
;
35
// For the callbacks on task finishing
36
SmartIF<ForwardSchedulerSvc>
m_schedSvc
;
37
IAlgExecStateSvc
*
m_aess
;
38
SmartIF<ISvcLocator>
m_serviceLocator
;
39
};
40
41
#endif
ForwardSchedulerSvc.h
SmartIF< IAlgorithm >
ISvcLocator
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
Definition:
ISvcLocator.h:25
IAlgExecStateSvc.h
AlgoExecutionTask::AlgoExecutionTask
AlgoExecutionTask(IAlgorithm *algorithm, unsigned int algoIndex, EventContext *ctx, ISvcLocator *svcLocator, ForwardSchedulerSvc *schedSvc, IAlgExecStateSvc *aem)
Definition:
AlgoExecutionTask.h:18
AlgoExecutionTask::m_aess
IAlgExecStateSvc * m_aess
Definition:
AlgoExecutionTask.h:37
IAlgorithm.h
AlgoExecutionTask
Definition:
AlgoExecutionTask.h:16
AlgoExecutionTask::m_serviceLocator
SmartIF< ISvcLocator > m_serviceLocator
Definition:
AlgoExecutionTask.h:38
EventContext.h
AlgoExecutionTask::m_algorithm
SmartIF< IAlgorithm > m_algorithm
Definition:
AlgoExecutionTask.h:32
ForwardSchedulerSvc
The SchedulerSvc implements the IScheduler interface.
Definition:
ForwardSchedulerSvc.h:84
EventContext
This class represents an entry point to all the event specific data.
Definition:
EventContext.h:25
AlgoExecutionTask::execute
tbb::task * execute() override
Definition:
AlgoExecutionTask.cpp:15
AlgoExecutionTask::m_schedSvc
SmartIF< ForwardSchedulerSvc > m_schedSvc
Definition:
AlgoExecutionTask.h:36
AlgoExecutionTask::m_algoIndex
const unsigned int m_algoIndex
Definition:
AlgoExecutionTask.h:34
Gaudi::svcLocator
GAUDI_API ISvcLocator * svcLocator()
IAlgExecStateSvc
Abstract interface for a service that manages the Algorithm execution states.
Definition:
IAlgExecStateSvc.h:71
SmartIF.h
IAlgorithm
The IAlgorithm is the interface implemented by the Algorithm base class.
Definition:
IAlgorithm.h:27
AlgoExecutionTask::m_evtCtx
EventContext * m_evtCtx
Definition:
AlgoExecutionTask.h:33
ISvcLocator.h
GaudiHive
src
AlgoExecutionTask.h
Generated on Fri Nov 11 2016 18:44:51 for The Gaudi Framework by
1.8.11