Loading [MathJax]/extensions/tex2jax.js
The Gaudi Framework  v31r0 (aeb156f0)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
RootEvtSelector.h
Go to the documentation of this file.
1 //====================================================================
2 // RootTreeEvtSelector.h
3 //--------------------------------------------------------------------
4 //
5 // Package : RootCnv
6 //
7 // Description: The RootEvtSelector component is able
8 // to produce a list of event references given a set of "selection
9 // criteria".
10 //
11 // Author : M.Frank
12 // Created : 4/01/99
13 //
14 //====================================================================
15 
16 #ifndef GAUDIROOTCNV_ROOTEVTSELECTOR_H
17 #define GAUDIROOTCNV_ROOTEVTSELECTOR_H 1
18 
19 // Framework include files
21 #include "GaudiKernel/Service.h"
22 
23 /*
24  * Gaudi namespace declaration
25  */
26 namespace Gaudi {
27 
28  // Forward declarations
29  class RootCnvSvc;
30 
39  class GAUDI_API RootEvtSelector : public extends<Service, IEvtSelector> {
40 
42  StatusCode error( const std::string& msg ) const;
43 
44  public:
46  using extends::extends;
47 
49  StatusCode initialize() override;
50 
52  StatusCode finalize() override;
53 
55 
59  StatusCode createContext( Context*& refpCtxt ) const override;
60 
64  StatusCode last( Context& refContext ) const override;
65 
67 
71  StatusCode next( Context& refCtxt ) const override;
72 
74 
78  StatusCode next( Context& refCtxt, int jump ) const override;
79 
81 
86  StatusCode previous( Context& refCtxt ) const override;
87 
89 
94  StatusCode previous( Context& refCtxt, int jump ) const override;
95 
97 
101  StatusCode rewind( Context& refCtxt ) const override;
102 
104 
108  StatusCode createAddress( const Context& refCtxt, IOpaqueAddress*& ) const override;
109 
111 
115  StatusCode releaseContext( Context*& refCtxt ) const override;
116 
123  StatusCode resetCriteria( const std::string& cr, Context& c ) const override;
124 
125  protected:
126  // Data Members
128  mutable RootCnvSvc* m_dbMgr;
130  CLID m_rootCLID = CLID_NULL;
131 
132  Gaudi::Property<std::string> m_persName{this, "EvtPersistencySvc", "EventPersistencySvc",
133  "Name of the persistency service to search for conversion service"};
134  Gaudi::Property<std::string> m_dummy{this, "DbType", "", "dummy property to fake backwards compatibility"};
135 
137  std::string m_cnvSvcName = "Gaudi::RootCnvSvc/RootCnvSvc";
142  };
143 } // namespace Gaudi
144 #endif // GAUDIROOTCNV_ROOTEVTSELECTOR_H
Implementation of property with value of concrete type.
Definition: Property.h:352
Description:
Definition: RootCnvSvc.h:52
RootCnvSvc * m_dbMgr
Reference to the corresponding conversion service.
STL class.
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:50
unsigned int CLID
Class ID definition.
Definition: ClassID.h:8
Concrete event selector implementation to access ROOT files.
Base class used to extend a class implementing other interfaces.
Definition: extends.h:10
std::string m_criteria
Property: File criteria to define item iteration.
Opaque address interface definition.
#define GAUDI_API
Definition: Kernel.h:71
Helper functions to set/get the application return code.
Definition: __init__.py:1
std::string m_rootName
Property: Name of the ROOT entry name.