The Gaudi Framework  master (181af51f)
Loading...
Searching...
No Matches
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
20#include <RootCnv/RootCnvSvc.h>
21
22/*
23 * Gaudi namespace declaration
24 */
25namespace 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
102 return m_dbMgr->i__fillRepRefs( pAddr, pObj );
103 }
104 };
105} // namespace Gaudi
unsigned int CLID
Class ID definition.
Definition ClassID.h:16
#define GAUDI_API
Definition Kernel.h:49
Converter(long storage_type, const CLID &class_type, ISvcLocator *svc=0)
Standard Constructor.
virtual long i_repSvcType() const
Retrieve the class type of the data store the converter uses.
Definition Converter.cpp:25
A DataObject is the base class of any identifiable object on any data store.
Definition DataObject.h:37
Description:
Definition RootCnvSvc.h:61
RootCnvSvc * m_dbMgr
Conversion service needed for proper operation to forward requests.
StatusCode createRep(DataObject *pObj, IOpaqueAddress *&refpAddr) override
Converter overrides: Convert the transient object to the requested representation.
RootConverter(long typ, const CLID &clid, ISvcLocator *svc, RootCnvSvc *mgr)
Initializing Constructor.
StatusCode createObj(IOpaqueAddress *pAddr, DataObject *&refpObj) override
Converter overrides: Create transient object from persistent data.
StatusCode fillRepRefs(IOpaqueAddress *pAddr, DataObject *pObj) override
Resolve the references of the created transient object.
long repSvcType() const override
Retrieve the class type of the data store the converter uses.
StatusCode fillObjRefs(IOpaqueAddress *pAddr, DataObject *pObj) override
Resolve the references of the created transient object.
Opaque address interface definition.
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
Definition ISvcLocator.h:42
This class is used for returning status codes from appropriate routines.
Definition StatusCode.h:64
This file provides a Grammar for the type Gaudi::Accumulators::Axis It allows to use that type from p...
Definition __init__.py:1