CMS 3D CMS Logo

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() {}
31 
33  ~Track() override;
34 
36  Track(double chi2,
37  double ndof,
38  const Point& referencePoint,
39  const Vector& momentum,
40  int charge,
41  const CovarianceMatrix&,
44  float t0 = 0,
45  float beta = 0,
46  float covt0t0 = -1.,
47  float covbetabeta = -1.);
48 
50  bool outerOk() const { return extra_->outerOk(); }
51 
53  bool innerOk() const { return extra_->innerOk(); }
54 
56  const math::XYZPoint& innerPosition() const { return extra_->innerPosition(); }
57 
59  const math::XYZVector& innerMomentum() const { return extra_->innerMomentum(); }
60 
62  const math::XYZPoint& outerPosition() const { return extra_->outerPosition(); }
63 
65  const math::XYZVector& outerMomentum() const { return extra_->outerMomentum(); }
66 
68  CovarianceMatrix outerStateCovariance() const { return extra_->outerStateCovariance(); }
69 
71  CovarianceMatrix innerStateCovariance() const { return extra_->innerStateCovariance(); }
72 
75 
77 
79  unsigned int outerDetId() const { return extra_->outerDetId(); }
80 
82  unsigned int innerDetId() const { return extra_->innerDetId(); }
83 
85  auto recHits() const { return extra_->recHits(); }
86 
88  trackingRecHit_iterator recHitsBegin() const { return extra_->recHitsBegin(); }
89 
91  trackingRecHit_iterator recHitsEnd() const { return extra_->recHitsEnd(); }
92 
94  TrackingRecHitRef recHit(size_t i) const { return extra_->recHit(i); }
95 
97  size_t recHitsSize() const { return extra_->recHitsSize(); }
98 
100  double outerPx() const { return extra_->outerPx(); }
101 
103  double outerPy() const { return extra_->outerPy(); }
104 
106  double outerPz() const { return extra_->outerPz(); }
107 
109  double outerX() const { return extra_->outerX(); }
110 
112  double outerY() const { return extra_->outerY(); }
113 
115  double outerZ() const { return extra_->outerZ(); }
116 
118  double outerP() const { return extra_->outerP(); }
119 
121  double outerPt() const { return extra_->outerPt(); }
122 
124  double outerPhi() const { return extra_->outerPhi(); }
125 
127  double outerEta() const { return extra_->outerEta(); }
128 
130  double outerTheta() const { return extra_->outerTheta(); }
131 
133  double outerRadius() const { return extra_->outerRadius(); }
134 
136  void setExtra(const TrackExtraRef& ref) { extra_ = ref; }
137 
139  const TrackExtraRef& extra() const { return extra_; }
140 
142  unsigned short found() const { return numberOfValidHits(); }
143 
145  unsigned short lost() const { return numberOfLostHits(); }
146 
148  const PropagationDirection& seedDirection() const { return extra_->seedDirection(); }
149 
155  const edm::RefToBase<TrajectorySeed>& seedRef() const { return extra_->seedRef(); }
156 
158  const TrackResiduals& residuals() const { return extra_->residuals(); }
159 
160  private:
163  };
164 
165 } // namespace reco
166 
167 #endif
const edm::RefToBase< TrajectorySeed > & seedRef() const
Definition: Track.h:155
double t0() const
time at the reference point
Definition: TrackBase.h:635
const Point & referencePoint() const
Reference point on the track.
Definition: TrackBase.h:632
unsigned short lost() const
Number of lost (=invalid) hits on track.
Definition: Track.h:145
~Track() override
virtual destructor
Definition: Track.cc:34
double outerPy() const
y coordinate of momentum vector at the outermost hit position
Definition: Track.h:103
const TrackExtraRef & extra() const
reference to "extra" object
Definition: Track.h:139
TrackExtraRef extra_
Reference to additional information stored only on RECO.
Definition: Track.h:162
size_t recHitsSize() const
Get number of RecHits. (Warning, this includes invalid hits, which are not physical hits)...
Definition: Track.h:97
CovarianceMatrix & fillInner(CovarianceMatrix &v) const
Definition: Track.h:76
double outerP() const
magnitude of momentum vector at the outermost hit position
Definition: Track.h:118
bool innerOk() const
return true if the innermost hit is valid
Definition: Track.h:53
unsigned short numberOfLostHits() const
number of cases where track crossed a layer without getting a hit.
Definition: TrackBase.h:743
PropagationDirection
const Vector & momentum() const
track momentum vector
Definition: TrackBase.h:629
const math::XYZPoint & outerPosition() const
position of the outermost hit
Definition: Track.h:62
Track()
default constructor
Definition: Track.h:30
TrackAlgorithm
track algorithm
Definition: TrackBase.h:89
double outerZ() const
z coordinate of the outermost hit position
Definition: Track.h:115
const math::XYZPoint & innerPosition() const
position of the innermost hit
Definition: Track.h:56
double beta() const
velocity at the reference point in natural units
Definition: TrackBase.h:638
double chi2() const
chi-squared of the fit
Definition: TrackBase.h:566
double ndof() const
number of degrees of freedom of the fit
Definition: TrackBase.h:569
CovarianceMatrix outerStateCovariance() const
outermost trajectory state curvilinear errors
Definition: Track.h:68
unsigned int outerDetId() const
DetId of the detector on which surface the outermost state is located.
Definition: Track.h:79
auto recHits() const
Access to reconstructed hits on the track.
Definition: Track.h:85
#define CMS_THREAD_SAFE
unsigned short numberOfValidHits() const
number of valid hits found
Definition: TrackBase.h:740
double outerX() const
x coordinate of the outermost hit position
Definition: Track.h:109
trackingRecHit_iterator recHitsBegin() const
Iterator to first hit on the track.
Definition: Track.h:88
double outerPz() const
z coordinate of momentum vector at the outermost hit position
Definition: Track.h:106
double outerPt() const
transverse momentum at the outermost hit position
Definition: Track.h:121
double outerRadius() const
polar radius of the outermost hit position
Definition: Track.h:133
double outerEta() const
pseudorapidity of the momentum vector at the outermost hit position
Definition: Track.h:127
void setExtra(const TrackExtraRef &ref)
set reference to "extra" object
Definition: Track.h:136
const math::XYZVector & outerMomentum() const
momentum vector at the outermost hit position
Definition: Track.h:65
bool outerOk() const
return true if the outermost hit is valid
Definition: Track.h:50
const PropagationDirection & seedDirection() const
direction of how the hits were sorted in the original seed
Definition: Track.h:148
XYZVectorD XYZVector
spatial vector with cartesian internal representation
Definition: Vector3D.h:31
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:12
CovarianceMatrix innerStateCovariance() const
innermost trajectory state curvilinear errors
Definition: Track.h:71
This class analyses the reconstruction quality for a given track.
Definition: TrackQuality.h:28
bool quality(const TrackQuality) const
Track quality.
Definition: TrackBase.h:531
double covt0t0() const
error on t0
Definition: TrackBase.h:728
fixed size matrix
Structure Point Contains parameters of Gaussian fits to DMRs.
Definition: DMRtrends.cc:57
const math::XYZVector & innerMomentum() const
momentum vector at the innermost hit position
Definition: Track.h:59
TrackingRecHitRef recHit(size_t i) const
Get i-th hit on the track.
Definition: Track.h:94
unsigned short found() const
Number of valid hits on track.
Definition: Track.h:142
double outerY() const
y coordinate of the outermost hit position
Definition: Track.h:112
const TrackResiduals & residuals() const
get the residuals
Definition: Track.h:158
int charge() const
track electric charge
Definition: TrackBase.h:575
double outerTheta() const
polar angle of the momentum vector at the outermost hit position
Definition: Track.h:130
unsigned int innerDetId() const
DetId of the detector on which surface the innermost state is located.
Definition: Track.h:82
math::XYZVector Vector
spatial vector
Definition: TrackBase.h:77
double outerPhi() const
azimuthal angle of the momentum vector at the outermost hit position
Definition: Track.h:124
CovarianceMatrix & fillOuter(CovarianceMatrix &v) const
fill outermost trajectory state curvilinear errors
Definition: Track.h:74
double outerPx() const
x coordinate of momentum vector at the outermost hit position
Definition: Track.h:100
trackingRecHit_iterator recHitsEnd() const
Iterator to last hit on the track.
Definition: Track.h:91