ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkEventCnv
TrkEventTopLevelCnv
src
TrackCollectionCnv_tlp6.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
TrkEventTopLevelCnv/TrackCollectionCnv_tlp6.h
"
6
7
/*
8
Converter for TrackCollection v TLP6.
9
Direct copy of TLP5 but with MuonMeasurements and InDet::Track tlp converters
10
integrated directly
11
*/
12
13
TrackCollectionCnv_tlp6::TrackCollectionCnv_tlp6
( )
14
{
15
// Add all converters defined in this top level converter:
16
// never change the order of adding converters!
17
18
addMainTPConverter
();
19
20
addTPConverter
( &
m_tracksCnv
);
21
addTPConverter
( &
m_trackStatesCnv
);
22
23
addTPConverter
( &
m_errorMatricesCnv
);
24
25
// Measurements
26
addTPConverter
( &
m_pseudoMeasurementOnTrackCnv
);
27
addTPConverter
( &
m_crotCnv
);
28
addTPConverter
( &
m_vertexOnTrackCnv
);
29
// Other measurements are stored in the other tlp objects, i.e. the InDetTrack, and MuonMeasurements
30
31
// Parameters
32
addTPConverter
( &
m_parametersCnv
);
33
34
// Surfaces
35
addTPConverter
( &
m_coneSurfacesCnv
);
36
addTPConverter
( &
m_cylSurfacesCnv
);
37
addTPConverter
( &
m_discSurfacesCnv
);
38
addTPConverter
( &
m_perigeeSurfacesCnv
);
39
addTPConverter
( &
m_planeSurfacesCnv
);
40
addTPConverter
( &
m_lineSurfacesCnv
);
41
addTPConverter
( &
m_saggedLineSurfacesCnv
);
42
43
addTPConverter
( &
m_matEffectsBaseCnv
);
44
addTPConverter
( &
m_energyLossCnv
);
45
addTPConverter
( &
m_materialEffectsCnv
);
46
addTPConverter
( &
m_estimatedBremCnv
);
47
48
addTPConverter
( &
m_fitQualitiesCnv
);
49
addTPConverter
( &
m_localDirectionsCnv
);
50
addTPConverter
( &
m_localPositionsCnv
);
51
addTPConverter
( &
m_localParametersCnv
);
52
53
// adding extending TLP converters,
54
// they don't interfere with the order of adding regular converters (above)
55
m_muonMeasurementsCnv
.addTPConvertersTo(
this
);
56
m_inDetTrackCnv
.addTPConvertersTo(
this
);
57
m_muonCaloEnergiesCnv
.addTPConvertersTo(
this
);
58
}
59
60
61
void
TrackCollectionCnv_tlp6::setPStorage
(
PERS
*storage )
62
{
63
setMainCnvPStorage
( &storage->
m_trackCollections
);
64
65
// for all converters defined in this top level converter
66
m_tracksCnv
.
setPStorage
( &storage->
m_tracks
);
67
m_trackStatesCnv
.
setPStorage
( &storage->
m_trackStates
);
68
69
m_errorMatricesCnv
.
setPStorage
( &storage->
m_hepSymMatrices
);
70
71
m_pseudoMeasurementOnTrackCnv
.setPStorage( &storage->
m_pseudoMeasurementOnTrack
);
72
m_crotCnv
.
setPStorage
( &storage->
m_competingRotsOnTrack
);
73
m_vertexOnTrackCnv
.
setPStorage
( &storage->
m_vertexOnTrack
);
74
75
m_parametersCnv
.
setPStorage
( &storage->
m_parameters
);
76
77
m_coneSurfacesCnv
.setPStorage( &storage->
m_surfaces
);
78
m_cylSurfacesCnv
.setPStorage( &storage->
m_surfaces
);
79
m_discSurfacesCnv
.setPStorage( &storage->
m_surfaces
);
80
m_perigeeSurfacesCnv
.setPStorage( &storage->
m_surfaces
);
81
m_planeSurfacesCnv
.setPStorage( &storage->
m_surfaces
);
82
m_lineSurfacesCnv
.setPStorage( &storage->
m_surfaces
);
83
m_saggedLineSurfacesCnv
.setPStorage( &storage->
m_surfaces
);
84
85
m_matEffectsBaseCnv
.
setPStorage
( &storage->
m_matEffectsBases
);
86
m_energyLossCnv
.
setPStorage
( &storage->
m_energyLosses
);
87
m_materialEffectsCnv
.
setPStorage
( &storage->
m_materialEffects
);
88
m_estimatedBremCnv
.
setPStorage
( &storage->
m_estimatedBrems
);
89
90
m_fitQualitiesCnv
.
setPStorage
( &storage->
m_fitQualities
);
91
m_localDirectionsCnv
.
setPStorage
( &storage->
m_localDirections
);
92
m_localPositionsCnv
.
setPStorage
( &storage->
m_localPositions
);
93
m_localParametersCnv
.
setPStorage
( &storage->
m_localParameters
);
94
95
// when reading (createTrans) these will be non-null if extension is present
96
// when writing, they will be null at first end set afterwards in createPersistentWithKey()
97
if
( storage->
m_inDetTrackExt
)
m_inDetTrackCnv
.setPStorage( storage->
m_inDetTrackExt
);
98
if
( storage->
m_muonMeasurementsExt
)
m_muonMeasurementsCnv
.setPStorage( storage->
m_muonMeasurementsExt
);
99
if
( storage->
m_muonCaloEnergiesExt
)
m_muonCaloEnergiesCnv
.setPStorage( storage->
m_muonCaloEnergiesExt
);
100
}
101
102
103
BaseTrackCollectionCnv_tlp6::PERS
*
104
TrackCollectionCnv_tlp6::createPersistentWithKey
(
const
TRANS
* transObj,
105
const
std::string& key,
106
MsgStream &log)
107
{
108
PERS
*pers =
BaseTrackCollectionCnv_tlp6::createPersistentWithKey
(transObj, key, log);
109
110
// get extending objects (nullptr if there was no extending data types)
111
pers->
m_muonMeasurementsExt
=
m_muonMeasurementsCnv
.releaseTLPersObject();
112
pers->
m_inDetTrackExt
=
m_inDetTrackCnv
.releaseTLPersObject();
113
pers->
m_muonCaloEnergiesExt
=
m_muonCaloEnergiesCnv
.releaseTLPersObject();
114
115
return
pers;
116
}
TrackCollectionCnv_tlp6.h
TopLevelTPConverter< TrackCollectionCnv_p4, Trk::TrackCollection_tlp6 >::addTPConverter
virtual void addTPConverter(ITPConverter *cnv)
Definition
TopLevelTPCnvBase.cxx:11
TopLevelTPConverter< TrackCollectionCnv_p4, Trk::TrackCollection_tlp6 >::PERS
Trk::TrackCollection_tlp6 PERS
Definition
TopLevelTPConverter.h:38
TopLevelTPConverter< TrackCollectionCnv_p4, Trk::TrackCollection_tlp6 >::setMainCnvPStorage
void setMainCnvPStorage(STORAGE *storage)
Definition
TopLevelTPConverter.h:152
TopLevelTPConverter< TrackCollectionCnv_p4, Trk::TrackCollection_tlp6 >::TRANS
TrackCollectionCnv_p4::Trans_t TRANS
Definition
TopLevelTPConverter.h:37
TopLevelTPConverter< TrackCollectionCnv_p4, Trk::TrackCollection_tlp6 >::addMainTPConverter
void addMainTPConverter()
Definition
TopLevelTPConverter.h:146
TopLevelTPConverter< TrackCollectionCnv_p4, Trk::TrackCollection_tlp6 >::createPersistentWithKey
virtual Trk::TrackCollection_tlp6 * createPersistentWithKey(const TRANS *transObj, const std::string &key, MsgStream &log)
Definition
TopLevelTPConverter.h:129
TrackCollectionCnv_tlp6::m_discSurfacesCnv
DiscSurfaceCnv_p2 m_discSurfacesCnv
Definition
TrackCollectionCnv_tlp6.h:68
TrackCollectionCnv_tlp6::TrackCollectionCnv_tlp6
TrackCollectionCnv_tlp6()
Definition
TrackCollectionCnv_tlp6.cxx:13
TrackCollectionCnv_tlp6::m_muonMeasurementsCnv
MuonMeasurementsCnv_tlp2 m_muonMeasurementsCnv
Definition
TrackCollectionCnv_tlp6.h:85
TrackCollectionCnv_tlp6::createPersistentWithKey
virtual PERS * createPersistentWithKey(const TRANS *transObj, const std::string &key, MsgStream &log) override
Definition
TrackCollectionCnv_tlp6.cxx:104
TrackCollectionCnv_tlp6::m_crotCnv
CompetingRIOsOnTrackCnv_p1 m_crotCnv
Definition
TrackCollectionCnv_tlp6.h:62
TrackCollectionCnv_tlp6::m_perigeeSurfacesCnv
PerigeeSurfaceCnv_p2 m_perigeeSurfacesCnv
Definition
TrackCollectionCnv_tlp6.h:69
TrackCollectionCnv_tlp6::m_trackStatesCnv
TrackStateOnSurfaceCnv_p3 m_trackStatesCnv
Definition
TrackCollectionCnv_tlp6.h:56
TrackCollectionCnv_tlp6::m_inDetTrackCnv
InDetTrackCnv_tlp2 m_inDetTrackCnv
Definition
TrackCollectionCnv_tlp6.h:86
TrackCollectionCnv_tlp6::m_coneSurfacesCnv
ConeSurfaceCnv_p2 m_coneSurfacesCnv
Definition
TrackCollectionCnv_tlp6.h:66
TrackCollectionCnv_tlp6::m_estimatedBremCnv
EstimatedBremOnTrackCnv_p1 m_estimatedBremCnv
Definition
TrackCollectionCnv_tlp6.h:78
TrackCollectionCnv_tlp6::m_localPositionsCnv
LocalPositionCnv_p1 m_localPositionsCnv
Definition
TrackCollectionCnv_tlp6.h:81
TrackCollectionCnv_tlp6::m_fitQualitiesCnv
FitQualityCnv_p1 m_fitQualitiesCnv
Definition
TrackCollectionCnv_tlp6.h:74
TrackCollectionCnv_tlp6::m_lineSurfacesCnv
StraightLineSurfaceCnv_p2 m_lineSurfacesCnv
Definition
TrackCollectionCnv_tlp6.h:71
TrackCollectionCnv_tlp6::m_materialEffectsCnv
MaterialEffectsOnTrackCnv_p2 m_materialEffectsCnv
Definition
TrackCollectionCnv_tlp6.h:77
TrackCollectionCnv_tlp6::m_errorMatricesCnv
ErrorMatrixCnv_p1 m_errorMatricesCnv
Definition
TrackCollectionCnv_tlp6.h:58
TrackCollectionCnv_tlp6::m_tracksCnv
TrackCnv_p4 m_tracksCnv
Definition
TrackCollectionCnv_tlp6.h:55
TrackCollectionCnv_tlp6::m_localDirectionsCnv
LocalDirectionCnv_p1 m_localDirectionsCnv
Definition
TrackCollectionCnv_tlp6.h:80
TrackCollectionCnv_tlp6::m_energyLossCnv
EnergyLossCnv_p1 m_energyLossCnv
Definition
TrackCollectionCnv_tlp6.h:76
TrackCollectionCnv_tlp6::setPStorage
virtual void setPStorage(PERS *storage) override
Definition
TrackCollectionCnv_tlp6.cxx:61
TrackCollectionCnv_tlp6::m_saggedLineSurfacesCnv
SaggedLineSurfaceCnv_p2 m_saggedLineSurfacesCnv
Definition
TrackCollectionCnv_tlp6.h:72
TrackCollectionCnv_tlp6::m_parametersCnv
TrackParametersCnv_p2 m_parametersCnv
Definition
TrackCollectionCnv_tlp6.h:64
TrackCollectionCnv_tlp6::m_pseudoMeasurementOnTrackCnv
PseudoMeasurementOnTrackCnv_p2 m_pseudoMeasurementOnTrackCnv
Definition
TrackCollectionCnv_tlp6.h:60
TrackCollectionCnv_tlp6::m_vertexOnTrackCnv
VertexOnTrackCnv_p1 m_vertexOnTrackCnv
Definition
TrackCollectionCnv_tlp6.h:61
TrackCollectionCnv_tlp6::m_cylSurfacesCnv
CylinderSurfaceCnv_p2 m_cylSurfacesCnv
Definition
TrackCollectionCnv_tlp6.h:67
TrackCollectionCnv_tlp6::m_muonCaloEnergiesCnv
MuonCaloEnergyContainerCnv_tlp1 m_muonCaloEnergiesCnv
Definition
TrackCollectionCnv_tlp6.h:87
TrackCollectionCnv_tlp6::m_localParametersCnv
LocalParametersCnv_p1 m_localParametersCnv
Definition
TrackCollectionCnv_tlp6.h:82
TrackCollectionCnv_tlp6::m_matEffectsBaseCnv
MaterialEffectsBaseCnv_p2 m_matEffectsBaseCnv
Definition
TrackCollectionCnv_tlp6.h:75
TrackCollectionCnv_tlp6::m_planeSurfacesCnv
PlaneSurfaceCnv_p2 m_planeSurfacesCnv
Definition
TrackCollectionCnv_tlp6.h:70
Trk::TrackCollection_tlp6::m_matEffectsBases
std::vector< Trk::MaterialEffectsBase_p1 > m_matEffectsBases
Definition
TrackCollection_tlp6.h:88
Trk::TrackCollection_tlp6::m_competingRotsOnTrack
std::vector< Trk::CompetingRIOsOnTrack_p1 > m_competingRotsOnTrack
Definition
TrackCollection_tlp6.h:79
Trk::TrackCollection_tlp6::m_muonCaloEnergiesExt
MuonCaloEnergyContainer_tlp1 * m_muonCaloEnergiesExt
Definition
TrackCollection_tlp6.h:102
Trk::TrackCollection_tlp6::m_pseudoMeasurementOnTrack
std::vector< Trk::PseudoMeasurementOnTrack_p2 > m_pseudoMeasurementOnTrack
Definition
TrackCollection_tlp6.h:80
Trk::TrackCollection_tlp6::m_vertexOnTrack
std::vector< Trk::VertexOnTrack_p1 > m_vertexOnTrack
Definition
TrackCollection_tlp6.h:81
Trk::TrackCollection_tlp6::m_energyLosses
std::vector< Trk::EnergyLoss_p1 > m_energyLosses
Definition
TrackCollection_tlp6.h:89
Trk::TrackCollection_tlp6::m_hepSymMatrices
std::vector< Trk::HepSymMatrix_p1 > m_hepSymMatrices
Definition
TrackCollection_tlp6.h:87
Trk::TrackCollection_tlp6::m_trackStates
std::vector< Trk::TrackStateOnSurface_p3 > m_trackStates
Definition
TrackCollection_tlp6.h:77
Trk::TrackCollection_tlp6::m_localDirections
std::vector< Trk::LocalDirection_p1 > m_localDirections
Definition
TrackCollection_tlp6.h:94
Trk::TrackCollection_tlp6::m_localParameters
std::vector< Trk::LocalParameters_p1 > m_localParameters
Definition
TrackCollection_tlp6.h:96
Trk::TrackCollection_tlp6::m_materialEffects
std::vector< Trk::MaterialEffectsOnTrack_p2 > m_materialEffects
Definition
TrackCollection_tlp6.h:90
Trk::TrackCollection_tlp6::m_inDetTrackExt
InDet::Track_tlp2 * m_inDetTrackExt
Definition
TrackCollection_tlp6.h:100
Trk::TrackCollection_tlp6::m_localPositions
std::vector< Trk::LocalPosition_p1 > m_localPositions
Definition
TrackCollection_tlp6.h:95
Trk::TrackCollection_tlp6::m_surfaces
std::vector< Trk::Surface_p2 > m_surfaces
Definition
TrackCollection_tlp6.h:85
Trk::TrackCollection_tlp6::m_fitQualities
std::vector< Trk::FitQuality_p1 > m_fitQualities
Definition
TrackCollection_tlp6.h:93
Trk::TrackCollection_tlp6::m_muonMeasurementsExt
TPCnv::MuonMeasurements_tlp2 * m_muonMeasurementsExt
Definition
TrackCollection_tlp6.h:101
Trk::TrackCollection_tlp6::m_parameters
std::vector< Trk::TrackParameters_p2 > m_parameters
Definition
TrackCollection_tlp6.h:83
Trk::TrackCollection_tlp6::m_estimatedBrems
std::vector< Trk::EstimatedBremOnTrack_p1 > m_estimatedBrems
Definition
TrackCollection_tlp6.h:91
Trk::TrackCollection_tlp6::m_trackCollections
std::vector< Trk::TrackCollection_p1 > m_trackCollections
Definition
TrackCollection_tlp6.h:75
Trk::TrackCollection_tlp6::m_tracks
std::vector< Trk::Track_p4 > m_tracks
Definition
TrackCollection_tlp6.h:76
Generated on
for ATLAS Offline Software by
1.17.0