ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkEventCnv
TrkEventTPCnv
src
TrkParameters
PerigeeCnv_p2.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
TrkParameters/TrackParameters.h
"
6
#include "
TrkEventTPCnv/TrkParameters/PerigeeCnv_p2.h
"
7
#include "
TrkEventTPCnv/TrkParameters/mungeZeroQOverP.h
"
8
9
void
PerigeeCnv_p2::persToTrans
(
const
Trk::Perigee_p2
*persObj,
Trk::Perigee
*transObj, MsgStream &log ) {
10
11
fillTransFromPStore
( &
m_trackParametersCnv
, persObj->
m_parameters
, transObj, log );
12
13
// Preserve previous behavior of tp converters.
14
bool
waszero =
false
;
15
auto
parms = transObj->parameters();
16
if
(parms[
Trk::qOverP
] == 0) {
17
parms[
Trk::qOverP
] = 1;
18
waszero =
true
;
19
}
20
21
Trk::SurfaceUniquePtrT<const Trk::PerigeeSurface>
surf
22
(
createTransFromPStore
( &
m_perigeeSurfaceCnv
, persObj->
m_assocSurface
, log ));
23
assert(surf);
24
*transObj =
Trk::Perigee
(parms, *surf.get());
25
if
(waszero)
26
TrkEventTPCnv::mungeZeroQOverP (*transObj);
27
}
28
29
30
void
PerigeeCnv_p2::transToPers
(
const
Trk::Perigee
*,
Trk::Perigee_p2
*, MsgStream & ) {
31
throw
std::runtime_error(
"PerigeeCnv_p2::transToPers is deprecated! (Use TrackParametersCnv_pX instead)"
);
32
}
33
34
PerigeeCnv_p2.h
TrackParameters.h
ITPConverterFor< TRANS_BASE >::createTransFromPStore
CNV::Trans_t * createTransFromPStore(CNV **cnv, const TPObjRef &ref, MsgStream &log) const
Definition
TPConverter.h:172
ITPConverterFor< TRANS_BASE >::fillTransFromPStore
void fillTransFromPStore(CNV **cnv, const TPObjRef &ref, TRANS_T *trans, MsgStream &log) const
Definition
TPConverter.h:145
PerigeeCnv_p2::transToPers
void transToPers(const Trk::Perigee *, Trk::Perigee_p2 *, MsgStream &)
Definition
PerigeeCnv_p2.cxx:30
PerigeeCnv_p2::m_perigeeSurfaceCnv
PerigeeSurfaceCnv_p1 * m_perigeeSurfaceCnv
Definition
PerigeeCnv_p2.h:29
PerigeeCnv_p2::m_trackParametersCnv
TrackParametersCnv_p1 * m_trackParametersCnv
Definition
PerigeeCnv_p2.h:30
PerigeeCnv_p2::persToTrans
void persToTrans(const Trk::Perigee_p2 *, Trk::Perigee *, MsgStream &)
Definition
PerigeeCnv_p2.cxx:9
Trk::Perigee_p2
Definition
Perigee_p2.h:12
Trk::Perigee_p2::m_parameters
TPObjRef m_parameters
Definition
Perigee_p2.h:16
Trk::Perigee_p2::m_assocSurface
TPObjRef m_assocSurface
Definition
Perigee_p2.h:17
mungeZeroQOverP.h
tpcnv compatibility helper
Trk::Perigee
ParametersT< TrackParametersDim, Charged, PerigeeSurface > Perigee
Definition
Tracking/TrkEvent/TrkParameters/TrkParameters/TrackParameters.h:33
Trk::qOverP
@ qOverP
perigee
Definition
ParamDefs.h:67
Trk::SurfaceUniquePtrT
std::unique_ptr< S, SurfaceDeleter< S > > SurfaceUniquePtrT
Definition
SurfaceUniquePtrT.h:32
Generated on
for ATLAS Offline Software by
1.17.0