ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkEvent
TrkPseudoMeasurementOnTrack
TrkPseudoMeasurementOnTrack
PseudoMeasurementOnTrack.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// PseudoMeasurementOnTrack.h, (c) ATLAS Detector software
8
9
#ifndef TRKPMONTRACK_PSEUDOMEASUREMENTONTRACK_H
10
#define TRKPMONTRACK_PSEUDOMEASUREMENTONTRACK_H
11
12
#include "
EventPrimitives/EventPrimitives.h
"
13
#include "
GeoPrimitives/GeoPrimitives.h
"
14
#include "
TrkMeasurementBase/MeasurementBase.h
"
15
#include "
TrkSurfaces/Surface.h
"
16
#include "
TrkSurfaces/SurfaceHolders.h
"
17
#include <iosfwd>
18
#include <memory>
19
20
class
MsgStream;
21
class
TrackCollectionCnv
;
22
23
namespace
Trk
{
24
25
class
Surface
;
26
40
41
class
PseudoMeasurementOnTrack
final
42
:
public
MeasurementBase
43
,
public
SurfacePtrHolder
44
{
45
46
friend
class ::TrackCollectionCnv;
47
48
public
:
50
PseudoMeasurementOnTrack
();
51
PseudoMeasurementOnTrack
(
const
PseudoMeasurementOnTrack
&) =
default
;
52
PseudoMeasurementOnTrack
(
PseudoMeasurementOnTrack
&&) noexcept = default;
53
PseudoMeasurementOnTrack
& operator=(
const
PseudoMeasurementOnTrack
&) =
54
default;
55
PseudoMeasurementOnTrack
& operator=(
PseudoMeasurementOnTrack
&&) noexcept =
56
default;
57
PseudoMeasurementOnTrack
(
LocalParameters
&& locpars,
58
Amg
::MatrixX&& locerr,
59
const
Surface
& assocSurf);
60
61
PseudoMeasurementOnTrack
(
LocalParameters
&& locpars,
62
Amg
::MatrixX&& locerr,
63
ConstSurfaceUniquePtr
assocSurf);
64
66
virtual ~
PseudoMeasurementOnTrack
() override final = default;
67
69
virtual
PseudoMeasurementOnTrack
*
clone
()
const
override final;
70
72
std
::
unique_ptr
<
PseudoMeasurementOnTrack
>
uniqueClone
()
const
73
{
74
return
std::unique_ptr<PseudoMeasurementOnTrack>(
clone
());
75
};
76
79
virtual
const
Surface
&
associatedSurface
()
const
override final;
80
82
bool
hasSurface
()
const
;
83
85
virtual
const
Amg
::
Vector3D
&
globalPosition
()
const
override final;
86
88
virtual
bool
type
(
MeasurementBaseType
::
Type
type
)
const
override final
89
{
90
return
(
type
==
MeasurementBaseType::PseudoMeasurementOnTrack
);
91
}
92
94
virtual
MsgStream&
dump
(MsgStream& out)
const
override
final
;
96
virtual
std::ostream&
dump
(std::ostream& out)
const
override
final
;
97
98
protected
:
100
Amg::Vector3D
m_globalPosition
;
101
};
102
103
inline
PseudoMeasurementOnTrack
*
104
PseudoMeasurementOnTrack::clone
()
const
105
{
106
return
new
PseudoMeasurementOnTrack
(*
this
);
107
}
108
109
inline
const
Surface
&
110
PseudoMeasurementOnTrack::associatedSurface
()
const
111
{
112
return
*
m_associatedSurface
;
113
}
114
115
inline
bool
116
PseudoMeasurementOnTrack::hasSurface
()
const
117
{
118
return
m_associatedSurface
!=
nullptr
;
119
}
120
121
inline
const
Amg::Vector3D
&
122
Trk::PseudoMeasurementOnTrack::globalPosition
()
const
123
{
124
return
m_globalPosition
;
125
}
126
127
}
// end namespace Trk
128
129
#endif
// TRKPMONTRACK_PSEUDOMEASUREMENTONTRACK_H
130
EventPrimitives.h
GeoPrimitives.h
MeasurementBase.h
SurfaceHolders.h
Surface.h
Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
TrackCollectionCnv
Definition
TrackCollectionCnv.h:47
Trk::LocalParameters
Definition
LocalParameters.h:100
Trk::MeasurementBase::MeasurementBase
MeasurementBase()=default
Default constructor - needed for POOL/SEAL.
Trk::PseudoMeasurementOnTrack
Class to handle pseudo-measurements in fitters and on track objects.
Definition
PseudoMeasurementOnTrack.h:44
Trk::PseudoMeasurementOnTrack::PseudoMeasurementOnTrack
PseudoMeasurementOnTrack(const PseudoMeasurementOnTrack &)=default
Trk::PseudoMeasurementOnTrack::globalPosition
virtual const Amg::Vector3D & globalPosition() const override final
returns the global Position (interface from MeasurementBase)
Definition
PseudoMeasurementOnTrack.h:122
Trk::PseudoMeasurementOnTrack::type
virtual bool type(MeasurementBaseType::Type type) const override final
Extended method checking the type.
Definition
PseudoMeasurementOnTrack.h:88
Trk::PseudoMeasurementOnTrack::clone
virtual PseudoMeasurementOnTrack * clone() const override final
virtual constructor, not absolutely needed but given for EDM symmetry
Definition
PseudoMeasurementOnTrack.h:104
Trk::PseudoMeasurementOnTrack::m_globalPosition
Amg::Vector3D m_globalPosition
Global position of the PMoT.
Definition
PseudoMeasurementOnTrack.h:100
Trk::PseudoMeasurementOnTrack::hasSurface
bool hasSurface() const
Test to see if an associated surface exists.
Definition
PseudoMeasurementOnTrack.h:116
Trk::PseudoMeasurementOnTrack::PseudoMeasurementOnTrack
PseudoMeasurementOnTrack()
Default Constructor for POOL.
Definition
PseudoMeasurementOnTrack.cxx:53
Trk::PseudoMeasurementOnTrack::uniqueClone
std::unique_ptr< PseudoMeasurementOnTrack > uniqueClone() const
NVI unique_ptr version of clone.
Definition
PseudoMeasurementOnTrack.h:72
Trk::PseudoMeasurementOnTrack::PseudoMeasurementOnTrack
PseudoMeasurementOnTrack(PseudoMeasurementOnTrack &&) noexcept=default
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::Surface
Abstract Base Class for tracking surfaces.
Definition
Surface.h:79
unique_ptr
STL class.
const
Amg
Definition of ATLAS Math & Geometry primitives (Amg).
Definition
AmgStringHelpers.h:19
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
Trk::MeasurementBaseType
Definition
MeasurementBase.h:41
Trk::MeasurementBaseType::PseudoMeasurementOnTrack
@ PseudoMeasurementOnTrack
Definition
MeasurementBase.h:51
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
dump
-event-from-file
std
STL namespace.
Type
Generated on
for ATLAS Offline Software by
1.17.0