The Gaudi Framework  v30r3 (a5ef0a68)
IOBoundAlgTask.h
Go to the documentation of this file.
1 #ifndef GAUDIHIVE_IOBOUNDALGTASK_H
2 #define GAUDIHIVE_IOBOUNDALGTASK_H
3 
4 // Framework include files
7 #include "GaudiKernel/IAlgTask.h"
10 #include "GaudiKernel/SmartIF.h"
11 
12 #include <functional>
13 
23 class IOBoundAlgTask : public IAlgTask
24 {
25 public:
27  std::function<StatusCode()> promote2ExecutedClosure )
28  : m_algorithm( algorithm )
29  , m_evtCtx( ctx )
30  , m_aess( aem )
31  , m_serviceLocator( svcLocator )
32  , m_promote2ExecutedClosure( std::move( promote2ExecutedClosure ) )
33  {
34  }
35 
36  StatusCode execute() override final;
37 
38 private:
44 };
45 
46 #endif
Wrapper around I/O-bound Gaudi-algorithms.
SmartIF< IAlgorithm > m_algorithm
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
Definition: ISvcLocator.h:25
StatusCode execute() override final
EventContext * m_evtCtx
STL namespace.
IOBoundAlgTask(IAlgorithm *algorithm, EventContext *ctx, ISvcLocator *svcLocator, IAlgExecStateSvc *aem, std::function< StatusCode()> promote2ExecutedClosure)
This class represents an entry point to all the event specific data.
Definition: EventContext.h:24
General interface for a wrapper around Gaudi algorithm.
Definition: IAlgTask.h:15
GAUDI_API ISvcLocator * svcLocator()
Abstract interface for a service that manages the Algorithm execution states.
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:51
SmartIF< ISvcLocator > m_serviceLocator
The IAlgorithm is the interface implemented by the Algorithm base class.
Definition: IAlgorithm.h:28
IAlgExecStateSvc * m_aess
std::function< StatusCode()> m_promote2ExecutedClosure