| The Gaudi Framework v29r1 (5cd95fa2)

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

- File List
- File Members

IScheduler.h
Go to the documentation of this file.
1 #ifndef GAUDIKERNEL_ISCHEDULER_H
2 #define GAUDIKERNEL_ISCHEDULER_H
3
4 // Framework include files
5 #include "GaudiKernel/EventContext.h"
6 #include "GaudiKernel/IInterface.h"
7
8 // C++ include files
9 #include <functional>
10 #include <vector>
11
20 class GAUDI_API IScheduler : virtual public IInterface
21 {
22 public:
24 DeclareInterfaceID( IScheduler, 1, 0 );
25
27 virtual StatusCode pushNewEvent( EventContext* eventContext ) = 0;
28
31 virtual StatusCode pushNewEvents( std::vector<EventContext*>& eventContexts ) = 0;
32
34 virtual StatusCode popFinishedEvent( EventContext*& eventContext ) = 0;
35
37 virtual StatusCode tryPopFinishedEvent( EventContext*& eventContext ) = 0;
38
40 virtual unsigned int freeSlots() = 0;
41
42 virtual void dumpState(){};
43 };
44 #endif
EventContext.h
IScheduler::dumpState
virtual void dumpState()
Definition: IScheduler.h:42
EventContext
This class represents an entry point to all the event specific data.
Definition: EventContext.h:24
IScheduler
General interface for algorithm scheduler.
Definition: IScheduler.h:20
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:28
DeclareInterfaceID
#define DeclareInterfaceID(iface, major, minor)
Macro to declare the interface ID when using the new mechanism of extending and implementing interfac...
Definition: IInterface.h:13
IInterface
Definition of the basic interface.
Definition: IInterface.h:277
std::vector
STL class.
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:110
IInterface.h