| The Gaudi Framework v27r1

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

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
9 #include "ForwardSchedulerSvc.h"
10
11 // External libs
12 #include "tbb/task.h"
13
14 class AlgoExecutionTask: public tbb::task {
15 public:
16 AlgoExecutionTask(IAlgorithm* algorithm,
17 unsigned int algoIndex,
18 ISvcLocator* svcLocator,
19 ForwardSchedulerSvc* schedSvc):
20 m_algorithm(algorithm),
21 m_algoIndex(algoIndex),
22 m_schedSvc(schedSvc),
23 m_serviceLocator(svcLocator){};
24 virtual tbb::task* execute();
25 private:
26 SmartIF<IAlgorithm> m_algorithm;
27 const unsigned int m_algoIndex;
28 // For the callbacks on task finishing
29 SmartIF<ForwardSchedulerSvc> m_schedSvc;
30 SmartIF<ISvcLocator> m_serviceLocator;
31 };
32
33 #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
AlgoExecutionTask::AlgoExecutionTask
AlgoExecutionTask(IAlgorithm *algorithm, unsigned int algoIndex, ISvcLocator *svcLocator, ForwardSchedulerSvc *schedSvc)
Definition: AlgoExecutionTask.h:16
IAlgorithm.h
AlgoExecutionTask
Definition: AlgoExecutionTask.h:14
AlgoExecutionTask::m_serviceLocator
SmartIF< ISvcLocator > m_serviceLocator
Definition: AlgoExecutionTask.h:30
AlgoExecutionTask::m_algorithm
SmartIF< IAlgorithm > m_algorithm
Definition: AlgoExecutionTask.h:26
AlgoExecutionTask::execute
virtual tbb::task * execute()
Definition: AlgoExecutionTask.cpp:14
ForwardSchedulerSvc
The SchedulerSvc implements the IScheduler interface.
Definition: ForwardSchedulerSvc.h:73
AlgoExecutionTask::m_schedSvc
SmartIF< ForwardSchedulerSvc > m_schedSvc
Definition: AlgoExecutionTask.h:29
AlgoExecutionTask::m_algoIndex
const unsigned int m_algoIndex
Definition: AlgoExecutionTask.h:27
Gaudi::svcLocator
GAUDI_API ISvcLocator * svcLocator()
SmartIF.h
IAlgorithm
The IAlgorithm is the interface implemented by the Algorithm base class.
Definition: IAlgorithm.h:25
ISvcLocator.h