ATLAS Offline Software
SegmentCollectionCnv_tlp4.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
8 {
9 // std::cout << "SegmentCollectionCnv_tlp4::SegmentCollectionCnv_tlp4( )" << std::endl;
10  // Add all converters defined in this top level converter:
11  // never change the order of adding converters!
12 
14 
16 
17  // Surfaces
25 
30 
33 
34  // adding extending TLP converters,
35  // they don't interfere with the order of adding regular converters (above)
38 }
39 
40 
42 {
43  setMainCnvPStorage( &storage->m_segmentCollections );
44 
45  // for all converters defined in this top level converter
46  m_segmentCnv. setPStorage( &storage->m_segments );
47 
48  m_coneSurfacesCnv .setPStorage( &storage->m_surfaces );
49  m_cylSurfacesCnv .setPStorage( &storage->m_surfaces );
50  m_discSurfacesCnv .setPStorage( &storage->m_surfaces );
51  m_perigeeSurfacesCnv .setPStorage( &storage->m_surfaces );
52  m_planeSurfacesCnv .setPStorage( &storage->m_surfaces );
53  m_lineSurfacesCnv .setPStorage( &storage->m_surfaces );
54  m_saggedLineSurfacesCnv .setPStorage( &storage->m_surfaces );
55 
56  m_fitQualitiesCnv. setPStorage( &storage->m_fitQualities );
57  m_covarianceMatricesCnv. setPStorage( &storage->m_hepSymMatrices );
58  m_errorMatricesCnv. setPStorage( &storage->m_hepSymMatrices );
59  m_localParametersCnv. setPStorage( &storage->m_localParameters );
60 
61  m_pseudoMeasurementOnTrackCnv. setPStorage( &storage->m_pseudoMeasurementOnTrack );
62  m_crotCnv. setPStorage( &storage->m_competingRotsOnTrack );
63 
64  // when reading (createTrans) these will be non-null if extension is present
65  // when writing, they will be null at first end set afterwards in createPersisten()
66  if( storage->m_muonMeasurementsExt ) m_muonMeasurementsCnv.setPStorage( storage->m_muonMeasurementsExt.get() );
67  if( storage->m_inDetTrackExt ) m_inDetTrackCnv .setPStorage( storage->m_inDetTrackExt.get() );
68 }
69 
70 
72  {
74  pers->m_muonMeasurementsExt.reset( m_muonMeasurementsCnv.releaseTLPersObject() );
75  pers->m_inDetTrackExt.reset( m_inDetTrackCnv.releaseTLPersObject() );
76  return pers;
77  }
78 
TopLevelTPConverter::PERS
TL_PERS PERS
Definition: TopLevelTPConverter.h:38
SegmentCollectionCnv_tlp4::m_pseudoMeasurementOnTrackCnv
PseudoMeasurementOnTrackCnv_p2 m_pseudoMeasurementOnTrackCnv
Definition: SegmentCollectionCnv_tlp4.h:55
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
SegmentCollectionCnv_tlp4::SegmentCollectionCnv_tlp4
SegmentCollectionCnv_tlp4()
Definition: SegmentCollectionCnv_tlp4.cxx:7
SegmentCollectionCnv_tlp4::m_crotCnv
CompetingRIOsOnTrackCnv_p1 m_crotCnv
Definition: SegmentCollectionCnv_tlp4.h:56
SegmentCollectionCnv_tlp4.h
SegmentCollectionCnv_tlp4::m_coneSurfacesCnv
ConeSurfaceCnv_p2 m_coneSurfacesCnv
Definition: SegmentCollectionCnv_tlp4.h:42
SegmentCollectionCnv_tlp4::setPStorage
virtual void setPStorage(PERS *storage)
A stub for a method that should be provided by the converter creator.
Definition: SegmentCollectionCnv_tlp4.cxx:41
SegmentCollectionCnv_tlp4::m_segmentCnv
SegmentCnv_p1 m_segmentCnv
Definition: SegmentCollectionCnv_tlp4.h:40
TopLevelTPConverter::addMainTPConverter
void addMainTPConverter()
Add the main TP converter to the internal list - should be called from user-defined constructor.
Definition: TopLevelTPConverter.h:146
SegmentCollectionCnv_tlp4::m_errorMatricesCnv
ErrorMatrixCnv_p1 m_errorMatricesCnv
Definition: SegmentCollectionCnv_tlp4.h:52
SegmentCollectionCnv_tlp4::m_perigeeSurfacesCnv
PerigeeSurfaceCnv_p2 m_perigeeSurfacesCnv
Definition: SegmentCollectionCnv_tlp4.h:45
TopLevelTPConverter::TRANS
MAIN_CNV::Trans_t TRANS
Definition: TopLevelTPConverter.h:37
SegmentCollectionCnv_tlp4::m_fitQualitiesCnv
FitQualityCnv_p1 m_fitQualitiesCnv
Definition: SegmentCollectionCnv_tlp4.h:50
TopLevelTPCnvBase::addTPConverter
virtual void addTPConverter(ITPConverter *cnv)
Add a TP converter to this top level converter.
Definition: TopLevelTPCnvBase.cxx:11
SegmentCollectionCnv_tlp4::m_saggedLineSurfacesCnv
SaggedLineSurfaceCnv_p2 m_saggedLineSurfacesCnv
Definition: SegmentCollectionCnv_tlp4.h:48
MuonMeasurementsCnv_tlp2::setPStorage
virtual void setPStorage(TPCnv::MuonMeasurements_tlp2 *storage)
Definition: MuonMeasurementsCnv_tlp2.cxx:23
SegmentCollectionCnv_tlp4::m_planeSurfacesCnv
PlaneSurfaceCnv_p2 m_planeSurfacesCnv
Definition: SegmentCollectionCnv_tlp4.h:46
InDetTrackCnv_tlp2::setPStorage
virtual void setPStorage(InDet::Track_tlp2 *storage)
Definition: InDetTrackCnv_tlp2.cxx:24
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
SegmentCollectionCnv_tlp4::m_inDetTrackCnv
InDetTrackCnv_tlp2 m_inDetTrackCnv
Definition: SegmentCollectionCnv_tlp4.h:59
SegmentCollectionCnv_tlp4::m_covarianceMatricesCnv
CovarianceMatrixCnv_p1 m_covarianceMatricesCnv
Definition: SegmentCollectionCnv_tlp4.h:51
SegmentCollectionCnv_tlp4::m_localParametersCnv
LocalParametersCnv_p1 m_localParametersCnv
Definition: SegmentCollectionCnv_tlp4.h:53
SegmentCollectionCnv_tlp4::m_discSurfacesCnv
DiscSurfaceCnv_p2 m_discSurfacesCnv
Definition: SegmentCollectionCnv_tlp4.h:44
SegmentCollectionCnv_tlp4::m_muonMeasurementsCnv
MuonMeasurementsCnv_tlp2 m_muonMeasurementsCnv
Definition: SegmentCollectionCnv_tlp4.h:58
SegmentCollectionCnv_tlp4::m_lineSurfacesCnv
StraightLineSurfaceCnv_p2 m_lineSurfacesCnv
Definition: SegmentCollectionCnv_tlp4.h:47
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
SegmentCollectionCnv_tlp4::createPersistent
virtual PERS * createPersistent(const TRANS *transObj, MsgStream &log)
Create persistent representation of transObj.
Definition: SegmentCollectionCnv_tlp4.cxx:71
TopLevelTPConverter::createPersistent
virtual TL_PERS * createPersistent(const TRANS *transObj, MsgStream &log)
Create persistent representation of transObj.
Definition: TopLevelTPConverter.h:110
SegmentCollectionCnv_tlp4::m_cylSurfacesCnv
CylinderSurfaceCnv_p2 m_cylSurfacesCnv
Definition: SegmentCollectionCnv_tlp4.h:43
TopLevelTPConverter::setMainCnvPStorage
void setMainCnvPStorage(STORAGE *storage)
Set the persistent storage space for the main TP converter.
Definition: TopLevelTPConverter.h:152