CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Private Attributes
reco::TrackExtra Class Reference

#include <DataFormats/TrackReco/interface/TrackExtra.h>

Inheritance diagram for reco::TrackExtra:
reco::TrackExtraBase

Public Types

enum  { dimension = 5 }
 tracker parameter dimension More...
 
enum  { covarianceSize = dimension * (dimension + 1) / 2 }
 track error matrix size More...
 
typedef math::Error< 5 >::type CovarianceMatrix
 5 parameter covariance matrix More...
 
typedef unsigned int index
 index type More...
 
typedef math::XYZPoint Point
 point in the space More...
 
typedef math::XYZVector Vector
 spatial vector More...
 

Public Member Functions

CovarianceMatrixfillInner (CovarianceMatrix &v) const
 fill outermost trajectory state curvilinear errors More...
 
CovarianceMatrixfillOuter (CovarianceMatrix &v) const
 fill outermost trajectory state curvilinear errors More...
 
unsigned int innerDetId () const
 DetId of the detector on which surface the innermost state is located. More...
 
const VectorinnerMomentum () const
 momentum vector at innermost hit position More...
 
bool innerOk () const
 returns true if the innermost hit is valid More...
 
const PointinnerPosition () const
 innermost hit position More...
 
CovarianceMatrix innerStateCovariance () const
 innermost trajectory state curvilinear errors More...
 
unsigned int outerDetId () const
 DetId of the detector on which surface the outermost state is located. More...
 
double outerEta () const
 pseudorapidity the momentum vector at the outermost hit position More...
 
const VectorouterMomentum () const
 momentum vector at outermost hit position More...
 
bool outerOk () const
 returns true if the outermost hit is valid More...
 
double outerP () const
 magnitude of momentum vector at the outermost hit position More...
 
double outerPhi () const
 azimuthal angle of the momentum vector at the outermost hit position More...
 
const PointouterPosition () const
 outermost hit position More...
 
double outerPt () const
 transverse momentum at the outermost hit position More...
 
double outerPx () const
 x coordinate of momentum vector at the outermost hit position More...
 
double outerPy () const
 y coordinate of momentum vector at the outermost hit position More...
 
double outerPz () const
 z coordinate of momentum vector at the outermost hit position More...
 
double outerRadius () const
 polar radius of the outermost hit position More...
 
CovarianceMatrix outerStateCovariance () const
 outermost trajectory state curvilinear errors More...
 
double outerTheta () const
 polar angle of the momentum vector at the outermost hit position More...
 
double outerX () const
 x coordinate the outermost hit position More...
 
double outerY () const
 y coordinate the outermost hit position More...
 
double outerZ () const
 z coordinate the outermost hit position More...
 
const TrackResidualsresiduals () const
 get the residuals More...
 
PropagationDirection seedDirection () const
 
edm::RefToBase< TrajectorySeedseedRef () const
 
void setResiduals (const TrackResiduals &r)
 set the residuals More...
 
void setSeedRef (edm::RefToBase< TrajectorySeed > &r)
 
 TrackExtra ()
 default constructor More...
 
 TrackExtra (const Point &outerPosition, const Vector &outerMomentum, bool ok, const Point &innerPosition, const Vector &innerMomentum, bool iok, const CovarianceMatrix &outerState, unsigned int outerId, const CovarianceMatrix &innerState, unsigned int innerId, PropagationDirection seedDir, edm::RefToBase< TrajectorySeed > seedRef=edm::RefToBase< TrajectorySeed >())
 constructor from outermost/innermost position and momentum and Seed information More...
 
- Public Member Functions inherited from reco::TrackExtraBase
unsigned int firstRecHit () const
 
TrackingRecHitRef recHit (unsigned int i) const
 get i-th recHit More...
 
TrackingRecHitRef recHitRef (unsigned int i) const
 get a ref to i-th recHit More...
 
trackingRecHit_iterator recHitsBegin () const
 first iterator over RecHits More...
 
trackingRecHit_iterator recHitsEnd () const
 last iterator over RecHits More...
 
TrackingRecHitCollection const & recHitsProduct () const
 
unsigned int recHitsSize () const
 number of RecHits More...
 
void setHits (TrackingRecHitRefProd const &prod, unsigned firstH, unsigned int nH)
 
 TrackExtraBase ()
 default constructor More...
 

Private Attributes

float innerCovariance_ [covarianceSize]
 innermost trajectory state More...
 
unsigned int innerDetId_
 
Vector innerMomentum_
 momentum vector at innermost hit position More...
 
bool innerOk_
 innermost hit validity flag More...
 
Point innerPosition_
 innermost hit position More...
 
float outerCovariance_ [covarianceSize]
 outermost trajectory state curvilinear errors More...
 
unsigned int outerDetId_
 
Vector outerMomentum_
 momentum vector at outermost hit position More...
 
bool outerOk_
 outermost hit validity flag More...
 
Point outerPosition_
 outermost hit position More...
 
PropagationDirection seedDir_
 
edm::RefToBase< TrajectorySeedseedRef_
 
TrackResiduals trackResiduals_
 unbiased track residuals More...
 

Detailed Description

Additional information about a reconstructed track. It is stored in RECO and supplements the basic information stored in the Track class that is stored on AOD only. If you wish to use information in the TrackExtra class, you should access it via the reference supplied in the Track class.

Author
Luca Lista, INFN

Definition at line 27 of file TrackExtra.h.

Member Typedef Documentation

5 parameter covariance matrix

Definition at line 39 of file TrackExtra.h.

typedef unsigned int reco::TrackExtra::index

index type

Definition at line 41 of file TrackExtra.h.

point in the space

Definition at line 35 of file TrackExtra.h.

spatial vector

Definition at line 37 of file TrackExtra.h.

Member Enumeration Documentation

anonymous enum

tracker parameter dimension

Enumerator
dimension 

Definition at line 31 of file TrackExtra.h.

anonymous enum

track error matrix size

Enumerator
covarianceSize 

Definition at line 33 of file TrackExtra.h.

Constructor & Destructor Documentation

reco::TrackExtra::TrackExtra ( )
inline

default constructor

Definition at line 44 of file TrackExtra.h.

References dimension, i, customizeTrackingMonitorSeedNumber::idx, innerCovariance_, j, and outerCovariance_.

44  :
46  outerOk_(false),
47  outerDetId_(0),
50  innerOk_(false),
51  innerDetId_(0),
53  seedRef_(),
54  trackResiduals_() {
55  index idx = 0;
56  for (index i = 0; i < dimension; ++ i) {
57  for (index j = 0; j <= i; ++ j) {
58  outerCovariance_[idx] = 0;
59  innerCovariance_[idx] = 0;
60  ++idx;
61  }
62  }
63  }
bool innerOk_
innermost hit validity flag
Definition: TrackExtra.h:206
Vector outerMomentum_
momentum vector at outermost hit position
Definition: TrackExtra.h:193
int i
Definition: DBlmapReader.cc:9
bool outerOk_
outermost hit validity flag
Definition: TrackExtra.h:195
float outerCovariance_[covarianceSize]
outermost trajectory state curvilinear errors
Definition: TrackExtra.h:197
TrackResiduals trackResiduals_
unbiased track residuals
Definition: TrackExtra.h:215
edm::RefToBase< TrajectorySeed > seedRef_
Definition: TrackExtra.h:212
int j
Definition: DBlmapReader.cc:9
unsigned int index
index type
Definition: TrackExtra.h:41
unsigned int outerDetId_
Definition: TrackExtra.h:198
Vector innerMomentum_
momentum vector at innermost hit position
Definition: TrackExtra.h:204
unsigned int innerDetId_
Definition: TrackExtra.h:209
tuple idx
DEBUGGING if hasattr(process,&quot;trackMonIterativeTracking2012&quot;): print &quot;trackMonIterativeTracking2012 D...
Point innerPosition_
innermost hit position
Definition: TrackExtra.h:202
float innerCovariance_[covarianceSize]
innermost trajectory state
Definition: TrackExtra.h:208
PropagationDirection seedDir_
Definition: TrackExtra.h:211
TrackExtra::TrackExtra ( const Point outerPosition,
const Vector outerMomentum,
bool  ok,
const Point innerPosition,
const Vector innerMomentum,
bool  iok,
const CovarianceMatrix outerState,
unsigned int  outerId,
const CovarianceMatrix innerState,
unsigned int  innerId,
PropagationDirection  seedDir,
edm::RefToBase< TrajectorySeed seedRef = edm::RefToBase<TrajectorySeed>() 
)

constructor from outermost/innermost position and momentum and Seed information

Definition at line 6 of file TrackExtra.cc.

References dimension, i, customizeTrackingMonitorSeedNumber::idx, innerCovariance_, j, and outerCovariance_.

11  :
12 
15  outerMomentum_(outerMomentum),
16  outerOk_(ok),
17  outerDetId_(outerId),
19  innerMomentum_(innerMomentum),
20  innerOk_(iok),
21  innerDetId_(innerId),
22  seedDir_(seedDir),
23  seedRef_(seedRef)
24 {
25  index idx = 0;
26  for (index i = 0; i < dimension; ++i) {
27  for (index j = 0; j <= i; ++j) {
28  outerCovariance_[idx] = outerCov(i, j);
29  innerCovariance_[idx] = innerCov(i, j);
30  ++idx;
31  }
32  }
33 }
bool innerOk_
innermost hit validity flag
Definition: TrackExtra.h:206
Vector outerMomentum_
momentum vector at outermost hit position
Definition: TrackExtra.h:193
int i
Definition: DBlmapReader.cc:9
bool outerOk_
outermost hit validity flag
Definition: TrackExtra.h:195
float outerCovariance_[covarianceSize]
outermost trajectory state curvilinear errors
Definition: TrackExtra.h:197
edm::RefToBase< TrajectorySeed > seedRef_
Definition: TrackExtra.h:212
int j
Definition: DBlmapReader.cc:9
unsigned int index
index type
Definition: TrackExtra.h:41
unsigned int outerDetId_
Definition: TrackExtra.h:198
Vector innerMomentum_
momentum vector at innermost hit position
Definition: TrackExtra.h:204
const Point & innerPosition() const
innermost hit position
Definition: TrackExtra.h:86
TrackExtraBase()
default constructor
unsigned int innerDetId_
Definition: TrackExtra.h:209
tuple idx
DEBUGGING if hasattr(process,&quot;trackMonIterativeTracking2012&quot;): print &quot;trackMonIterativeTracking2012 D...
Point innerPosition_
innermost hit position
Definition: TrackExtra.h:202
Point outerPosition_
outermost hit position
Definition: TrackExtra.h:191
float innerCovariance_[covarianceSize]
innermost trajectory state
Definition: TrackExtra.h:208
const Point & outerPosition() const
outermost hit position
Definition: TrackExtra.h:74
PropagationDirection seedDir_
Definition: TrackExtra.h:211

Member Function Documentation

TrackExtra::CovarianceMatrix & TrackExtra::fillInner ( CovarianceMatrix v) const

fill outermost trajectory state curvilinear errors

Definition at line 54 of file TrackExtra.cc.

References reco::fillCovariance(), and innerCovariance_.

55 {
57 }
PerigeeCovarianceMatrix & fillCovariance(PerigeeCovarianceMatrix &v, const float *data)
float innerCovariance_[covarianceSize]
innermost trajectory state
Definition: TrackExtra.h:208
TrackExtra::CovarianceMatrix & TrackExtra::fillOuter ( CovarianceMatrix v) const

fill outermost trajectory state curvilinear errors

Definition at line 49 of file TrackExtra.cc.

References reco::fillCovariance(), and outerCovariance_.

50 {
52 }
float outerCovariance_[covarianceSize]
outermost trajectory state curvilinear errors
Definition: TrackExtra.h:197
PerigeeCovarianceMatrix & fillCovariance(PerigeeCovarianceMatrix &v, const float *data)
unsigned int reco::TrackExtra::innerDetId ( ) const
inline

DetId of the detector on which surface the innermost state is located.

Definition at line 159 of file TrackExtra.h.

References innerDetId_.

159  {
160  return innerDetId_;
161  }
unsigned int innerDetId_
Definition: TrackExtra.h:209
const Vector& reco::TrackExtra::innerMomentum ( ) const
inline

momentum vector at innermost hit position

Definition at line 90 of file TrackExtra.h.

References innerMomentum_.

90  {
91  return innerMomentum_;
92  }
Vector innerMomentum_
momentum vector at innermost hit position
Definition: TrackExtra.h:204
bool reco::TrackExtra::innerOk ( ) const
inline

returns true if the innermost hit is valid

Definition at line 94 of file TrackExtra.h.

References innerOk_.

94  {
95  return innerOk_;
96  }
bool innerOk_
innermost hit validity flag
Definition: TrackExtra.h:206
const Point& reco::TrackExtra::innerPosition ( ) const
inline

innermost hit position

Definition at line 86 of file TrackExtra.h.

References innerPosition_.

86  {
87  return innerPosition_;
88  }
Point innerPosition_
innermost hit position
Definition: TrackExtra.h:202
TrackExtra::CovarianceMatrix TrackExtra::innerStateCovariance ( ) const

innermost trajectory state curvilinear errors

Definition at line 42 of file TrackExtra.cc.

References reco::fillCovariance(), innerCovariance_, and findQualityFiles::v.

43 {
46  return v;
47 }
PerigeeCovarianceMatrix & fillCovariance(PerigeeCovarianceMatrix &v, const float *data)
float innerCovariance_[covarianceSize]
innermost trajectory state
Definition: TrackExtra.h:208
unsigned int reco::TrackExtra::outerDetId ( ) const
inline

DetId of the detector on which surface the outermost state is located.

Definition at line 155 of file TrackExtra.h.

References outerDetId_.

155  {
156  return outerDetId_;
157  }
unsigned int outerDetId_
Definition: TrackExtra.h:198
double reco::TrackExtra::outerEta ( ) const
inline

pseudorapidity the momentum vector at the outermost hit position

Definition at line 134 of file TrackExtra.h.

References outerMomentum().

134  {
135  return outerMomentum().Eta();
136  }
const Vector & outerMomentum() const
momentum vector at outermost hit position
Definition: TrackExtra.h:78
const Vector& reco::TrackExtra::outerMomentum ( ) const
inline

momentum vector at outermost hit position

Definition at line 78 of file TrackExtra.h.

References outerMomentum_.

Referenced by outerEta(), outerP(), outerPhi(), outerPt(), and outerTheta().

78  {
79  return outerMomentum_;
80  }
Vector outerMomentum_
momentum vector at outermost hit position
Definition: TrackExtra.h:193
bool reco::TrackExtra::outerOk ( ) const
inline

returns true if the outermost hit is valid

Definition at line 82 of file TrackExtra.h.

References outerOk_.

82  {
83  return outerOk_;
84  }
bool outerOk_
outermost hit validity flag
Definition: TrackExtra.h:195
double reco::TrackExtra::outerP ( ) const
inline

magnitude of momentum vector at the outermost hit position

Definition at line 122 of file TrackExtra.h.

References outerMomentum().

122  {
123  return outerMomentum().R();
124  }
const Vector & outerMomentum() const
momentum vector at outermost hit position
Definition: TrackExtra.h:78
double reco::TrackExtra::outerPhi ( ) const
inline

azimuthal angle of the momentum vector at the outermost hit position

Definition at line 130 of file TrackExtra.h.

References outerMomentum().

130  {
131  return outerMomentum().Phi();
132  }
const Vector & outerMomentum() const
momentum vector at outermost hit position
Definition: TrackExtra.h:78
const Point& reco::TrackExtra::outerPosition ( ) const
inline

outermost hit position

Definition at line 74 of file TrackExtra.h.

References outerPosition_.

Referenced by outerRadius().

74  {
75  return outerPosition_;
76  }
Point outerPosition_
outermost hit position
Definition: TrackExtra.h:191
double reco::TrackExtra::outerPt ( ) const
inline

transverse momentum at the outermost hit position

Definition at line 126 of file TrackExtra.h.

References outerMomentum().

126  {
127  return outerMomentum().Rho();
128  }
const Vector & outerMomentum() const
momentum vector at outermost hit position
Definition: TrackExtra.h:78
double reco::TrackExtra::outerPx ( ) const
inline

x coordinate of momentum vector at the outermost hit position

Definition at line 98 of file TrackExtra.h.

References outerMomentum_.

98  {
99  return outerMomentum_.X();
100  }
Vector outerMomentum_
momentum vector at outermost hit position
Definition: TrackExtra.h:193
double reco::TrackExtra::outerPy ( ) const
inline

y coordinate of momentum vector at the outermost hit position

Definition at line 102 of file TrackExtra.h.

References outerMomentum_.

102  {
103  return outerMomentum_.Y();
104  }
Vector outerMomentum_
momentum vector at outermost hit position
Definition: TrackExtra.h:193
double reco::TrackExtra::outerPz ( ) const
inline

z coordinate of momentum vector at the outermost hit position

Definition at line 106 of file TrackExtra.h.

References outerMomentum_.

106  {
107  return outerMomentum_.Z();
108  }
Vector outerMomentum_
momentum vector at outermost hit position
Definition: TrackExtra.h:193
double reco::TrackExtra::outerRadius ( ) const
inline

polar radius of the outermost hit position

Definition at line 142 of file TrackExtra.h.

References outerPosition().

142  {
143  return outerPosition().Rho();
144  }
const Point & outerPosition() const
outermost hit position
Definition: TrackExtra.h:74
TrackExtra::CovarianceMatrix TrackExtra::outerStateCovariance ( ) const

outermost trajectory state curvilinear errors

Definition at line 35 of file TrackExtra.cc.

References reco::fillCovariance(), outerCovariance_, and findQualityFiles::v.

36 {
39  return v;
40 }
float outerCovariance_[covarianceSize]
outermost trajectory state curvilinear errors
Definition: TrackExtra.h:197
PerigeeCovarianceMatrix & fillCovariance(PerigeeCovarianceMatrix &v, const float *data)
double reco::TrackExtra::outerTheta ( ) const
inline

polar angle of the momentum vector at the outermost hit position

Definition at line 138 of file TrackExtra.h.

References outerMomentum().

138  {
139  return outerMomentum().Theta();
140  }
const Vector & outerMomentum() const
momentum vector at outermost hit position
Definition: TrackExtra.h:78
double reco::TrackExtra::outerX ( ) const
inline

x coordinate the outermost hit position

Definition at line 110 of file TrackExtra.h.

References outerPosition_.

110  {
111  return outerPosition_.X();
112  }
Point outerPosition_
outermost hit position
Definition: TrackExtra.h:191
double reco::TrackExtra::outerY ( ) const
inline

y coordinate the outermost hit position

Definition at line 114 of file TrackExtra.h.

References outerPosition_.

114  {
115  return outerPosition_.Y();
116  }
Point outerPosition_
outermost hit position
Definition: TrackExtra.h:191
double reco::TrackExtra::outerZ ( ) const
inline

z coordinate the outermost hit position

Definition at line 118 of file TrackExtra.h.

References outerPosition_.

118  {
119  return outerPosition_.Z();
120  }
Point outerPosition_
outermost hit position
Definition: TrackExtra.h:191
const TrackResiduals& reco::TrackExtra::residuals ( ) const
inline

get the residuals

Definition at line 184 of file TrackExtra.h.

References trackResiduals_.

184  {
185  return trackResiduals_;
186  }
TrackResiduals trackResiduals_
unbiased track residuals
Definition: TrackExtra.h:215
PropagationDirection reco::TrackExtra::seedDirection ( ) const
inline

Definition at line 163 of file TrackExtra.h.

References seedDir_.

163  {
164  return seedDir_;
165  }
PropagationDirection seedDir_
Definition: TrackExtra.h:211
edm::RefToBase<TrajectorySeed> reco::TrackExtra::seedRef ( ) const
inline

return the edm::reference to the trajectory seed in the original seeds collection. If the collection has been dropped from the Event, the reference may be invalid. Its validity should be tested, before the reference is actually used.

Definition at line 172 of file TrackExtra.h.

References seedRef_.

Referenced by ExtraFromSeeds::produce().

172  {
173  return seedRef_;
174  }
edm::RefToBase< TrajectorySeed > seedRef_
Definition: TrackExtra.h:212
void reco::TrackExtra::setResiduals ( const TrackResiduals r)
inline
void reco::TrackExtra::setSeedRef ( edm::RefToBase< TrajectorySeed > &  r)
inline

Definition at line 175 of file TrackExtra.h.

References alignCSCRings::r, and seedRef_.

175  {
176  seedRef_ = r;
177  }
edm::RefToBase< TrajectorySeed > seedRef_
Definition: TrackExtra.h:212

Member Data Documentation

float reco::TrackExtra::innerCovariance_[covarianceSize]
private

innermost trajectory state

Definition at line 208 of file TrackExtra.h.

Referenced by fillInner(), innerStateCovariance(), and TrackExtra().

unsigned int reco::TrackExtra::innerDetId_
private

Definition at line 209 of file TrackExtra.h.

Referenced by innerDetId().

Vector reco::TrackExtra::innerMomentum_
private

momentum vector at innermost hit position

Definition at line 204 of file TrackExtra.h.

Referenced by innerMomentum().

bool reco::TrackExtra::innerOk_
private

innermost hit validity flag

Definition at line 206 of file TrackExtra.h.

Referenced by innerOk().

Point reco::TrackExtra::innerPosition_
private

innermost hit position

Definition at line 202 of file TrackExtra.h.

Referenced by innerPosition().

float reco::TrackExtra::outerCovariance_[covarianceSize]
private

outermost trajectory state curvilinear errors

Definition at line 197 of file TrackExtra.h.

Referenced by fillOuter(), outerStateCovariance(), and TrackExtra().

unsigned int reco::TrackExtra::outerDetId_
private

Definition at line 198 of file TrackExtra.h.

Referenced by outerDetId().

Vector reco::TrackExtra::outerMomentum_
private

momentum vector at outermost hit position

Definition at line 193 of file TrackExtra.h.

Referenced by outerMomentum(), outerPx(), outerPy(), and outerPz().

bool reco::TrackExtra::outerOk_
private

outermost hit validity flag

Definition at line 195 of file TrackExtra.h.

Referenced by outerOk().

Point reco::TrackExtra::outerPosition_
private

outermost hit position

Definition at line 191 of file TrackExtra.h.

Referenced by outerPosition(), outerX(), outerY(), and outerZ().

PropagationDirection reco::TrackExtra::seedDir_
private

Definition at line 211 of file TrackExtra.h.

Referenced by seedDirection().

edm::RefToBase<TrajectorySeed> reco::TrackExtra::seedRef_
private

Definition at line 212 of file TrackExtra.h.

Referenced by seedRef(), and setSeedRef().

TrackResiduals reco::TrackExtra::trackResiduals_
private

unbiased track residuals

Definition at line 215 of file TrackExtra.h.

Referenced by residuals(), and setResiduals().