The Gaudi Framework  v29r0 (ff2e7097)
Selector.h
Go to the documentation of this file.
1 //====================================================================
2 // NTuple name space: Selector class definition
3 //--------------------------------------------------------------------
4 //
5 // Package : Gaudi/NTupleSvc ( The LHCb Offline System)
6 // Author : M.Frank
7 //
8 // +---------+----------------------------------------------+--------+
9 // | Date | Comment | Who |
10 // +---------+----------------------------------------------+--------+
11 // | 10/10/00| Initial version. | MF |
12 // +---------+----------------------------------------------+--------+
13 //====================================================================
14 #ifndef GAUDI_NTUPLESVC_SELECTOR_H
15 #define GAUDI_NTUPLESVC_SELECTOR_H 1
16 
17 // Framework include files
19 
20 // Forward declarations
21 namespace NTuple
22 {
23  class Tuple;
24 }
25 
26 namespace NTuple
27 {
28 
32  {
33  protected:
40 
41  public:
43  Selector( IInterface* svc ) : m_parent( svc ), m_firstCall( true ) {}
45  virtual ~Selector() = default;
47  bool firstCall() const { return m_firstCall; }
49  StatusCode initResult() const { return m_status; }
51  bool operator()( void* nt ) override;
53  virtual bool operator()( NTuple::Tuple* nt );
55  virtual StatusCode initialize( NTuple::Tuple* nt );
56  };
57 }
58 #endif // GAUDI_NTUPLESVC_SELECTOR_H
StatusCode initResult() const
Access initialization status.
Definition: Selector.h:49
Selector(IInterface *svc)
Standard constructor.
Definition: Selector.h:43
NTuple name space.
Definition: INTupleSvc.h:9
bool m_firstCall
Boolean to indicate need for initialization.
Definition: Selector.h:37
StatusCode m_status
StatusCode indication initialization result.
Definition: Selector.h:39
IInterface * m_parent
reference to parent interface
Definition: Selector.h:35
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:28
Definition of the basic interface.
Definition: IInterface.h:277
Abstract base class which allows the user to interact with the actual N tuple implementation.
Definition: NTuple.h:412
NTuple Selector class.
Definition: Selector.h:31
virtual Out operator()(const vector_of_const_< In > &inputs) const =0
bool firstCall() const
Check for first call.
Definition: Selector.h:47
Class of a selection statement.
#define GAUDI_API
Definition: Kernel.h:110