ATLAS Offline Software
Loading...
Searching...
No Matches
Tracking
TrkEventCnv
TrkTruthAthenaPool
src
DetailedTrackTruthCollectionCnv.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
DetailedTrackTruthCollectionCnv.h
"
6
7
#include "
TrkTruthData/DetailedTrackTruthCollection.h
"
8
#include "
TrkTruthTPCnv/DetailedTrackTruthCollection_p0.h
"
9
#include "
TrkTruthTPCnv/DetailedTrackTruthCollection_p1.h
"
10
#include "
TrkTruthTPCnv/DetailedTrackTruthCollection_p2.h
"
11
#include "
TrkTruthTPCnv/DetailedTrackTruthCollection_p3.h
"
12
#include "
TrkTruthTPCnv/DetailedTrackTruthCollection_p4.h
"
13
14
#include "GaudiKernel/StatusCode.h"
15
#include "GaudiKernel/MsgStream.h"
16
#include "GaudiKernel/ISvcLocator.h"
17
18
// Athena
19
#include "
StoreGate/StoreGateSvc.h
"
20
21
// This is release 12 guid for DetailedTrackTruthVector.
22
constexpr
pool::Guid
s_p1_guid
(
"1BA26DEE-BACE-43D6-8F19-E9490CDE8BB8"
);
23
constexpr
pool::Guid
s_p2_guid
(
"B30AE3A0-F34E-45B6-A8A1-B9CB5E669EB2"
);
24
constexpr
pool::Guid
s_p3_guid
(
"F5A1DC75-C3FB-4575-8178-905223CF1277"
);
25
constexpr
pool::Guid
s_p4_guid
(
"018E422D-E420-7894-9245-A824C0ECE535"
);
26
27
//================================================================
28
DetailedTrackTruthCollectionCnv::DetailedTrackTruthCollectionCnv
(ISvcLocator* svcLoc) :
29
DetailedTrackTruthCollectionCnvBase
(svcLoc)
30
{}
31
32
//================================================================
33
DetailedTrackTruthCollectionPERS
*
DetailedTrackTruthCollectionCnv::createPersistent
(
DetailedTrackTruthCollection
* trans) {
34
MsgStream log(msgSvc(),
"DetailedTrackTruthCollectionCnv"
);
35
log<<MSG::DEBUG<<
"Writing DetailedTrackTruthCollection_p4"
<<
endmsg
;
36
37
//orig: return new DetailedTrackTruthCollectionPERS( *reinterpret_cast<DetailedTrackTruthCollectionPERS*>(trans) );
38
39
DetailedTrackTruthCollectionPERS
* pers=
new
DetailedTrackTruthCollectionPERS
();
40
m_converter_p4
.transToPers(trans,pers,log);
41
return
pers;
42
}
43
44
//================================================================
45
DetailedTrackTruthCollection
*
DetailedTrackTruthCollectionCnv::createTransient
() {
46
MsgStream log(msgSvc(),
"DetailedTrackTruthCollectionCnv"
);
47
DetailedTrackTruthCollection
*trans(
nullptr
);
48
49
if
(
compareClassGuid
(
s_p4_guid
)) {
50
trans =
new
DetailedTrackTruthCollection
();
51
log<<MSG::DEBUG<<
"Read DetailedTrackTruthCollection_p4. GUID="
<<
m_classID
.toString()<<
endmsg
;
52
Trk::DetailedTrackTruthCollection_p4
* pers=
poolReadObject<Trk::DetailedTrackTruthCollection_p4>
();
53
m_converter_p4
.persToTrans(pers, trans, log);
54
delete
pers;
55
}
56
else
if
(
compareClassGuid
(
s_p3_guid
)) {
57
trans =
new
DetailedTrackTruthCollection
();
58
log<<MSG::DEBUG<<
"Read DetailedTrackTruthCollection_p3. GUID="
<<
m_classID
.toString()<<
endmsg
;
59
Trk::DetailedTrackTruthCollection_p3
* pers=
poolReadObject<Trk::DetailedTrackTruthCollection_p3>
();
60
m_converter_p3
.persToTrans(pers, trans, log);
61
delete
pers;
62
}
63
else
if
(
compareClassGuid
(
s_p2_guid
)) {
64
trans =
new
DetailedTrackTruthCollection
();
65
log<<MSG::DEBUG<<
"Read DetailedTrackTruthCollection_p2. GUID="
<<
m_classID
.toString()<<
endmsg
;
66
Trk::DetailedTrackTruthCollection_p2
* pers=
poolReadObject<Trk::DetailedTrackTruthCollection_p2>
();
67
m_converter_p2
.persToTrans(pers, trans, log);
68
delete
pers;
69
}
70
else
if
(
compareClassGuid
(
s_p1_guid
)) {
71
trans =
new
DetailedTrackTruthCollection
();
72
log<<MSG::DEBUG<<
"Read DetailedTrackTruthCollection_p1. GUID="
<<
m_classID
.toString()<<
endmsg
;
73
Trk::DetailedTrackTruthCollection_p1
* pers=
poolReadObject<Trk::DetailedTrackTruthCollection_p1>
();
74
m_converter_p1
.persToTrans(pers, trans, log);
75
delete
pers;
76
}
77
else
{
78
std::string info(
"Unsupported persistent version of DetailedTrackTruthCollection. GUID="
+
m_classID
.toString());
79
log<<MSG::FATAL<<info<<
endmsg
;
80
throw
std::runtime_error(info);
81
}
82
83
return
trans;
84
}
85
86
//================================================================
endmsg
#define endmsg
Definition
AnalysisConfig_Ntuple.cxx:63
s_p1_guid
constexpr pool::Guid s_p1_guid("1BA26DEE-BACE-43D6-8F19-E9490CDE8BB8")
s_p2_guid
constexpr pool::Guid s_p2_guid("B30AE3A0-F34E-45B6-A8A1-B9CB5E669EB2")
s_p3_guid
constexpr pool::Guid s_p3_guid("F5A1DC75-C3FB-4575-8178-905223CF1277")
s_p4_guid
constexpr pool::Guid s_p4_guid("018E422D-E420-7894-9245-A824C0ECE535")
DetailedTrackTruthCollectionCnv.h
DetailedTrackTruthCollectionCnvBase
T_AthenaPoolCustomCnv< DetailedTrackTruthCollection, DetailedTrackTruthCollectionPERS > DetailedTrackTruthCollectionCnvBase
Definition
DetailedTrackTruthCollectionCnv.h:22
DetailedTrackTruthCollectionPERS
Trk::DetailedTrackTruthCollection_p4 DetailedTrackTruthCollectionPERS
Definition
DetailedTrackTruthCollectionCnv.h:20
DetailedTrackTruthCollection.h
DetailedTrackTruthCollection_p0.h
DetailedTrackTruthCollection_p1.h
DetailedTrackTruthCollection_p2.h
DetailedTrackTruthCollection_p3.h
DetailedTrackTruthCollection_p4.h
StoreGateSvc.h
s_p3_guid
constexpr pool::Guid s_p3_guid("018F1ACE-8405-7174-9305-46B503B5EF52")
s_p1_guid
constexpr pool::Guid s_p1_guid("D62AFEEE-EF2C-437A-B7BE-CA926D38CCFA")
s_p2_guid
constexpr pool::Guid s_p2_guid("D62AFEEE-EF2C-437A-B7BE-CA926D38CCFB")
DetailedTrackTruthCollection
DetailedTrackTruthCollection
Definition
TrkTruthTPCnv.cxx:22
DetailedTrackTruthCollectionCnv::m_converter_p1
DetailedTrackTruthCollectionCnv_p1 m_converter_p1
Definition
DetailedTrackTruthCollectionCnv.h:34
DetailedTrackTruthCollectionCnv::m_converter_p2
DetailedTrackTruthCollectionCnv_p2 m_converter_p2
Definition
DetailedTrackTruthCollectionCnv.h:35
DetailedTrackTruthCollectionCnv::createTransient
virtual DetailedTrackTruthCollection * createTransient()
Definition
DetailedTrackTruthCollectionCnv.cxx:45
DetailedTrackTruthCollectionCnv::DetailedTrackTruthCollectionCnv
DetailedTrackTruthCollectionCnv(ISvcLocator *svcloc)
Definition
DetailedTrackTruthCollectionCnv.cxx:28
DetailedTrackTruthCollectionCnv::m_converter_p3
DetailedTrackTruthCollectionCnv_p3 m_converter_p3
Definition
DetailedTrackTruthCollectionCnv.h:36
DetailedTrackTruthCollectionCnv::createPersistent
virtual DetailedTrackTruthCollectionPERS * createPersistent(DetailedTrackTruthCollection *)
Definition
DetailedTrackTruthCollectionCnv.cxx:33
DetailedTrackTruthCollectionCnv::m_converter_p4
DetailedTrackTruthCollectionCnv_p4 m_converter_p4
Definition
DetailedTrackTruthCollectionCnv.h:37
DetailedTrackTruthCollection
Definition
DetailedTrackTruthCollection.h:20
T_AthenaPoolCustomCnv< DetailedTrackTruthCollection, DetailedTrackTruthCollectionPERS >::m_classID
Guid m_classID
Definition
T_AthenaPoolCustCnv.h:96
T_AthenaPoolCustomCnv< DetailedTrackTruthCollection, DetailedTrackTruthCollectionPERS >::compareClassGuid
virtual bool compareClassGuid(const Guid &clid) const
T_AthenaPoolCustomCnv< DetailedTrackTruthCollection, DetailedTrackTruthCollectionPERS >::poolReadObject
P * poolReadObject()
Trk::DetailedTrackTruthCollection_p1
Definition
DetailedTrackTruthCollection_p1.h:24
Trk::DetailedTrackTruthCollection_p2
Definition
DetailedTrackTruthCollection_p2.h:24
Trk::DetailedTrackTruthCollection_p3
Definition
DetailedTrackTruthCollection_p3.h:24
Trk::DetailedTrackTruthCollection_p4
Definition
DetailedTrackTruthCollection_p4.h:24
pool::Guid
::Guid Guid
Definition
T_AthenaPoolCustCnv.h:19
Generated on
for ATLAS Offline Software by
1.14.0