ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetRecEvent
InDetCompetingRIOsOnTrack
InDetCompetingRIOsOnTrack
CompetingSCT_ClustersOnTrack.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// CompetingSCT_ClustersOnTrack.h, (c) ATLAS Detector software
8
9
#ifndef COMPETINGSCTCLUSTERSONTRACK_H
10
#define COMPETINGSCTCLUSTERSONTRACK_H
11
12
// Trk
13
#include "
CxxUtils/CachedUniquePtr.h
"
14
#include "
InDetRIO_OnTrack/SCT_ClusterOnTrack.h
"
// cannot fwd-declare because of covariant method
15
#include "
TrkCompetingRIOsOnTrack/CompetingRIOsOnTrack.h
"
16
17
#include <iosfwd>
18
19
class
MsgStream;
20
21
namespace
Trk
{
22
class
Surface
;
23
}
24
25
namespace
InDet
{
26
43
44
class
CompetingSCT_ClustersOnTrack
:
public
Trk::CompetingRIOsOnTrack
45
{
46
47
public
:
50
friend
class
CompetingSCT_ClustersOnTrackTool
;
51
53
CompetingSCT_ClustersOnTrack
();
55
CompetingSCT_ClustersOnTrack
(
const
CompetingSCT_ClustersOnTrack
& compROT);
57
CompetingSCT_ClustersOnTrack
&
operator=
(
const
CompetingSCT_ClustersOnTrack
& compROT);
59
CompetingSCT_ClustersOnTrack
&
operator=
(
CompetingSCT_ClustersOnTrack
&& compROT)
noexcept
;
60
64
CompetingSCT_ClustersOnTrack
(std::vector<const InDet::SCT_ClusterOnTrack*>&& childrots,
65
std::vector<AssignmentProb>&& assgnProb);
66
68
virtual
~CompetingSCT_ClustersOnTrack
();
69
71
CompetingSCT_ClustersOnTrack
*
clone
()
const
;
72
75
const
Trk::Surface
&
associatedSurface
()
const
;
76
79
const
Amg::Vector3D
&
globalPosition
()
const
;
80
82
unsigned
int
numberOfContainedROTs
()
const
;
83
86
const
std::vector<const InDet::SCT_ClusterOnTrack*>&
containedROTs
()
const
;
87
89
const
InDet::SCT_ClusterOnTrack
&
rioOnTrack
(
unsigned
int
)
const
;
90
92
MsgStream&
dump
(MsgStream& out)
const
;
94
std::ostream&
dump
(std::ostream& out)
const
;
95
99
virtual
void
setLocalParametersAndErrorMatrix
();
100
101
private
:
103
void
clearChildRotVector
();
104
106
CxxUtils::CachedUniquePtr<const Amg::Vector3D>
m_globalPosition
;
107
109
std::vector<const InDet::SCT_ClusterOnTrack*>
m_containedChildRots
;
110
117
bool
ROTsHaveCommonSurface
(
const
bool
withNonVanishingAssignProb =
true
)
const
;
118
};
119
120
inline
CompetingSCT_ClustersOnTrack
*
121
CompetingSCT_ClustersOnTrack::clone
()
const
122
{
123
return
new
InDet::CompetingSCT_ClustersOnTrack
(*
this
);
124
}
125
126
inline
const
Trk::Surface
&
127
CompetingSCT_ClustersOnTrack::associatedSurface
()
const
128
{
129
return
((*(
m_containedChildRots
.begin()))->associatedSurface());
130
}
131
132
inline
const
std::vector<const InDet::SCT_ClusterOnTrack*>&
133
CompetingSCT_ClustersOnTrack::containedROTs
()
const
134
{
135
return
m_containedChildRots
;
136
}
137
138
inline
const
InDet::SCT_ClusterOnTrack
&
139
CompetingSCT_ClustersOnTrack::rioOnTrack
(
unsigned
int
indx)
const
140
{
141
return
*(
m_containedChildRots
[indx]);
142
}
143
144
inline
const
Amg::Vector3D
&
145
CompetingSCT_ClustersOnTrack::globalPosition
()
const
146
{
147
if
(not
m_globalPosition
) {
148
m_globalPosition
.set(std::make_unique<const Amg::Vector3D>(
149
associatedSurface
().localToGlobal(
localParameters
())));
150
}
151
return
*
m_globalPosition
;
152
}
153
154
inline
unsigned
int
155
CompetingSCT_ClustersOnTrack::numberOfContainedROTs
()
const
156
{
157
return
m_containedChildRots
.size();
158
}
159
160
}
161
162
#endif
// COMPETINGSCTCLUSTERSONTRACK_H
163
CachedUniquePtr.h
Cached unique_ptr with atomic update.
CompetingRIOsOnTrack.h
SCT_ClusterOnTrack.h
InDet::CompetingSCT_ClustersOnTrack
Class for competing SCT_Clusters, it extends the Trk::CompetingRIOsOnTrack base class.
Definition
CompetingSCT_ClustersOnTrack.h:45
InDet::CompetingSCT_ClustersOnTrack::~CompetingSCT_ClustersOnTrack
virtual ~CompetingSCT_ClustersOnTrack()
Destructor.
Definition
CompetingSCT_ClustersOnTrack.cxx:93
InDet::CompetingSCT_ClustersOnTrack::rioOnTrack
const InDet::SCT_ClusterOnTrack & rioOnTrack(unsigned int) const
returns the RIO_OnTrack (also known as ROT) objects depending on the integer
Definition
CompetingSCT_ClustersOnTrack.h:139
InDet::CompetingSCT_ClustersOnTrack::ROTsHaveCommonSurface
bool ROTsHaveCommonSurface(const bool withNonVanishingAssignProb=true) const
Have all the contained ROTs a common associated surface?
Definition
CompetingSCT_ClustersOnTrack.cxx:143
InDet::CompetingSCT_ClustersOnTrack::clone
CompetingSCT_ClustersOnTrack * clone() const
needed to avoid excessive RTTI
Definition
CompetingSCT_ClustersOnTrack.h:121
InDet::CompetingSCT_ClustersOnTrack::numberOfContainedROTs
unsigned int numberOfContainedROTs() const
Number of RIO_OnTracks to be contained by this CompetingRIOsOnTrack.
Definition
CompetingSCT_ClustersOnTrack.h:155
InDet::CompetingSCT_ClustersOnTrack::associatedSurface
const Trk::Surface & associatedSurface() const
returns the surface for the local to global transformation .
Definition
CompetingSCT_ClustersOnTrack.h:127
InDet::CompetingSCT_ClustersOnTrack::setLocalParametersAndErrorMatrix
virtual void setLocalParametersAndErrorMatrix()
recalculate the LocalParameters and ErrorMatrix
Definition
CompetingSCT_ClustersOnTrack.cxx:149
InDet::CompetingSCT_ClustersOnTrack::globalPosition
const Amg::Vector3D & globalPosition() const
Interface method to get the global Position.
Definition
CompetingSCT_ClustersOnTrack.h:145
InDet::CompetingSCT_ClustersOnTrack::m_containedChildRots
std::vector< const InDet::SCT_ClusterOnTrack * > m_containedChildRots
The vector of contained InDet::SCT_ClusterOnTrack objects.
Definition
CompetingSCT_ClustersOnTrack.h:109
InDet::CompetingSCT_ClustersOnTrack::operator=
CompetingSCT_ClustersOnTrack & operator=(const CompetingSCT_ClustersOnTrack &compROT)
Assignment operator.
Definition
CompetingSCT_ClustersOnTrack.cxx:55
InDet::CompetingSCT_ClustersOnTrack::CompetingSCT_ClustersOnTrackTool
friend class CompetingSCT_ClustersOnTrackTool
InDet::CompetingSCT_ClustersOnTrackTool is a friend to allow for updates of the assignment probabilit...
Definition
CompetingSCT_ClustersOnTrack.h:50
InDet::CompetingSCT_ClustersOnTrack::m_globalPosition
CxxUtils::CachedUniquePtr< const Amg::Vector3D > m_globalPosition
The global position.
Definition
CompetingSCT_ClustersOnTrack.h:106
InDet::CompetingSCT_ClustersOnTrack::CompetingSCT_ClustersOnTrack
CompetingSCT_ClustersOnTrack()
Default Constructor for POOL.
Definition
CompetingSCT_ClustersOnTrack.cxx:19
InDet::CompetingSCT_ClustersOnTrack::clearChildRotVector
void clearChildRotVector()
private method to clear the Trk::RIO_OnTrack vector
Definition
CompetingSCT_ClustersOnTrack.cxx:99
InDet::CompetingSCT_ClustersOnTrack::containedROTs
const std::vector< const InDet::SCT_ClusterOnTrack * > & containedROTs() const
returns the vector of SCT_ClusterOnTrack objects .
Definition
CompetingSCT_ClustersOnTrack.h:133
InDet::SCT_ClusterOnTrack
Specific class to represent the SCT measurements.
Definition
SCT_ClusterOnTrack.h:44
Trk::CompetingRIOsOnTrack
Base class for all CompetingRIOsOnTack implementations, extends the common MeasurementBase.
Definition
CompetingRIOsOnTrack.h:64
Trk::MeasurementBase::localParameters
const LocalParameters & localParameters() const
Interface method to get the LocalParameters.
Definition
MeasurementBase.h:132
Trk::Surface
Abstract Base Class for tracking surfaces.
Definition
Surface.h:79
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
CxxUtils::CachedUniquePtr
CachedUniquePtrT< const T > CachedUniquePtr
Definition
CachedUniquePtr.h:114
InDet
Primary Vertex Finder.
Definition
VP1ErrorUtils.h:36
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
dump
-event-from-file
Generated on
for ATLAS Offline Software by
1.17.0