ATLAS Offline Software
PRD_MultiTruthCollectionCnv.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
15 
16 const pool::Guid PRD_MultiTruthCollectionCnv::s_p0_guid("30794FF9-F003-44A6-8553-ED61E2039882");
17 const pool::Guid PRD_MultiTruthCollectionCnv::s_p1_guid("6649A9D1-719F-4954-A385-D01BCA8E41EF");
18 const pool::Guid PRD_MultiTruthCollectionCnv::s_p2_guid("714F2E4A-419D-4BDB-8080-BEEB6CDBA0DA");
19 const pool::Guid PRD_MultiTruthCollectionCnv::s_p3_guid("68703476-9D09-4504-B492-E5E4DC933E71");
20 const pool::Guid PRD_MultiTruthCollectionCnv::s_p4_guid("018E41E8-F175-7EB8-AF1D-5CA0794CAF9B");
21 
22 //================================================================
25 {}
26 
27 //================================================================
29  MsgStream log(msgSvc(), "PRD_MultiTruthCollectionCnv");
30  log<<MSG::DEBUG<<"Writing PRD_MultiTruthCollection_p3"<<endmsg;
32  m_converter_p3.transToPers(trans,pers,log);
33  return pers;
34 }
35 
36 //================================================================
38  MsgStream log(msgSvc(), "PRD_MultiTruthCollectionCnv" );
39  std::unique_ptr<PRD_MultiTruthCollection> trans(new PRD_MultiTruthCollection());
40 
42  log<<MSG::DEBUG<<"Read PRD_MultiTruthCollection_p4. GUID="<<m_classID.toString()<<endmsg;
43  Trk::PRD_MultiTruthCollection_p4* pers=poolReadObject<Trk::PRD_MultiTruthCollection_p4>();
44  m_converter_p4.persToTrans(pers, trans.get(), log);
45  delete pers;
46  }
47  else if (compareClassGuid(s_p3_guid)) {
48  log<<MSG::DEBUG<<"Read PRD_MultiTruthCollection_p3. GUID="<<m_classID.toString()<<endmsg;
49  Trk::PRD_MultiTruthCollection_p3* pers=poolReadObject<Trk::PRD_MultiTruthCollection_p3>();
50  m_converter_p3.persToTrans(pers, trans.get(), log);
51  delete pers;
52  }
53  else if (compareClassGuid(s_p2_guid)) {
54  log<<MSG::DEBUG<<"Read PRD_MultiTruthCollection_p2. GUID="<<m_classID.toString()<<endmsg;
55  Trk::PRD_MultiTruthCollection_p2* pers=poolReadObject<Trk::PRD_MultiTruthCollection_p2>();
56  m_converter_p2.persToTrans(pers, trans.get(), log);
57  delete pers;
58  }
59  else if (compareClassGuid(s_p1_guid)) {
60  log<<MSG::DEBUG<<"Read PRD_MultiTruthCollection_p1. GUID="<<m_classID.toString()<<endmsg;
61  Trk::PRD_MultiTruthCollection_p1* pers=poolReadObject<Trk::PRD_MultiTruthCollection_p1>();
62  m_converter_p1.persToTrans(pers, trans.get(), log);
63  delete pers;
64  }
65  else if (compareClassGuid(s_p0_guid)) {
66  log<<MSG::DEBUG<<"Read version p0 of PRD_MultiTruthCollection. GUID="<<m_classID.toString()<<endmsg;
67  trans.reset(poolReadObject<PRD_MultiTruthCollection>());
68  }
69  else {
70  log<<MSG::ERROR<<"Unsupported persistent version of PRD_MultiTruthCollection. GUID="
72  throw std::runtime_error("Unsupported persistent version of Data Collection");
73  }
74 
75  return trans.release();
76 }
77 
78 //================================================================
T_AthenaPoolCustCnv::m_classID
Guid m_classID
Definition: T_AthenaPoolCustCnv.h:96
PRD_MultiTruthCollectionCnv_p3.h
PRD_MultiTruthCollectionCnv::s_p0_guid
static const pool::Guid s_p0_guid
Definition: PRD_MultiTruthCollectionCnv.h:37
Trk::PRD_MultiTruthCollection_p2
Definition: PRD_MultiTruthCollection_p2.h:18
PRD_MultiTruthCollection
A PRD is mapped onto all contributing particles.
Definition: PRD_MultiTruthCollection.h:24
PRD_MultiTruthCollectionCnv_p1::persToTrans
virtual void persToTrans(const Trk::PRD_MultiTruthCollection_p1 *persObj, PRD_MultiTruthCollection *transObj, MsgStream &msg)
Definition: PRD_MultiTruthCollectionCnv_p1.cxx:22
PRD_MultiTruthCollectionCnv_p3::transToPers
virtual void transToPers(const PRD_MultiTruthCollection *transObj, Trk::PRD_MultiTruthCollection_p3 *persObj, MsgStream &msg)
Method creating the persistent representation PRD_MultiTruthCollection_p3 from its transient represen...
Definition: PRD_MultiTruthCollectionCnv_p3.cxx:36
PRD_MultiTruthCollectionCnv_p4::persToTrans
virtual void persToTrans(const Trk::PRD_MultiTruthCollection_p4 *persObj, PRD_MultiTruthCollection *transObj, MsgStream &msg)
Method creating the transient representation of Analysis::PRD_MultiTruthCollection from its persisten...
Definition: PRD_MultiTruthCollectionCnv_p4.cxx:21
Guid::toString
const std::string toString() const
Automatic conversion to string representation.
Definition: Guid.cxx:58
PRD_MultiTruthCollectionCnv::createPersistent
virtual PRD_MultiTruthCollectionPERS * createPersistent(PRD_MultiTruthCollection *)
Definition: PRD_MultiTruthCollectionCnv.cxx:28
PRD_MultiTruthCollectionCnv_p3::persToTrans
virtual void persToTrans(const Trk::PRD_MultiTruthCollection_p3 *persObj, PRD_MultiTruthCollection *transObj, MsgStream &msg)
Method creating the transient representation of Analysis::PRD_MultiTruthCollection from its persisten...
Definition: PRD_MultiTruthCollectionCnv_p3.cxx:21
PRD_MultiTruthCollection_p1.h
PRD_MultiTruthCollectionCnv::s_p4_guid
static const pool::Guid s_p4_guid
Definition: PRD_MultiTruthCollectionCnv.h:41
PRD_MultiTruthCollection_p4.h
PRD_MultiTruthCollectionCnv::PRD_MultiTruthCollectionCnv
PRD_MultiTruthCollectionCnv(ISvcLocator *)
Definition: PRD_MultiTruthCollectionCnv.cxx:23
pool::Guid
::Guid Guid
Definition: T_AthenaPoolCustCnv.h:19
PRD_MultiTruthCollection_p3.h
StdJOSetup.msgSvc
msgSvc
Provide convenience handles for various services.
Definition: StdJOSetup.py:36
T_AthenaPoolCustomCnv
Compatibility for old converter classes that don't get passed the key.
Definition: T_AthenaPoolCustomCnv.h:132
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
PRD_MultiTruthCollectionCnv::createTransient
virtual PRD_MultiTruthCollection * createTransient()
Definition: PRD_MultiTruthCollectionCnv.cxx:37
Trk::PRD_MultiTruthCollection_p3
Definition: PRD_MultiTruthCollection_p3.h:19
PRD_MultiTruthCollectionCnv::s_p1_guid
static const pool::Guid s_p1_guid
Definition: PRD_MultiTruthCollectionCnv.h:38
PRD_MultiTruthCollectionCnv::m_converter_p2
PRD_MultiTruthCollectionCnv_p2 m_converter_p2
Definition: PRD_MultiTruthCollectionCnv.h:34
PRD_MultiTruthCollectionCnv::m_converter_p1
PRD_MultiTruthCollectionCnv_p1 m_converter_p1
Definition: PRD_MultiTruthCollectionCnv.h:33
PRD_MultiTruthCollectionCnv::m_converter_p4
PRD_MultiTruthCollectionCnv_p4 m_converter_p4
Definition: PRD_MultiTruthCollectionCnv.h:36
PRD_MultiTruthCollectionCnv::m_converter_p3
PRD_MultiTruthCollectionCnv_p3 m_converter_p3
Definition: PRD_MultiTruthCollectionCnv.h:35
PRD_MultiTruthCollectionCnv.h
Trk::PRD_MultiTruthCollection_p4
Definition: PRD_MultiTruthCollection_p4.h:19
PRD_MultiTruthCollectionCnv_p2.h
PRD_MultiTruthCollectionCnv_p2::persToTrans
virtual void persToTrans(const Trk::PRD_MultiTruthCollection_p2 *persObj, PRD_MultiTruthCollection *transObj, MsgStream &msg)
Method creating the transient representation of Analysis::PRD_MultiTruthCollection from its persisten...
Definition: PRD_MultiTruthCollectionCnv_p2.cxx:20
PRD_MultiTruthCollectionCnv_p4.h
PRD_MultiTruthCollectionCnv_p1.h
DEBUG
#define DEBUG
Definition: page_access.h:11
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
PRD_MultiTruthCollection.h
T_AthenaPoolCustCnv::compareClassGuid
virtual bool compareClassGuid(const Guid &clid) const
Compare POOL class GUID with the one of the object being read.
PRD_MultiTruthCollectionCnv::s_p3_guid
static const pool::Guid s_p3_guid
Definition: PRD_MultiTruthCollectionCnv.h:40
Trk::PRD_MultiTruthCollection_p1
Definition: PRD_MultiTruthCollection_p1.h:22
PRD_MultiTruthCollectionCnv::s_p2_guid
static const pool::Guid s_p2_guid
Definition: PRD_MultiTruthCollectionCnv.h:39
PRD_MultiTruthCollectionPERS
Trk::PRD_MultiTruthCollection_p3 PRD_MultiTruthCollectionPERS
Definition: PRD_MultiTruthCollectionCnv.h:18
PRD_MultiTruthCollection_p2.h