CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Track.h
Go to the documentation of this file.
1 #ifndef TrackReco_Track_h
2 #define TrackReco_Track_h
3 
24 
25 namespace reco {
26 
27  class Track : public TrackBase {
28  public:
30  Track() { }
32  virtual ~Track();
34  Track( double chi2, double ndof, const Point & referencePoint,
35  const Vector & momentum, int charge, const CovarianceMatrix &,
38  bool outerOk() const { return extra_->outerOk(); }
40  bool innerOk() const { return extra_->innerOk(); }
42  const math::XYZPoint & innerPosition() const { return extra_->innerPosition(); }
43 
45  const math::XYZVector & innerMomentum() const { return extra_->innerMomentum(); }
47  const math::XYZPoint & outerPosition() const { return extra_->outerPosition(); }
49  const math::XYZVector & outerMomentum() const { return extra_->outerMomentum(); }
51  CovarianceMatrix outerStateCovariance() const { return extra_->outerStateCovariance(); }
53  CovarianceMatrix innerStateCovariance() const { return extra_->innerStateCovariance(); }
55  CovarianceMatrix & fillOuter CMS_THREAD_SAFE ( CovarianceMatrix & v ) const { return extra_->fillOuter( v ); }
57  CovarianceMatrix & fillInner CMS_THREAD_SAFE ( CovarianceMatrix & v ) const { return extra_->fillInner( v ); }
59  unsigned int outerDetId() const { return extra_->outerDetId(); }
61  unsigned int innerDetId() const { return extra_->innerDetId(); }
63  trackingRecHit_iterator recHitsBegin() const { return extra_->recHitsBegin(); }
65  trackingRecHit_iterator recHitsEnd() const { return extra_->recHitsEnd(); }
67  TrackingRecHitRef recHit( size_t i ) const { return extra_->recHit( i ); }
69  size_t recHitsSize() const { return extra_->recHitsSize(); }
71  double outerPx() const { return extra_->outerPx(); }
73  double outerPy() const { return extra_->outerPy(); }
75  double outerPz() const { return extra_->outerPz(); }
77  double outerX() const { return extra_->outerX(); }
79  double outerY() const { return extra_->outerY(); }
81  double outerZ() const { return extra_->outerZ(); }
83  double outerP() const { return extra_->outerP(); }
85  double outerPt() const { return extra_->outerPt(); }
87  double outerPhi() const { return extra_->outerPhi(); }
89  double outerEta() const { return extra_->outerEta(); }
91  double outerTheta() const { return extra_->outerTheta(); }
93  double outerRadius() const { return extra_->outerRadius(); }
95  void setExtra( const TrackExtraRef & ref ) { extra_ = ref; }
97  const TrackExtraRef & extra() const { return extra_; }
98 
100  unsigned short found() const { return numberOfValidHits(); }
102  unsigned short lost() const {return numberOfLostHits(); }
103 
105  PropagationDirection seedDirection() const {return extra_->seedDirection();}
106 
112  edm::RefToBase<TrajectorySeed> seedRef() const { return extra_->seedRef(); }
113 
117  const TrackResiduals &residuals () const { return extra_->residuals(); }
120  double residualX (int position) const;
121  double residualY (int position) const;
122 
123  private:
126 
127  };
128 
129 }
130 
131 #endif
int i
Definition: DBlmapReader.cc:9
unsigned short lost() const
Number of lost (=invalid) hits on track.
Definition: Track.h:102
const Vector & momentum() const
track momentum vector
Definition: TrackBase.h:148
double outerPy() const
y coordinate of momentum vector at the outermost hit position
Definition: Track.h:73
const TrackExtraRef & extra() const
reference to &quot;extra&quot; object
Definition: Track.h:97
TrackExtraRef extra_
Reference to additional information stored only on RECO.
Definition: Track.h:125
size_t recHitsSize() const
Get number of RecHits. (Warning, this includes invalid hits, which are not physical hits)...
Definition: Track.h:69
CovarianceMatrix & fillInner(CovarianceMatrix &v) const
fill outermost trajectory state curvilinear errors
Definition: Track.h:57
double outerP() const
magnitude of momentum vector at the outermost hit position
Definition: Track.h:83
bool innerOk() const
return true if the innermost hit is valid
Definition: Track.h:40
unsigned short numberOfLostHits() const
number of cases where track crossed a layer without getting a hit.
Definition: TrackBase.h:232
PropagationDirection
const math::XYZPoint & outerPosition() const
position of the outermost hit
Definition: Track.h:47
const Point & referencePoint() const
Reference point on the track.
Definition: TrackBase.h:151
Track()
default constructor
Definition: Track.h:30
TrackAlgorithm
track algorithm
Definition: TrackBase.h:80
double outerZ() const
z coordinate of the outermost hit position
Definition: Track.h:81
const math::XYZPoint & innerPosition() const
position of the innermost hit
Definition: Track.h:42
virtual ~Track()
virtual destructor
Definition: Track.cc:11
fixed size vector
Definition: Vector.h:31
double chi2() const
chi-squared of the fit
Definition: TrackBase.h:105
double ndof() const
number of degrees of freedom of the fit
Definition: TrackBase.h:107
CovarianceMatrix outerStateCovariance() const
outermost trajectory state curvilinear errors
Definition: Track.h:51
math::XYZPoint Point
double residualX(int position) const
Definition: Track.cc:14
unsigned int outerDetId() const
DetId of the detector on which surface the outermost state is located.
Definition: Track.h:59
unsigned short numberOfValidHits() const
number of valid hits found
Definition: TrackBase.h:230
double outerX() const
x coordinate of the outermost hit position
Definition: Track.h:77
trackingRecHit_iterator recHitsBegin() const
Iterator to first hit on the track.
Definition: Track.h:63
double outerPz() const
z coordinate of momentum vector at the outermost hit position
Definition: Track.h:75
double outerPt() const
transverse momentum at the outermost hit position
Definition: Track.h:85
double outerRadius() const
polar radius of the outermost hit position
Definition: Track.h:93
double outerEta() const
pseudorapidity of the momentum vector at the outermost hit position
Definition: Track.h:89
edm::RefToBase< TrajectorySeed > seedRef() const
Definition: Track.h:112
void setExtra(const TrackExtraRef &ref)
set reference to &quot;extra&quot; object
Definition: Track.h:95
const math::XYZVector & outerMomentum() const
momentum vector at the outermost hit position
Definition: Track.h:49
bool outerOk() const
return true if the outermost hit is valid
Definition: Track.h:38
XYZVectorD XYZVector
spatial vector with cartesian internal representation
Definition: Vector3D.h:30
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:12
CovarianceMatrix innerStateCovariance() const
innermost trajectory state curvilinear errors
Definition: Track.h:53
This class analyses the reconstruction quality for a given track.
Definition: TrackQuality.h:28
bool quality(const TrackQuality) const
Track quality.
Definition: TrackBase.h:375
double residualY(int position) const
Definition: Track.cc:19
const math::XYZVector & innerMomentum() const
momentum vector at the innermost hit position
Definition: Track.h:45
static int position[264][3]
Definition: ReadPGInfo.cc:509
TrackingRecHitRef recHit(size_t i) const
Get i-th hit on the track.
Definition: Track.h:67
unsigned short found() const
Number of valid hits on track.
Definition: Track.h:100
double outerY() const
y coordinate of the outermost hit position
Definition: Track.h:79
const TrackResiduals & residuals() const
Definition: Track.h:117
PropagationDirection seedDirection() const
direction of how the hits were sorted in the original seed
Definition: Track.h:105
int charge() const
track electric charge
Definition: TrackBase.h:111
#define CMS_THREAD_SAFE
double outerTheta() const
polar angle of the momentum vector at the outermost hit position
Definition: Track.h:91
unsigned int innerDetId() const
DetId of the detector on which surface the innermost state is located.
Definition: Track.h:61
double outerPhi() const
azimuthal angle of the momentum vector at the outermost hit position
Definition: Track.h:87
CovarianceMatrix & fillOuter(CovarianceMatrix &v) const
fill outermost trajectory state curvilinear errors
Definition: Track.h:55
double outerPx() const
x coordinate of momentum vector at the outermost hit position
Definition: Track.h:71
trackingRecHit_iterator recHitsEnd() const
Iterator to last hit on the track.
Definition: Track.h:65