Loading [MathJax]/extensions/tex2jax.js
The Gaudi Framework  master (d98a2936)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
RootConverter.h
Go to the documentation of this file.
1 /***********************************************************************************\
2 * (c) Copyright 1998-2025 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 #pragma once
17 
18 // Framework include files
19 #include <GaudiKernel/Converter.h>
20 #include <RootCnv/RootCnvSvc.h>
21 
22 /*
23  * Gaudi namespace declaration
24  */
25 namespace Gaudi {
26 
42  protected:
45 
46  public:
54  RootConverter( long typ, const CLID& clid, ISvcLocator* svc, RootCnvSvc* mgr )
55  : Converter( typ, clid, svc ), m_dbMgr( mgr ) {}
56 
58  long repSvcType() const override { return i_repSvcType(); }
59 
67  StatusCode createObj( IOpaqueAddress* pAddr, DataObject*& refpObj ) override {
68  return m_dbMgr->i__createObj( pAddr, refpObj );
69  }
70 
78  StatusCode fillObjRefs( IOpaqueAddress* pAddr, DataObject* pObj ) override {
79  return m_dbMgr->i__fillObjRefs( pAddr, pObj );
80  }
81 
90  StatusCode createRep( DataObject* pObj, IOpaqueAddress*& refpAddr ) override {
91  return m_dbMgr->i__createRep( pObj, refpAddr );
92  }
93 
101  StatusCode fillRepRefs( IOpaqueAddress* pAddr, DataObject* pObj ) override {
102  return m_dbMgr->i__fillRepRefs( pAddr, pObj );
103  }
104  };
105 } // namespace Gaudi
Gaudi::RootConverter::fillObjRefs
StatusCode fillObjRefs(IOpaqueAddress *pAddr, DataObject *pObj) override
Resolve the references of the created transient object.
Definition: RootConverter.h:78
Gaudi::RootConverter::fillRepRefs
StatusCode fillRepRefs(IOpaqueAddress *pAddr, DataObject *pObj) override
Resolve the references of the created transient object.
Definition: RootConverter.h:101
Gaudi::RootConverter::m_dbMgr
RootCnvSvc * m_dbMgr
Conversion service needed for proper operation to forward requests.
Definition: RootConverter.h:44
Gaudi::RootCnvSvc
Definition: RootCnvSvc.h:61
IOpaqueAddress
Definition: IOpaqueAddress.h:28
ISvcLocator
Definition: ISvcLocator.h:42
Gaudi::RootConverter
Definition: RootConverter.h:41
Converter.h
StatusCode
Definition: StatusCode.h:64
Converter
Definition: Converter.h:33
RootCnvSvc.h
Gaudi::RootConverter::repSvcType
long repSvcType() const override
Retrieve the class type of the data store the converter uses.
Definition: RootConverter.h:58
CLID
unsigned int CLID
Class ID definition.
Definition: ClassID.h:16
Gaudi::RootConverter::RootConverter
RootConverter(long typ, const CLID &clid, ISvcLocator *svc, RootCnvSvc *mgr)
Initializing Constructor.
Definition: RootConverter.h:54
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:37
Gaudi::RootConverter::createRep
StatusCode createRep(DataObject *pObj, IOpaqueAddress *&refpAddr) override
Converter overrides: Convert the transient object to the requested representation.
Definition: RootConverter.h:90
Gaudi::RootConverter::createObj
StatusCode createObj(IOpaqueAddress *pAddr, DataObject *&refpObj) override
Converter overrides: Create transient object from persistent data.
Definition: RootConverter.h:67
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:49