Main Page
Namespaces
Classes
Package Documentation
DataFormats
TrackReco
interface
TrackExtra.h
Go to the documentation of this file.
1
#ifndef TrackReco_TrackExtra_h
2
#define TrackReco_TrackExtra_h
3
14
#include <Rtypes.h>
15
#include "
DataFormats/Common/interface/RefToBase.h
"
16
#include "
DataFormats/Math/interface/Vector3D.h
"
17
#include "
DataFormats/Math/interface/Point3D.h
"
18
#include "
DataFormats/Math/interface/Error.h
"
19
#include "
DataFormats/TrackReco/interface/TrackExtraBase.h
"
20
#include "
DataFormats/TrackReco/interface/TrackResiduals.h
"
21
#include "
DataFormats/TrajectorySeed/interface/PropagationDirection.h
"
22
#include "
DataFormats/TrajectorySeed/interface/TrajectorySeed.h
"
23
#include "
FWCore/Utilities/interface/thread_safety_macros.h
"
24
25
namespace
reco
26
{
27
class
TrackExtra
:
public
TrackExtraBase
28
{
29
public
:
31
enum
{
dimension
= 5 };
33
enum
{
covarianceSize
=
dimension
* (
dimension
+ 1) / 2 };
35
typedef
math::XYZPoint
Point
;
37
typedef
math::XYZVector
Vector
;
39
typedef
math::Error<5>::type
CovarianceMatrix
;
41
typedef
unsigned
int
index
;
42
44
TrackExtra
():
45
outerMomentum_
(),
46
outerOk_
(
false
),
47
outerDetId_
(0),
48
innerPosition_
(),
49
innerMomentum_
(),
50
innerOk_
(
false
),
51
innerDetId_
(0),
52
seedDir_
(
anyDirection
),
53
seedRef_
() {
54
for
(index
i
= 0;
i
<
covarianceSize
; ++
i
) {
55
outerCovariance_
[
i
] = 0;
56
innerCovariance_
[
i
] = 0;
57
}
58
}
59
61
TrackExtra
(
const
Point &
outerPosition
,
const
Vector &
outerMomentum
,
bool
ok
,
62
const
Point &
innerPosition
,
const
Vector &
innerMomentum
,
bool
iok,
63
const
CovarianceMatrix& outerState,
unsigned
int
outerId,
64
const
CovarianceMatrix& innerState,
unsigned
int
innerId,
65
PropagationDirection
seedDir,
66
edm::RefToBase<TrajectorySeed>
seedRef
=
edm::RefToBase<TrajectorySeed>
());
67
69
const
Point &
outerPosition
()
const
{
70
return
outerPosition_
;
71
}
73
const
Vector &
outerMomentum
()
const
{
74
return
outerMomentum_
;
75
}
77
bool
outerOk
()
const
{
78
return
outerOk_
;
79
}
81
const
Point &
innerPosition
()
const
{
82
return
innerPosition_
;
83
}
85
const
Vector &
innerMomentum
()
const
{
86
return
innerMomentum_
;
87
}
89
bool
innerOk
()
const
{
90
return
innerOk_
;
91
}
93
double
outerPx
()
const
{
94
return
outerMomentum_
.X();
95
}
97
double
outerPy
()
const
{
98
return
outerMomentum_
.Y();
99
}
101
double
outerPz
()
const
{
102
return
outerMomentum_
.Z();
103
}
105
double
outerX
()
const
{
106
return
outerPosition_
.X();
107
}
109
double
outerY
()
const
{
110
return
outerPosition_
.Y();
111
}
113
double
outerZ
()
const
{
114
return
outerPosition_
.Z();
115
}
117
double
outerP
()
const
{
118
return
outerMomentum
().R();
119
}
121
double
outerPt
()
const
{
122
return
outerMomentum
().Rho();
123
}
125
double
outerPhi
()
const
{
126
return
outerMomentum
().Phi();
127
}
129
double
outerEta
()
const
{
130
return
outerMomentum
().Eta();
131
}
133
double
outerTheta
()
const
{
134
return
outerMomentum
().Theta();
135
}
137
double
outerRadius
()
const
{
138
return
outerPosition
().Rho();
139
}
140
142
CovarianceMatrix
outerStateCovariance
()
const
;
144
CovarianceMatrix
innerStateCovariance
()
const
;
146
CovarianceMatrix &
fillOuter
CMS_THREAD_SAFE
(CovarianceMatrix &
v
)
const
;
148
CovarianceMatrix &
fillInner
CMS_THREAD_SAFE
(CovarianceMatrix &v)
const
;
150
unsigned
int
outerDetId
()
const
{
151
return
outerDetId_
;
152
}
154
unsigned
int
innerDetId
()
const
{
155
return
innerDetId_
;
156
}
157
// direction how the hits were sorted in the original seed
158
const
PropagationDirection
&
seedDirection
()
const
{
159
return
seedDir_
;
160
}
161
167
const
edm::RefToBase<TrajectorySeed>
&
seedRef
()
const
{
168
return
seedRef_
;
169
}
170
void
setSeedRef
(
const
edm::RefToBase<TrajectorySeed>
&
r
) {
171
seedRef_
=
r
;
172
}
174
void
setResiduals
(
const
TrackResiduals
&
r
) {
175
trackResiduals_
=
r
;
176
}
177
179
const
TrackResiduals
&
residuals
()
const
{
180
return
trackResiduals_
;
181
}
182
183
private
:
184
186
Point
outerPosition_
;
188
Vector
outerMomentum_
;
190
bool
outerOk_
;
192
float
outerCovariance_
[
covarianceSize
];
193
unsigned
int
outerDetId_
;
194
195
197
Point
innerPosition_
;
199
Vector
innerMomentum_
;
201
bool
innerOk_
;
203
float
innerCovariance_
[
covarianceSize
];
204
unsigned
int
innerDetId_
;
205
206
PropagationDirection
seedDir_
;
207
edm::RefToBase<TrajectorySeed>
seedRef_
;
208
210
TrackResiduals
trackResiduals_
;
211
};
212
213
}
214
215
#endif
216
reco::TrackExtra::innerOk_
bool innerOk_
innermost hit validity flag
Definition:
TrackExtra.h:201
reco::TrackExtra::covarianceSize
Definition:
TrackExtra.h:33
reco::TrackExtra::outerPz
double outerPz() const
z coordinate of momentum vector at the outermost hit position
Definition:
TrackExtra.h:101
reco::TrackExtra::outerMomentum_
Vector outerMomentum_
momentum vector at outermost hit position
Definition:
TrackExtra.h:188
reco::TrackExtra::Vector
math::XYZVector Vector
spatial vector
Definition:
TrackExtra.h:37
reco::TrackExtra::setSeedRef
void setSeedRef(const edm::RefToBase< TrajectorySeed > &r)
Definition:
TrackExtra.h:170
mps_fire.i
i
Definition:
mps_fire.py:329
reco::TrackExtra::outerTheta
double outerTheta() const
polar angle of the momentum vector at the outermost hit position
Definition:
TrackExtra.h:133
reco::TrackExtra::CovarianceMatrix
math::Error< 5 >::type CovarianceMatrix
5 parameter covariance matrix
Definition:
TrackExtra.h:39
anyDirection
Definition:
PropagationDirection.h:4
reco::TrackExtra::outerPt
double outerPt() const
transverse momentum at the outermost hit position
Definition:
TrackExtra.h:121
funct::false
false
Definition:
Factorize.h:35
reco::TrackExtra::outerRadius
double outerRadius() const
polar radius of the outermost hit position
Definition:
TrackExtra.h:137
convertSQLiteXML.ok
bool ok
Definition:
convertSQLiteXML.py:98
reco::TrackExtra::innerDetId
unsigned int innerDetId() const
DetId of the detector on which surface the innermost state is located.
Definition:
TrackExtra.h:154
reco::TrackExtra
Definition:
TrackExtra.h:27
RefToBase.h
thread_safety_macros.h
reco::TrackExtra::outerOk_
bool outerOk_
outermost hit validity flag
Definition:
TrackExtra.h:190
reco::TrackExtra::outerMomentum
const Vector & outerMomentum() const
momentum vector at outermost hit position
Definition:
TrackExtra.h:73
math::Error::type
ErrorD< N >::type type
Definition:
Error.h:33
reco::TrackExtra::residuals
const TrackResiduals & residuals() const
get the residuals
Definition:
TrackExtra.h:179
PropagationDirection
PropagationDirection
Definition:
PropagationDirection.h:4
findQualityFiles.v
v
Definition:
findQualityFiles.py:178
Point3D.h
edm::RefToBase< TrajectorySeed >
reco::TrackExtra::outerX
double outerX() const
x coordinate the outermost hit position
Definition:
TrackExtra.h:105
reco::TrackExtra::outerCovariance_
float outerCovariance_[covarianceSize]
outermost trajectory state curvilinear errors
Definition:
TrackExtra.h:192
reco::TrackExtra::Point
math::XYZPoint Point
point in the space
Definition:
TrackExtra.h:35
reco::TrackExtraBase
Definition:
TrackExtraBase.h:21
Error.h
reco::TrackExtra::seedRef
const edm::RefToBase< TrajectorySeed > & seedRef() const
Definition:
TrackExtra.h:167
reco::TrackExtra::outerP
double outerP() const
magnitude of momentum vector at the outermost hit position
Definition:
TrackExtra.h:117
PropagationDirection.h
reco::TrackExtra::outerStateCovariance
CovarianceMatrix outerStateCovariance() const
outermost trajectory state curvilinear errors
Definition:
TrackExtra.cc:35
reco::TrackExtra::trackResiduals_
TrackResiduals trackResiduals_
unbiased track residuals
Definition:
TrackExtra.h:210
reco::TrackExtra::seedRef_
edm::RefToBase< TrajectorySeed > seedRef_
Definition:
TrackExtra.h:207
reco::TrackExtra::innerMomentum
const Vector & innerMomentum() const
momentum vector at innermost hit position
Definition:
TrackExtra.h:85
reco::TrackExtra::outerPy
double outerPy() const
y coordinate of momentum vector at the outermost hit position
Definition:
TrackExtra.h:97
reco::TrackExtra::index
unsigned int index
index type
Definition:
TrackExtra.h:41
CMS_THREAD_SAFE
#define CMS_THREAD_SAFE
reco::TrackExtra::outerDetId_
unsigned int outerDetId_
Definition:
TrackExtra.h:193
reco::TrackExtra::innerMomentum_
Vector innerMomentum_
momentum vector at innermost hit position
Definition:
TrackExtra.h:199
reco::TrackExtra::innerPosition
const Point & innerPosition() const
innermost hit position
Definition:
TrackExtra.h:81
reco::TrackExtra::innerDetId_
unsigned int innerDetId_
Definition:
TrackExtra.h:204
reco::TrackExtra::outerZ
double outerZ() const
z coordinate the outermost hit position
Definition:
TrackExtra.h:113
reco::TrackExtra::fillInner
CovarianceMatrix & fillInner(CovarianceMatrix &v) const
fill outermost trajectory state curvilinear errors
Definition:
TrackExtra.cc:54
reco::TrackExtra::TrackExtra
TrackExtra()
default constructor
Definition:
TrackExtra.h:44
TrajectorySeed.h
alignCSCRings.r
r
Definition:
alignCSCRings.py:93
reco::TrackExtra::outerPhi
double outerPhi() const
azimuthal angle of the momentum vector at the outermost hit position
Definition:
TrackExtra.h:125
reco::TrackExtra::seedDirection
const PropagationDirection & seedDirection() const
Definition:
TrackExtra.h:158
reco::TrackExtra::dimension
Definition:
TrackExtra.h:31
math::XYZVector
XYZVectorD XYZVector
spatial vector with cartesian internal representation
Definition:
Vector3D.h:30
math::XYZPoint
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition:
Point3D.h:12
reco::TrackExtra::innerPosition_
Point innerPosition_
innermost hit position
Definition:
TrackExtra.h:197
reco::TrackExtra::innerOk
bool innerOk() const
returns true if the innermost hit is valid
Definition:
TrackExtra.h:89
reco::TrackExtra::innerStateCovariance
CovarianceMatrix innerStateCovariance() const
innermost trajectory state curvilinear errors
Definition:
TrackExtra.cc:42
TrackExtraBase.h
reco::TrackExtra::outerPosition_
Point outerPosition_
outermost hit position
Definition:
TrackExtra.h:186
reco
fixed size matrix
Definition:
AlignmentAlgorithmBase.h:43
Vector3D.h
reco::TrackExtra::innerCovariance_
float innerCovariance_[covarianceSize]
innermost trajectory state
Definition:
TrackExtra.h:203
reco::TrackExtra::outerDetId
unsigned int outerDetId() const
DetId of the detector on which surface the outermost state is located.
Definition:
TrackExtra.h:150
reco::TrackResiduals
Definition:
TrackResiduals.h:9
reco::TrackExtra::outerPx
double outerPx() const
x coordinate of momentum vector at the outermost hit position
Definition:
TrackExtra.h:93
reco::TrackExtra::outerY
double outerY() const
y coordinate the outermost hit position
Definition:
TrackExtra.h:109
reco::TrackExtra::outerOk
bool outerOk() const
returns true if the outermost hit is valid
Definition:
TrackExtra.h:77
reco::TrackExtra::outerEta
double outerEta() const
pseudorapidity the momentum vector at the outermost hit position
Definition:
TrackExtra.h:129
TrackResiduals.h
reco::TrackExtra::outerPosition
const Point & outerPosition() const
outermost hit position
Definition:
TrackExtra.h:69
reco::TrackExtra::seedDir_
PropagationDirection seedDir_
Definition:
TrackExtra.h:206
reco::TrackExtra::fillOuter
CovarianceMatrix & fillOuter(CovarianceMatrix &v) const
fill outermost trajectory state curvilinear errors
Definition:
TrackExtra.cc:49
reco::TrackExtra::setResiduals
void setResiduals(const TrackResiduals &r)
set the residuals
Definition:
TrackExtra.h:174
Generated for CMSSW Reference Manual by
1.8.11