All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
IEvtSelector.h
Go to the documentation of this file.
1 //$Header: /tmp/svngaudi/tmp.jEpFh25751/Gaudi/GaudiKernel/GaudiKernel/IEvtSelector.h,v 1.5 2006/11/30 15:22:07 dquarrie Exp $
2 #ifndef GAUDIKERNEL_IEVTSELECTOR_H
3 #define GAUDIKERNEL_IEVTSELECTOR_H 1
4 
5 // Include files
9 #include <string>
10 
19 class GAUDI_API IEvtSelector: virtual public IInterface {
20 public:
23 
24  class Context{
25  public:
26  virtual ~Context() { }
27  virtual void* identifier() const=0;
28  };
29 
35  virtual StatusCode createContext(Context*& c) const = 0;
36 
44  virtual StatusCode next(Context& c) const = 0;
45 
51  virtual StatusCode next(Context& c,int jump) const = 0;
52 
59  virtual StatusCode previous(Context& c) const = 0;
60 
66  virtual StatusCode previous(Context& c,int jump) const = 0;
67 
71  virtual StatusCode last(Context& refContext) const = 0;
72 
78  virtual StatusCode rewind(Context& c) const = 0;
79 
86  virtual StatusCode createAddress(const Context& c,IOpaqueAddress*& iop) const = 0;
87 
92  virtual StatusCode releaseContext(Context*&)const=0;
93 
100  virtual StatusCode resetCriteria(const std::string& cr,Context& c)const=0;
101 };
102 
103 #endif //GAUDIKERNEL_IEVTSELECTOR_H
The Event Selector Interface.
Definition: IEvtSelector.h:19
tuple c
Definition: gaudirun.py:341
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:30
Definition of the basic interface.
Definition: IInterface.h:160
#define DeclareInterfaceID(name, major, minor)
Macro to declare the interface ID when using the new mechanism of extending and implementing interfac...
Definition: IInterface.h:23
Opaque address interface definition.
#define GAUDI_API
Definition: Kernel.h:108