ATLAS Offline Software
Database
AthenaRoot
AthenaRootKernel
AthenaRootKernel
IAthenaRootCnvSvc.h
Go to the documentation of this file.
1
3
/*
4
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
5
*/
6
7
#ifndef ATHENAROOTKERNEL_IATHENAROOTCNVSVC_H
8
#define ATHENAROOTKERNEL_IATHENAROOTCNVSVC_H 1
9
15
// fwk includes
16
#include "GaudiKernel/IConversionSvc.h"
17
#include "GaudiKernel/IAddressCreator.h"
18
#include "
DataModelRoot/RootType.h
"
19
20
// stl includes
21
#include <typeinfo>
22
23
// fwd declares
24
class
Token
;
25
class
ITPCnvBase
;
26
30
class
IAthenaRootCnvSvc
:
virtual
public
extend_interfaces<IConversionSvc, IAddressCreator> {
31
public
:
32
virtual
~IAthenaRootCnvSvc
();
33
35
DeclareInterfaceID
(
IAthenaRootCnvSvc
, 1, 0);
36
39
virtual
RootType
getType
(
const
CLID
& clid)
const
= 0;
40
virtual
RootType
getType
(
const
std::type_info&
type
)
const
= 0;
41
43
virtual
const
Token
*
writeObject
(
const
std::string&
key
,
44
const
RootType
& typeDesc,
45
const
void
* pObj,
46
ITPCnvBase
* tpConverter = 0) = 0;
48
50
virtual
ITPCnvBase
*
getTPConverter
(
const
CLID
& clid)
const
= 0;
51
};
52
53
#endif
/* !ATHENAROOTKERNEL_IATHENAROOTCNVSVC_H */
IAthenaRootCnvSvc::DeclareInterfaceID
DeclareInterfaceID(IAthenaRootCnvSvc, 1, 0)
Declare interface ID.
IAthenaRootCnvSvc
This class provides the interface between Athena and RootSvc.
Definition:
IAthenaRootCnvSvc.h:30
IAthenaRootCnvSvc::getType
virtual RootType getType(const std::type_info &type) const =0
IAthenaRootCnvSvc::writeObject
virtual const Token * writeObject(const std::string &key, const RootType &typeDesc, const void *pObj, ITPCnvBase *tpConverter=0)=0
Write object of a given class to Root, using optional T/P converter.
Token
This class provides a token that identifies in a unique way objects on the persistent storage.
Definition:
Token.h:21
IAthenaRootCnvSvc::getTPConverter
virtual ITPCnvBase * getTPConverter(const CLID &clid) const =0
Get T/P converter for a transient class.
CLID
uint32_t CLID
The Class ID type.
Definition:
Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
ITPCnvBase
Definition:
ITPCnvBase.h:24
IAthenaRootCnvSvc::~IAthenaRootCnvSvc
virtual ~IAthenaRootCnvSvc()
Definition:
IAthenaRootCnvSvc.cxx:17
python.CaloScaleNoiseConfig.type
type
Definition:
CaloScaleNoiseConfig.py:78
RootType.h
IAthenaRootCnvSvc::getType
virtual RootType getType(const CLID &clid) const =0
mapkey::key
key
Definition:
TElectronEfficiencyCorrectionTool.cxx:37
TScopeAdapter
Definition:
RootType.h:119
Generated on Thu Nov 7 2024 21:16:31 for ATLAS Offline Software by
1.8.18