ATLAS Offline Software
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 
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 
14 {
15 // Add all converters defined in this top level converter:
16 // never change the order of adding converters!
17 
19 
22 
24 
25  // Measurements
29  // Other measurements are stored in the other tlp objects, i.e. the InDetTrack, and MuonMeasurements
30 
31  // Parameters
33 
34  // Surfaces
42 
47 
52 
53  // adding extending TLP converters,
54  // they don't interfere with the order of adding regular converters (above)
58 }
59 
60 
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 
105  const std::string& key,
106  MsgStream &log)
107 {
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 }
MuonCaloEnergyContainerCnv_tlp1::setPStorage
virtual void setPStorage(MuonCaloEnergyContainer_tlp1 *storage)
Definition: MuonCaloEnergyContainerCnv_tlp1.cxx:20
TrackCollectionCnv_tlp6::m_lineSurfacesCnv
StraightLineSurfaceCnv_p2 m_lineSurfacesCnv
Definition: TrackCollectionCnv_tlp6.h:71
TopLevelTPConverter::PERS
TL_PERS PERS
Definition: TopLevelTPConverter.h:38
TrackCollectionCnv_tlp6::m_tracksCnv
TrackCnv_p4 m_tracksCnv
Definition: TrackCollectionCnv_tlp6.h:55
TrackCollectionCnv_tlp6::m_perigeeSurfacesCnv
PerigeeSurfaceCnv_p2 m_perigeeSurfacesCnv
Definition: TrackCollectionCnv_tlp6.h:69
TPAbstractPolyCnvBase::setPStorage
void setPStorage(std::vector< PERS > *storage)
Tell this converter which storage vector it should use to store or retrieve persistent representation...
Definition: TPConverter.h:551
TrackCollectionCnv_tlp6::m_parametersCnv
TrackParametersCnv_p2 m_parametersCnv
Definition: TrackCollectionCnv_tlp6.h:64
TrackCollectionCnv_tlp6::m_inDetTrackCnv
InDetTrackCnv_tlp2 m_inDetTrackCnv
Definition: TrackCollectionCnv_tlp6.h:86
TrackCollectionCnv_tlp6::m_trackStatesCnv
TrackStateOnSurfaceCnv_p3 m_trackStatesCnv
Definition: TrackCollectionCnv_tlp6.h:56
TrackCollectionCnv_tlp6.h
TrackCollectionCnv_tlp6::m_muonCaloEnergiesCnv
MuonCaloEnergyContainerCnv_tlp1 m_muonCaloEnergiesCnv
Definition: TrackCollectionCnv_tlp6.h:87
TopLevelTPConverter::createPersistentWithKey
virtual TL_PERS * createPersistentWithKey(const TRANS *transObj, const std::string &key, MsgStream &log)
Create persistent representation of transObj.
Definition: TopLevelTPConverter.h:129
TrackCollectionCnv_tlp6::TrackCollectionCnv_tlp6
TrackCollectionCnv_tlp6()
Definition: TrackCollectionCnv_tlp6.cxx:13
TopLevelTPConverter::addMainTPConverter
void addMainTPConverter()
Add the main TP converter to the internal list - should be called from user-defined constructor.
Definition: TopLevelTPConverter.h:146
TrackCollectionCnv_tlp6::m_fitQualitiesCnv
FitQualityCnv_p1 m_fitQualitiesCnv
Definition: TrackCollectionCnv_tlp6.h:74
TrackCollectionCnv_tlp6::m_localDirectionsCnv
LocalDirectionCnv_p1 m_localDirectionsCnv
Definition: TrackCollectionCnv_tlp6.h:80
TopLevelTPConverter::TRANS
MAIN_CNV::Trans_t TRANS
Definition: TopLevelTPConverter.h:37
TrackCollectionCnv_tlp6::m_errorMatricesCnv
ErrorMatrixCnv_p1 m_errorMatricesCnv
Definition: TrackCollectionCnv_tlp6.h:58
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
TopLevelTPCnvBase::addTPConverter
virtual void addTPConverter(ITPConverter *cnv)
Add a TP converter to this top level converter.
Definition: TopLevelTPCnvBase.cxx:11
TrackCollectionCnv_tlp6::m_planeSurfacesCnv
PlaneSurfaceCnv_p2 m_planeSurfacesCnv
Definition: TrackCollectionCnv_tlp6.h:70
TrackCollectionCnv_tlp6::m_localParametersCnv
LocalParametersCnv_p1 m_localParametersCnv
Definition: TrackCollectionCnv_tlp6.h:82
TrackCollectionCnv_tlp6::m_muonMeasurementsCnv
MuonMeasurementsCnv_tlp2 m_muonMeasurementsCnv
Definition: TrackCollectionCnv_tlp6.h:85
MuonMeasurementsCnv_tlp2::setPStorage
virtual void setPStorage(TPCnv::MuonMeasurements_tlp2 *storage)
Definition: MuonMeasurementsCnv_tlp2.cxx:23
TrackCollectionCnv_tlp6::m_cylSurfacesCnv
CylinderSurfaceCnv_p2 m_cylSurfacesCnv
Definition: TrackCollectionCnv_tlp6.h:67
TrackCollectionCnv_tlp6::m_saggedLineSurfacesCnv
SaggedLineSurfaceCnv_p2 m_saggedLineSurfacesCnv
Definition: TrackCollectionCnv_tlp6.h:72
TrackCollectionCnv_tlp6::m_matEffectsBaseCnv
MaterialEffectsBaseCnv_p2 m_matEffectsBaseCnv
Definition: TrackCollectionCnv_tlp6.h:75
InDetTrackCnv_tlp2::setPStorage
virtual void setPStorage(InDet::Track_tlp2 *storage)
Definition: InDetTrackCnv_tlp2.cxx:24
TrackCollectionCnv_tlp6::m_materialEffectsCnv
MaterialEffectsOnTrackCnv_p2 m_materialEffectsCnv
Definition: TrackCollectionCnv_tlp6.h:77
TrackCollectionCnv_tlp6::m_discSurfacesCnv
DiscSurfaceCnv_p2 m_discSurfacesCnv
Definition: TrackCollectionCnv_tlp6.h:68
TopLevelTPCnvBaseP::releaseTLPersObject
TL_PERS * releaseTLPersObject()
@release the persistent object from this converter
Definition: TopLevelTPCnvBaseP.h:82
TopLevelTPCnvBase::addTPConvertersTo
virtual void addTPConvertersTo(TopLevelTPCnvBase *dest)
copy all extending converters from this top level converter to "dest" top level converter
Definition: TopLevelTPCnvBase.cxx:60
TrackCollectionCnv_tlp6::m_localPositionsCnv
LocalPositionCnv_p1 m_localPositionsCnv
Definition: TrackCollectionCnv_tlp6.h:81
TrackCollectionCnv_tlp6::setPStorage
virtual void setPStorage(PERS *storage) override
A stub for a method that should be provided by the converter creator.
Definition: TrackCollectionCnv_tlp6.cxx:61
TrackCollectionCnv_tlp6::m_energyLossCnv
EnergyLossCnv_p1 m_energyLossCnv
Definition: TrackCollectionCnv_tlp6.h:76
TrackCollectionCnv_tlp6::m_crotCnv
CompetingRIOsOnTrackCnv_p1 m_crotCnv
Definition: TrackCollectionCnv_tlp6.h:62
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
TrackCollectionCnv_tlp6::m_vertexOnTrackCnv
VertexOnTrackCnv_p1 m_vertexOnTrackCnv
Definition: TrackCollectionCnv_tlp6.h:61
TrackCollectionCnv_tlp6::m_pseudoMeasurementOnTrackCnv
PseudoMeasurementOnTrackCnv_p2 m_pseudoMeasurementOnTrackCnv
Definition: TrackCollectionCnv_tlp6.h:60
TopLevelTPConverter::setMainCnvPStorage
void setMainCnvPStorage(STORAGE *storage)
Set the persistent storage space for the main TP converter.
Definition: TopLevelTPConverter.h:152
TrackCollectionCnv_tlp6::createPersistentWithKey
virtual PERS * createPersistentWithKey(const TRANS *transObj, const std::string &key, MsgStream &log) override
Create persistent representation of transObj.
Definition: TrackCollectionCnv_tlp6.cxx:104
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37