ATLAS Offline Software
StorableConversions.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
12 
13 
14 namespace SG {
15 
16 
28 void* fromStorable(DataObject* pDObj, CLID clid,
29  IRegisterTransient*irt/*= 0*/,
30  bool isConst /*= true*/)
31 {
32  // Try to use BaseInfo information to convert pointers.
33  DataBucketBase* b = dynamic_cast<DataBucketBase*>(pDObj);
34  if (b)
35  return b->cast (clid, irt, isConst);
36  return 0;
37 }
38 
39 
51 void* Storable_cast(DataObject* pDObj, CLID clid,
52  IRegisterTransient* irt /*= 0*/,
53  bool isConst /*= true*/)
54 {
55  return fromStorable (pDObj, clid, irt, isConst);
56 }
57 
58 
59 } // namespace SG
SG::IRegisterTransient
Interface for registering a transient object in t2p map.
Definition: IRegisterTransient.h:28
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
DataBucketBase
A non-templated base class for DataBucket, allows to access the transient object address as a void*.
Definition: DataBucketBase.h:24
SG::fromStorable
bool fromStorable(DataObject *pDObj, T *&pTrans, bool quiet=false, IRegisterTransient *irt=0, bool isConst=true)
Definition: StorableConversions.h:180
StorableConversions.h
convert to and from a SG storable
CLID
uint32_t CLID
The Class ID type.
Definition: Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
plotBeamSpotMon.b
b
Definition: plotBeamSpotMon.py:77
SG::Storable_cast
T * Storable_cast(DataObject *pDObj, bool quiet=true, IRegisterTransient *irt=0, bool isConst=true)
Definition: StorableConversions.h:47