ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkEvent
TrkPseudoMeasurementOnTrack
src
PseudoMeasurementOnTrack.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
// PseudoMeasurementOnTrack.cxx, (c) ATLAS Detector software
8
9
#include "
TrkPseudoMeasurementOnTrack/PseudoMeasurementOnTrack.h
"
10
//#include "TrkEventPrimitives/LocalParameters.h"
11
//#include "TrkEventPrimitives/ErrorMatrix.h"
12
#include "GaudiKernel/MsgStream.h"
13
#include "
TrkSurfaces/Surface.h
"
14
#include <string>
15
#include <typeinfo>
16
17
namespace
{
18
// helper to move pointer and set source to nullptr
19
template
<
class
T>
20
T
21
move_ptr(T& src)
22
{
23
T
tmp
=
src
;
24
src
=
nullptr
;
25
return
tmp
;
26
}
27
28
const
double
NaN(std::numeric_limits<double>::quiet_NaN());
29
const
Amg::Vector3D
INVALID_VECTOR3D(NaN, NaN, NaN);
30
}
31
32
Trk::PseudoMeasurementOnTrack::PseudoMeasurementOnTrack
(
33
LocalParameters
&& locpars,
34
Amg::MatrixX
&& locerr,
35
const
Surface
& assocSurf)
36
:
Trk
::
MeasurementBase
(
std
::move(locpars),
std
::move(locerr))
37
,
SurfacePtrHolder
(assocSurf)
38
,
m_globalPosition
(
m_associatedSurface
->center())
39
{
40
}
41
42
Trk::PseudoMeasurementOnTrack::PseudoMeasurementOnTrack
(
43
LocalParameters
&& locpars,
44
Amg::MatrixX
&& locerr,
45
Trk::ConstSurfaceUniquePtr
assocSurf)
46
:
Trk
::
MeasurementBase
(
std
::move(locpars),
std
::move(locerr))
47
,
SurfacePtrHolder
(assocSurf.
release
())
48
,
m_globalPosition
(
m_associatedSurface
->center())
49
{
50
}
51
52
// default constructor:
53
Trk::PseudoMeasurementOnTrack::PseudoMeasurementOnTrack
()
54
:
Trk
::
MeasurementBase
()
55
,
SurfacePtrHolder
(nullptr)
56
,
m_globalPosition
(INVALID_VECTOR3D)
57
{}
58
59
MsgStream&
60
Trk::PseudoMeasurementOnTrack::dump
(MsgStream& sl)
const
61
{
62
std::string name(
typeid
(*this).name());
63
sl <<
"Concrete dump method not implemented - using base class"
<< std::endl;
64
sl << name <<
"\t local position = "
<< this->
localParameters
() << std::endl;
65
sl << name <<
"\t global position ( "
<< this->
globalPosition
().x() <<
" , "
66
<< this->
globalPosition
().y() <<
" , "
<< this->
globalPosition
().z()
67
<<
" ) "
<< std::endl;
68
sl << name <<
"\t has error matrix: "
<< std::endl;
69
sl << this->
localCovariance
() << std::endl;
70
sl << name <<
"\t has associated surface:"
<< std::endl;
71
sl << this->
associatedSurface
() << std::endl;
72
return
sl;
73
}
74
75
std::ostream&
76
Trk::PseudoMeasurementOnTrack::dump
(std::ostream& sl)
const
77
{
78
std::string name(
typeid
(*this).name());
79
sl <<
"Concrete dump method not implemented - using base class"
<< std::endl;
80
sl << name <<
"\t local position = "
<< this->
localParameters
() << std::endl;
81
sl << name <<
"\t global position ( "
<< this->
globalPosition
().x() <<
" , "
82
<< this->
globalPosition
().y() <<
" , "
<< this->
globalPosition
().z()
83
<<
" ) "
<< std::endl;
84
sl << name <<
"\t has error matrix: "
<< std::endl;
85
sl << this->
localCovariance
() << std::endl;
86
sl << name <<
"\t has associated surface:"
<< std::endl;
87
sl << this->
associatedSurface
() << std::endl;
88
return
sl;
89
}
90
PseudoMeasurementOnTrack.h
Surface.h
Trk::LocalParameters
Definition
LocalParameters.h:100
Trk::MeasurementBase::localParameters
const LocalParameters & localParameters() const
Interface method to get the LocalParameters.
Definition
MeasurementBase.h:132
Trk::MeasurementBase::MeasurementBase
MeasurementBase()=default
Default constructor - needed for POOL/SEAL.
Trk::MeasurementBase::localCovariance
const Amg::MatrixX & localCovariance() const
Interface method to get the localError.
Definition
MeasurementBase.h:138
Trk::PseudoMeasurementOnTrack::dump
virtual MsgStream & dump(MsgStream &out) const override final
produces logfile output about its content in MsgStream form.
Definition
PseudoMeasurementOnTrack.cxx:60
Trk::PseudoMeasurementOnTrack::globalPosition
virtual const Amg::Vector3D & globalPosition() const override final
returns the global Position (interface from MeasurementBase)
Definition
PseudoMeasurementOnTrack.h:122
Trk::PseudoMeasurementOnTrack::m_globalPosition
Amg::Vector3D m_globalPosition
Global position of the PMoT.
Definition
PseudoMeasurementOnTrack.h:100
Trk::PseudoMeasurementOnTrack::PseudoMeasurementOnTrack
PseudoMeasurementOnTrack()
Default Constructor for POOL.
Definition
PseudoMeasurementOnTrack.cxx:53
Trk::PseudoMeasurementOnTrack::associatedSurface
virtual const Surface & associatedSurface() const override final
returns the surface for the local to global transformation (interface from MeasurementBase)
Definition
PseudoMeasurementOnTrack.h:110
Trk::SurfacePtrHolderImpl< Surface >::m_associatedSurface
const Surface * m_associatedSurface
Definition
SurfaceHolderImpl.h:130
Trk::SurfacePtrHolderImpl< Surface >::release
const Surface * release() noexcept
Definition
SurfaceHolderImpl.h:116
Trk::Surface
Abstract Base Class for tracking surfaces.
Definition
Surface.h:79
Amg::MatrixX
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Definition
EventPrimitives.h:27
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
DeMoUpdate.tmp
str tmp
Definition
DeMoUpdate.py:1167
LArNewCalib_PedestalAutoCorr.src
str src
Definition
LArNewCalib_PedestalAutoCorr.py:193
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
Trk::ConstSurfaceUniquePtr
SurfaceUniquePtrT< const Trk::Surface > ConstSurfaceUniquePtr
Definition
Surface.h:468
Trk::SurfacePtrHolder
SurfacePtrHolderImpl< Surface > SurfacePtrHolder
Definition
SurfaceHolders.h:25
std
STL namespace.
Generated on
for ATLAS Offline Software by
1.17.0