RootNTupleCnv.h
Go to the documentation of this file.
1 //====================================================================
2 // NTuple converter class definition
3 //--------------------------------------------------------------------
4 //
5 // Author : M.Frank
6 //
7 //====================================================================
8 #ifndef GAUDIROOTCNV_ROOTNTUPLECNV_H
9 #define GAUDIROOTCNV_ROOTNTUPLECNV_H 1
10 
11 // Include files
12 #include "RootCnv/RootStatCnv.h"
13 
14 // Forward declarations
15 class INTuple;
16 class TBranch;
17 
18 /*
19  * Gaudi namespace declaration
20  */
21 namespace Gaudi {
22 
35  protected:
36 
38  StatusCode i__updateObjRoot(RootAddress* rpA, INTuple* tupl, TTree* tree, RootDataConnection* con);
39 
40 #ifdef __POOL_COMPATIBILITY
41  StatusCode i__updateObjPool(RootAddress* rpA, INTuple* tupl, TTree* tree, RootDataConnection* con);
43 #endif
44 
45  public:
47 
54  RootNTupleCnv(long typ, const CLID& clid, ISvcLocator* svc, RootCnvSvc* mgr)
55  : RootStatCnv(typ, clid, svc, mgr) {}
56 
58  ~RootNTupleCnv() override = default;
59 
69  StatusCode createRep( DataObject* pObj,IOpaqueAddress*& refpAdd) override;
70 
72 
78  StatusCode fillRepRefs( IOpaqueAddress* pAdd,DataObject* pObj) override;
79 
88  StatusCode createObj( IOpaqueAddress* pAddress,
89  DataObject*& refpObject) override;
90 
100  DataObject* /* pObject */) override
101  { return StatusCode::SUCCESS; }
102 
110  StatusCode updateObj( IOpaqueAddress* pAddress,
111  DataObject* pObject) override;
112 
122  DataObject* /* pObject */ ) override
123  { return StatusCode::SUCCESS; }
124 
134  DataObject* /* pObject */) override
135  { return StatusCode::SUCCESS; }
136 
146  DataObject* /* pObject */ ) override
147  { return StatusCode::SUCCESS; }
148  };
149 }
150 
151 #endif // GAUDIROOTCNV_ROOTNTUPLECNV_H
Description:
Definition: RootAddress.h:36
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
Definition: ISvcLocator.h:25
Description:
Definition: RootCnvSvc.h:53
StatusCode updateRepRefs(IOpaqueAddress *, DataObject *) override
Converter overrides: Update the converted representation of a transient object.
NTuple interface class definition.
Definition: INTuple.h:79
StatusCode updateRep(IOpaqueAddress *, DataObject *) override
Converter overrides: Update the converted representation of a transient object.
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
unsigned int CLID
Class ID definition.
Definition: ClassID.h:8
NTuple converter class definition for NTuples writted/read using ROOT.
Definition: RootNTupleCnv.h:34
RootNTupleCnv(long typ, const CLID &clid, ISvcLocator *svc, RootCnvSvc *mgr)
Standard constructor.
Definition: RootNTupleCnv.h:54
StatusCode fillObjRefs(IOpaqueAddress *, DataObject *) override
Converter overrides: Update the references of an updated transient object.
Definition: RootNTupleCnv.h:99
Opaque address interface definition.
Description: Base class converter for N-tuples and related classes.
Definition: RootStatCnv.h:30
#define GAUDI_API
Definition: Kernel.h:107
A DataObject is the base class of any identifiable object on any data store.
Definition: DataObject.h:30
Concrete implementation of the IDataConnection interface to access ROOT files.
Helper functions to set/get the application return code.
Definition: __init__.py:1
StatusCode updateObjRefs(IOpaqueAddress *, DataObject *) override
Converter overrides: Update the references of an updated transient object.