ATLAS Offline Software
InDetLowBetaContainerCnv.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
7 
9  : InDetLowBetaContainerCnvBase(svcloc, "InDetLowBetaContainerCnv"),
10  m_TPConverter_tlp1 (new InDetLowBetaContainerCnv_tlp1)
11 { }
12 
14 {
15  delete m_TPConverter_tlp1;
16 }
17 
18 
19 // createPersistent
21  ATH_MSG_DEBUG("InDetLowBetaContainerCnv::createPersistent called");
22 
23  InDetLowBetaContainer_PERS *p_InDetLowBetaCont = m_TPConverter_tlp1->createPersistent(transObj, msg());
24 
25  return p_InDetLowBetaCont;
26 
27 }
28 
29 // createTransient
31  ATH_MSG_DEBUG("InDetLowBetaContainerCnv::createTransient called");
32 
33  static const pool::Guid tlp1_guid("2EBE2034-8157-477B-B327-D37BE8A0317D");
34 
35  InDet::InDetLowBetaContainer *p_collection = nullptr;
36  if (compareClassGuid(tlp1_guid)) {
37  poolReadObject<InDetLowBetaContainer_PERS>(*m_TPConverter_tlp1);
38  p_collection = m_TPConverter_tlp1->createTransient(msg());
39  } else
40  throw std::runtime_error("Unsupported persistent version of InDetLowBetaContainer");
41 
42  return p_collection;
43 }
44 
45 
48 {
49  return m_TPConverter_tlp1;
50 }
InDetLowBetaContainerCnv::getTopLevelTPCnv
virtual AthenaPoolTopLevelTPCnvBase * getTopLevelTPCnv()
Definition: InDetLowBetaContainerCnv.cxx:47
InDetLowBetaContainerCnv::createPersistent
virtual InDetLowBetaContainer_PERS * createPersistent(InDet::InDetLowBetaContainer *transObj)
Definition: InDetLowBetaContainerCnv.cxx:20
CSV_InDetExporter.new
new
Definition: CSV_InDetExporter.py:145
InDetLowBetaContainerCnv::m_TPConverter_tlp1
InDetLowBetaContainerCnv_tlp1 * m_TPConverter_tlp1
Definition: InDetLowBetaContainerCnv.h:45
InDetLowBetaContainerCnv::InDetLowBetaContainerCnv
InDetLowBetaContainerCnv(ISvcLocator *svcloc)
Definition: InDetLowBetaContainerCnv.cxx:8
InDetLowBetaContainer_tlp1
Definition: InDetLowBetaContainer_tlp1.h:13
pool::Guid
::Guid Guid
Definition: T_AthenaPoolCustCnv.h:19
InDet::InDetLowBetaContainer
Definition: InDetLowBetaContainer.h:23
TopLevelTPConverter::createTransient
TRANS * createTransient(MsgStream &log)
Create transient representation of the persistent object known to this converter.
Definition: TopLevelTPConverter.h:62
T_AthenaPoolCustomCnv
Compatibility for old converter classes that don't get passed the key.
Definition: T_AthenaPoolCustomCnv.h:132
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
InDetLowBetaContainerCnv_tlp1.h
InDetLowBetaContainerCnv_tlp1
Definition: InDetLowBetaContainerCnv_tlp1.h:15
AthMessaging::msg
MsgStream & msg() const
The standard message stream.
Definition: AthMessaging.h:164
InDetLowBetaContainerCnv::~InDetLowBetaContainerCnv
~InDetLowBetaContainerCnv()
Definition: InDetLowBetaContainerCnv.cxx:13
InDetLowBetaContainerCnv.h
TopLevelTPCnvBase
Base class for top-level TP converters.
Definition: TopLevelTPCnvBase.h:32
InDetLowBetaContainerCnv::createTransient
virtual InDet::InDetLowBetaContainer * createTransient()
Definition: InDetLowBetaContainerCnv.cxx:30
TopLevelTPConverter::createPersistent
virtual TL_PERS * createPersistent(const TRANS *transObj, MsgStream &log)
Create persistent representation of transObj.
Definition: TopLevelTPConverter.h:110
T_AthenaPoolCustCnv::compareClassGuid
virtual bool compareClassGuid(const Guid &clid) const
Compare POOL class GUID with the one of the object being read.