The Gaudi Framework  master (37c0b60a)
RootConverter.h
Go to the documentation of this file.
1 /***********************************************************************************\
2 * (c) Copyright 1998-2024 CERN for the benefit of the LHCb and ATLAS collaborations *
3 * *
4 * This software is distributed under the terms of the Apache version 2 licence, *
5 * copied verbatim in the file "LICENSE". *
6 * *
7 * In applying this licence, CERN does not waive the privileges and immunities *
8 * granted to it by virtue of its status as an Intergovernmental Organization *
9 * or submit itself to any jurisdiction. *
10 \***********************************************************************************/
11 //====================================================================
12 // RootConverter class definition
13 //
14 // Author : M.Frank
15 //====================================================================
16 #ifndef GAUDIROOTCNV_ROOTCONVERTER_H
17 #define GAUDIROOTCNV_ROOTCONVERTER_H
18 
19 // Framework include files
20 #include <GaudiKernel/Converter.h>
21 #include <RootCnv/RootCnvSvc.h>
22 
23 /*
24  * Gaudi namespace declaration
25  */
26 namespace Gaudi {
27 
43  protected:
46 
47  public:
55  RootConverter( long typ, const CLID& clid, ISvcLocator* svc, RootCnvSvc* mgr )
56  : Converter( typ, clid, svc ), m_dbMgr( mgr ) {}
57 
59  long repSvcType() const override { return i_repSvcType(); }
60 
68  StatusCode createObj( IOpaqueAddress* pAddr, DataObject*& refpObj ) override {
69  return m_dbMgr->i__createObj( pAddr, refpObj );
70  }
71 
79  StatusCode fillObjRefs( IOpaqueAddress* pAddr, DataObject* pObj ) override {
80  return m_dbMgr->i__fillObjRefs( pAddr, pObj );
81  }
82 
91  StatusCode createRep( DataObject* pObj, IOpaqueAddress*& refpAddr ) override {
92  return m_dbMgr->i__createRep( pObj, refpAddr );
93  }
94 
102  StatusCode fillRepRefs( IOpaqueAddress* pAddr, DataObject* pObj ) override {
103  return m_dbMgr->i__fillRepRefs( pAddr, pObj );
104  }
105  };
106 } // namespace Gaudi
107 
108 #endif // GAUDIROOTCNV_ROOTCONVERTER_H
Gaudi::RootConverter::fillObjRefs
StatusCode fillObjRefs(IOpaqueAddress *pAddr, DataObject *pObj) override
Resolve the references of the created transient object.
Definition: RootConverter.h:79
Gaudi::RootConverter::fillRepRefs
StatusCode fillRepRefs(IOpaqueAddress *pAddr, DataObject *pObj) override
Resolve the references of the created transient object.
Definition: RootConverter.h:102
Gaudi::RootConverter::m_dbMgr
RootCnvSvc * m_dbMgr
Conversion service needed for proper operation to forward requests.
Definition: RootConverter.h:45
Gaudi::RootCnvSvc
Definition: RootCnvSvc.h:62
IOpaqueAddress
Definition: IOpaqueAddress.h:33
ISvcLocator
Definition: ISvcLocator.h:46
Gaudi::RootConverter
Definition: RootConverter.h:42
Converter.h
StatusCode
Definition: StatusCode.h:65
Converter
Definition: Converter.h:34
RootCnvSvc.h
Gaudi::RootConverter::repSvcType
long repSvcType() const override
Retrieve the class type of the data store the converter uses.
Definition: RootConverter.h:59
CLID
unsigned int CLID
Class ID definition.
Definition: ClassID.h:18
Gaudi::RootConverter::RootConverter
RootConverter(long typ, const CLID &clid, ISvcLocator *svc, RootCnvSvc *mgr)
Initializing Constructor.
Definition: RootConverter.h:55
Gaudi
This file provides a Grammar for the type Gaudi::Accumulators::Axis It allows to use that type from p...
Definition: __init__.py:1
Gaudi::RootCnvSvc::i__fillObjRefs
virtual StatusCode i__fillObjRefs(IOpaqueAddress *pAddr, DataObject *pObj)
Resolve the references of the created transient object.
Definition: RootCnvSvc.cpp:476
Gaudi::RootCnvSvc::i__createRep
virtual StatusCode i__createRep(DataObject *pObj, IOpaqueAddress *&refpAddr)
Convert the transient object to the requested persistent representation.
Definition: RootCnvSvc.cpp:386
Gaudi::RootCnvSvc::i__createObj
virtual StatusCode i__createObj(IOpaqueAddress *pAddr, DataObject *&refpObj)
Create transient object from persistent data.
Definition: RootCnvSvc.cpp:448
DataObject
Definition: DataObject.h:36
Gaudi::RootConverter::createRep
StatusCode createRep(DataObject *pObj, IOpaqueAddress *&refpAddr) override
Converter overrides: Convert the transient object to the requested representation.
Definition: RootConverter.h:91
Gaudi::RootConverter::createObj
StatusCode createObj(IOpaqueAddress *pAddr, DataObject *&refpObj) override
Converter overrides: Create transient object from persistent data.
Definition: RootConverter.h:68
Gaudi::RootCnvSvc::i__fillRepRefs
virtual StatusCode i__fillRepRefs(IOpaqueAddress *pAddr, DataObject *pObj)
Resolve the references of the converted object.
Definition: RootCnvSvc.cpp:406
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:81