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
void add (const TrackingRecHitRef &r)
 add a reference to a RecHit More...
 
TrackingRecHitRef recHit (size_t i) const
 get i-th recHit More...
 
TrackingRecHitRefVector recHits () const
 
trackingRecHit_iterator recHitsBegin () const
 first iterator over RecHits More...
 
trackingRecHit_iterator recHitsEnd () const
 last iterator over RecHits More...
 
size_t recHitsSize () const
 number of RecHits More...
 
 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
Version
Id:
TrackExtra.h,v 1.30 2011/08/03 09:53:09 vlimant Exp

Definition at line 25 of file TrackExtra.h.

Member Typedef Documentation

5 parameter covariance matrix

Definition at line 36 of file TrackExtra.h.

typedef unsigned int reco::TrackExtra::index

index type

Definition at line 38 of file TrackExtra.h.

point in the space

Definition at line 32 of file TrackExtra.h.

spatial vector

Definition at line 34 of file TrackExtra.h.

Member Enumeration Documentation

anonymous enum

tracker parameter dimension

Enumerator
dimension 

Definition at line 28 of file TrackExtra.h.

anonymous enum

track error matrix size

Enumerator
covarianceSize 

Definition at line 30 of file TrackExtra.h.

Constructor & Destructor Documentation

reco::TrackExtra::TrackExtra ( )
inline

default constructor

Definition at line 41 of file TrackExtra.h.

References dimension, i, innerCovariance_, j, and outerCovariance_.

41  :
43  outerOk_(false),
44  outerDetId_(0),
47  innerOk_(false),
48  innerDetId_(0),
50  seedRef_(),
52  {
53  index idx = 0;
54  for( index i = 0; i < dimension; ++ i ) {
55  for( index j = 0; j <= i; ++ j ) {
56  outerCovariance_[ idx ] = 0;
57  innerCovariance_[ idx ] = 0;
58  ++idx;
59  }
60  }
61  }
bool innerOk_
innermost hit validity flag
Definition: TrackExtra.h:154
Vector outerMomentum_
momentum vector at outermost hit position
Definition: TrackExtra.h:141
int i
Definition: DBlmapReader.cc:9
bool outerOk_
outermost hit validity flag
Definition: TrackExtra.h:143
float outerCovariance_[covarianceSize]
outermost trajectory state curvilinear errors
Definition: TrackExtra.h:145
TrackResiduals trackResiduals_
unbiased track residuals
Definition: TrackExtra.h:163
edm::RefToBase< TrajectorySeed > seedRef_
Definition: TrackExtra.h:160
int j
Definition: DBlmapReader.cc:9
unsigned int index
index type
Definition: TrackExtra.h:38
unsigned int outerDetId_
Definition: TrackExtra.h:146
Vector innerMomentum_
momentum vector at innermost hit position
Definition: TrackExtra.h:152
unsigned int innerDetId_
Definition: TrackExtra.h:157
Point innerPosition_
innermost hit position
Definition: TrackExtra.h:150
float innerCovariance_[covarianceSize]
innermost trajectory state
Definition: TrackExtra.h:156
PropagationDirection seedDir_
Definition: TrackExtra.h:159
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 5 of file TrackExtra.cc.

References dimension, i, innerCovariance_, j, and outerCovariance_.

10  :
12  outerPosition_( outerPosition ), outerMomentum_( outerMomentum ), outerOk_( ok ),
13  outerDetId_( outerId ),
14  innerPosition_( innerPosition ), innerMomentum_( innerMomentum ), innerOk_( iok ),
15  innerDetId_( innerId ), seedDir_(seedDir), seedRef_(seedRef) {
16  index idx = 0;
17  for( index i = 0; i < dimension; ++ i ) {
18  for( index j = 0; j <= i; ++ j ) {
19  outerCovariance_[ idx ] = outerCov( i, j );
20  innerCovariance_[ idx ] = innerCov( i, j );
21  ++idx;
22  }
23  }
24 }
bool innerOk_
innermost hit validity flag
Definition: TrackExtra.h:154
Vector outerMomentum_
momentum vector at outermost hit position
Definition: TrackExtra.h:141
int i
Definition: DBlmapReader.cc:9
bool outerOk_
outermost hit validity flag
Definition: TrackExtra.h:143
float outerCovariance_[covarianceSize]
outermost trajectory state curvilinear errors
Definition: TrackExtra.h:145
edm::RefToBase< TrajectorySeed > seedRef_
Definition: TrackExtra.h:160
int j
Definition: DBlmapReader.cc:9
unsigned int index
index type
Definition: TrackExtra.h:38
unsigned int outerDetId_
Definition: TrackExtra.h:146
Vector innerMomentum_
momentum vector at innermost hit position
Definition: TrackExtra.h:152
const Point & innerPosition() const
innermost hit position
Definition: TrackExtra.h:78
TrackExtraBase()
default constructor
unsigned int innerDetId_
Definition: TrackExtra.h:157
Point innerPosition_
innermost hit position
Definition: TrackExtra.h:150
Point outerPosition_
outermost hit position
Definition: TrackExtra.h:139
float innerCovariance_[covarianceSize]
innermost trajectory state
Definition: TrackExtra.h:156
const Point & outerPosition() const
outermost hit position
Definition: TrackExtra.h:72
PropagationDirection seedDir_
Definition: TrackExtra.h:159

Member Function Documentation

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

fill outermost trajectory state curvilinear errors

Definition at line 38 of file TrackExtra.cc.

References reco::fillCovariance(), and innerCovariance_.

38  {
39  return fillCovariance( v, innerCovariance_ );
40 }
PerigeeCovarianceMatrix & fillCovariance(PerigeeCovarianceMatrix &v, const float *data)
float innerCovariance_[covarianceSize]
innermost trajectory state
Definition: TrackExtra.h:156
TrackExtra::CovarianceMatrix & TrackExtra::fillOuter ( CovarianceMatrix v) const

fill outermost trajectory state curvilinear errors

Definition at line 34 of file TrackExtra.cc.

References reco::fillCovariance(), and outerCovariance_.

34  {
35  return fillCovariance( v, outerCovariance_ );
36 }
float outerCovariance_[covarianceSize]
outermost trajectory state curvilinear errors
Definition: TrackExtra.h:145
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 119 of file TrackExtra.h.

References innerDetId_.

119 { return innerDetId_; }
unsigned int innerDetId_
Definition: TrackExtra.h:157
const Vector& reco::TrackExtra::innerMomentum ( ) const
inline

momentum vector at innermost hit position

Definition at line 80 of file TrackExtra.h.

References innerMomentum_.

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

returns true if the innermost hit is valid

Definition at line 82 of file TrackExtra.h.

References innerOk_.

82 { return innerOk_; }
bool innerOk_
innermost hit validity flag
Definition: TrackExtra.h:154
const Point& reco::TrackExtra::innerPosition ( ) const
inline

innermost hit position

Definition at line 78 of file TrackExtra.h.

References innerPosition_.

78 { return innerPosition_; }
Point innerPosition_
innermost hit position
Definition: TrackExtra.h:150
TrackExtra::CovarianceMatrix TrackExtra::innerStateCovariance ( ) const

innermost trajectory state curvilinear errors

Definition at line 30 of file TrackExtra.cc.

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

30  {
32 }
PerigeeCovarianceMatrix & fillCovariance(PerigeeCovarianceMatrix &v, const float *data)
float innerCovariance_[covarianceSize]
innermost trajectory state
Definition: TrackExtra.h:156
mathSSE::Vec4< T > v
unsigned int reco::TrackExtra::outerDetId ( ) const
inline

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

Definition at line 117 of file TrackExtra.h.

References outerDetId_.

117 { return outerDetId_; }
unsigned int outerDetId_
Definition: TrackExtra.h:146
double reco::TrackExtra::outerEta ( ) const
inline

pseudorapidity the momentum vector at the outermost hit position

Definition at line 102 of file TrackExtra.h.

References outerMomentum().

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

momentum vector at outermost hit position

Definition at line 74 of file TrackExtra.h.

References outerMomentum_.

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

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

returns true if the outermost hit is valid

Definition at line 76 of file TrackExtra.h.

References outerOk_.

76 { return outerOk_; }
bool outerOk_
outermost hit validity flag
Definition: TrackExtra.h:143
double reco::TrackExtra::outerP ( ) const
inline

magnitude of momentum vector at the outermost hit position

Definition at line 96 of file TrackExtra.h.

References outerMomentum().

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

azimuthal angle of the momentum vector at the outermost hit position

Definition at line 100 of file TrackExtra.h.

References outerMomentum().

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

outermost hit position

Definition at line 72 of file TrackExtra.h.

References outerPosition_.

Referenced by outerRadius().

72 { return outerPosition_; }
Point outerPosition_
outermost hit position
Definition: TrackExtra.h:139
double reco::TrackExtra::outerPt ( ) const
inline

transverse momentum at the outermost hit position

Definition at line 98 of file TrackExtra.h.

References outerMomentum().

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

x coordinate of momentum vector at the outermost hit position

Definition at line 84 of file TrackExtra.h.

References outerMomentum_.

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

y coordinate of momentum vector at the outermost hit position

Definition at line 86 of file TrackExtra.h.

References outerMomentum_.

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

z coordinate of momentum vector at the outermost hit position

Definition at line 88 of file TrackExtra.h.

References outerMomentum_.

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

polar radius of the outermost hit position

Definition at line 106 of file TrackExtra.h.

References outerPosition().

106 { return outerPosition().Rho(); }
const Point & outerPosition() const
outermost hit position
Definition: TrackExtra.h:72
TrackExtra::CovarianceMatrix TrackExtra::outerStateCovariance ( ) const

outermost trajectory state curvilinear errors

Definition at line 26 of file TrackExtra.cc.

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

26  {
28 }
float outerCovariance_[covarianceSize]
outermost trajectory state curvilinear errors
Definition: TrackExtra.h:145
PerigeeCovarianceMatrix & fillCovariance(PerigeeCovarianceMatrix &v, const float *data)
mathSSE::Vec4< T > v
double reco::TrackExtra::outerTheta ( ) const
inline

polar angle of the momentum vector at the outermost hit position

Definition at line 104 of file TrackExtra.h.

References outerMomentum().

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

x coordinate the outermost hit position

Definition at line 90 of file TrackExtra.h.

References outerPosition_.

90 { return outerPosition_.X(); }
Point outerPosition_
outermost hit position
Definition: TrackExtra.h:139
double reco::TrackExtra::outerY ( ) const
inline

y coordinate the outermost hit position

Definition at line 92 of file TrackExtra.h.

References outerPosition_.

92 { return outerPosition_.Y(); }
Point outerPosition_
outermost hit position
Definition: TrackExtra.h:139
double reco::TrackExtra::outerZ ( ) const
inline

z coordinate the outermost hit position

Definition at line 94 of file TrackExtra.h.

References outerPosition_.

94 { return outerPosition_.Z(); }
Point outerPosition_
outermost hit position
Definition: TrackExtra.h:139
const TrackResiduals& reco::TrackExtra::residuals ( ) const
inline

get the residuals

Definition at line 134 of file TrackExtra.h.

References trackResiduals_.

134 { return trackResiduals_; }
TrackResiduals trackResiduals_
unbiased track residuals
Definition: TrackExtra.h:163
PropagationDirection reco::TrackExtra::seedDirection ( ) const
inline

Definition at line 121 of file TrackExtra.h.

References seedDir_.

121 {return seedDir_;}
PropagationDirection seedDir_
Definition: TrackExtra.h:159
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 128 of file TrackExtra.h.

References seedRef_.

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

Definition at line 129 of file TrackExtra.h.

References alignCSCRings::r, and seedRef_.

129 { seedRef_=r; }
edm::RefToBase< TrajectorySeed > seedRef_
Definition: TrackExtra.h:160

Member Data Documentation

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

innermost trajectory state

Definition at line 156 of file TrackExtra.h.

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

unsigned int reco::TrackExtra::innerDetId_
private

Definition at line 157 of file TrackExtra.h.

Referenced by innerDetId().

Vector reco::TrackExtra::innerMomentum_
private

momentum vector at innermost hit position

Definition at line 152 of file TrackExtra.h.

Referenced by innerMomentum().

bool reco::TrackExtra::innerOk_
private

innermost hit validity flag

Definition at line 154 of file TrackExtra.h.

Referenced by innerOk().

Point reco::TrackExtra::innerPosition_
private

innermost hit position

Definition at line 150 of file TrackExtra.h.

Referenced by innerPosition().

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

outermost trajectory state curvilinear errors

Definition at line 145 of file TrackExtra.h.

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

unsigned int reco::TrackExtra::outerDetId_
private

Definition at line 146 of file TrackExtra.h.

Referenced by outerDetId().

Vector reco::TrackExtra::outerMomentum_
private

momentum vector at outermost hit position

Definition at line 141 of file TrackExtra.h.

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

bool reco::TrackExtra::outerOk_
private

outermost hit validity flag

Definition at line 143 of file TrackExtra.h.

Referenced by outerOk().

Point reco::TrackExtra::outerPosition_
private

outermost hit position

Definition at line 139 of file TrackExtra.h.

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

PropagationDirection reco::TrackExtra::seedDir_
private

Definition at line 159 of file TrackExtra.h.

Referenced by seedDirection().

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

Definition at line 160 of file TrackExtra.h.

Referenced by seedRef(), and setSeedRef().

TrackResiduals reco::TrackExtra::trackResiduals_
private

unbiased track residuals

Definition at line 163 of file TrackExtra.h.

Referenced by residuals(), and setResiduals().