| The Gaudi Framework v29r0 (ff2e7097)

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

- File List
- File Members

IEvtSelector.h
Go to the documentation of this file.
1 #ifndef GAUDIKERNEL_IEVTSELECTOR_H
2 #define GAUDIKERNEL_IEVTSELECTOR_H 1
3
4 // Include files
5 #include "GaudiKernel/IInterface.h"
6 #include "GaudiKernel/IOpaqueAddress.h"
7 #include "GaudiKernel/StatusCode.h"
8 #include <string>
9
18 class GAUDI_API IEvtSelector : virtual public IInterface
19 {
20 public:
22 DeclareInterfaceID( IEvtSelector, 2, 0 );
23
24 class Context
25 {
26 public:
27 virtual ~Context() = default;
28 virtual void* identifier() const = 0;
29 };
30
36 virtual StatusCode createContext( Context*& c ) const = 0;
37
45 virtual StatusCode next( Context& c ) const = 0;
46
52 virtual StatusCode next( Context& c, int jump ) const = 0;
53
60 virtual StatusCode previous( Context& c ) const = 0;
61
67 virtual StatusCode previous( Context& c, int jump ) const = 0;
68
72 virtual StatusCode last( Context& refContext ) const = 0;
73
79 virtual StatusCode rewind( Context& c ) const = 0;
80
87 virtual StatusCode createAddress( const Context& c, IOpaqueAddress*& iop ) const = 0;
88
93 virtual StatusCode releaseContext( Context*& ) const = 0;
94
101 virtual StatusCode resetCriteria( const std::string& cr, Context& c ) const = 0;
102 };
103
104 #endif // GAUDIKERNEL_IEVTSELECTOR_H
gaudirun.c
c
Definition: gaudirun.py:407
IEvtSelector
The Event Selector Interface.
Definition: IEvtSelector.h:18
IEvtSelector::Context
Definition: IEvtSelector.h:24
std::string
STL class.
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
IOpaqueAddress.h
StatusCode.h
IOpaqueAddress
Opaque address interface definition.
Definition: IOpaqueAddress.h:23
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:110
IInterface.h