1 |
mlethuil |
1.1 |
#ifndef TRootTrack_h
|
2 |
|
|
#define TRootTrack_h
|
3 |
|
|
|
4 |
|
|
#include "../interface/TRootParticle.h"
|
5 |
|
|
|
6 |
|
|
using namespace std;
|
7 |
|
|
|
8 |
|
|
class TRootTrack : public TRootParticle
|
9 |
|
|
{
|
10 |
|
|
|
11 |
|
|
public:
|
12 |
|
|
|
13 |
|
|
TRootTrack() :
|
14 |
|
|
TRootParticle()
|
15 |
|
|
,numberOfValidPixelHits_(-1)
|
16 |
|
|
,numberOfValidTrackerHits_(-1)
|
17 |
|
|
,chi2_(-1.)
|
18 |
|
|
,d0_(-99999.)
|
19 |
|
|
,d0Error_(-99999.)
|
20 |
|
|
,dz_(-99999.)
|
21 |
|
|
,dzError_(-99999.)
|
22 |
|
|
{;}
|
23 |
|
|
|
24 |
|
|
TRootTrack(const TRootTrack& track) :
|
25 |
|
|
TRootParticle(track)
|
26 |
|
|
,numberOfValidPixelHits_(track.numberOfValidPixelHits_)
|
27 |
|
|
,numberOfValidTrackerHits_(track.numberOfValidTrackerHits_)
|
28 |
|
|
,chi2_(track.chi2_)
|
29 |
|
|
,d0_(track.d0_)
|
30 |
|
|
,d0Error_(track.d0Error_)
|
31 |
|
|
,dz_(track.dz_)
|
32 |
|
|
,dzError_(track.dzError_)
|
33 |
|
|
{;}
|
34 |
|
|
|
35 |
|
|
TRootTrack(Double_t px, Double_t py, Double_t pz, Double_t e) :
|
36 |
|
|
TRootParticle(px,py,pz,e)
|
37 |
|
|
,numberOfValidPixelHits_(-1)
|
38 |
|
|
,numberOfValidTrackerHits_(-1)
|
39 |
|
|
,chi2_(-1.)
|
40 |
|
|
,d0_(-99999.)
|
41 |
|
|
,d0Error_(-99999.)
|
42 |
|
|
,dz_(-99999.)
|
43 |
|
|
,dzError_(-99999.)
|
44 |
|
|
{;}
|
45 |
|
|
|
46 |
|
|
TRootTrack(Double_t px, Double_t py, Double_t pz, Double_t e, Double_t vtx_x, Double_t vtx_y, Double_t vtx_z) :
|
47 |
|
|
TRootParticle(px,py,pz,e,vtx_x,vtx_y,vtx_z)
|
48 |
|
|
,numberOfValidPixelHits_(-1)
|
49 |
|
|
,numberOfValidTrackerHits_(-1)
|
50 |
|
|
,chi2_(-1.)
|
51 |
|
|
,d0_(-99999.)
|
52 |
|
|
,d0Error_(-99999.)
|
53 |
|
|
,dz_(-99999.)
|
54 |
|
|
,dzError_(-99999.)
|
55 |
|
|
{;}
|
56 |
|
|
|
57 |
|
|
TRootTrack(Double_t px, Double_t py, Double_t pz, Double_t e, Double_t vtx_x, Double_t vtx_y, Double_t vtx_z, Int_t type, Float_t charge) :
|
58 |
|
|
TRootParticle(px,py,pz,e,vtx_x,vtx_y,vtx_z,type,charge)
|
59 |
|
|
,numberOfValidPixelHits_(-1)
|
60 |
|
|
,numberOfValidTrackerHits_(-1)
|
61 |
|
|
,chi2_(-1.)
|
62 |
|
|
,d0_(-99999.)
|
63 |
|
|
,d0Error_(-99999.)
|
64 |
|
|
,dz_(-99999.)
|
65 |
|
|
,dzError_(-99999.)
|
66 |
|
|
{;}
|
67 |
|
|
|
68 |
|
|
TRootTrack(const TLorentzVector &momentum) :
|
69 |
|
|
TRootParticle(momentum)
|
70 |
|
|
,numberOfValidPixelHits_(-1)
|
71 |
|
|
,numberOfValidTrackerHits_(-1)
|
72 |
|
|
,chi2_(-1.)
|
73 |
|
|
,d0_(-99999.)
|
74 |
|
|
,d0Error_(-99999.)
|
75 |
|
|
,dz_(-99999.)
|
76 |
|
|
,dzError_(-99999.)
|
77 |
|
|
{;}
|
78 |
|
|
|
79 |
|
|
TRootTrack(const TLorentzVector &momentum, const TVector3 &vertex, Int_t type, Float_t charge) :
|
80 |
|
|
TRootParticle(momentum, vertex, type, charge)
|
81 |
|
|
,numberOfValidPixelHits_(-1)
|
82 |
|
|
,numberOfValidTrackerHits_(-1)
|
83 |
|
|
,chi2_(-1.)
|
84 |
|
|
,d0_(-99999.)
|
85 |
|
|
,d0Error_(-99999.)
|
86 |
|
|
,dz_(-99999.)
|
87 |
|
|
,dzError_(-99999.)
|
88 |
|
|
{;}
|
89 |
|
|
|
90 |
|
|
TRootTrack(Double_t px, Double_t py, Double_t pz, Double_t e, Double_t vtx_x, Double_t vtx_y, Double_t vtx_z, Int_t type, Float_t charge,
|
91 |
|
|
Int_t numberOfValidPixelHits, Int_t numberOfValidTrackerHits, Float_t chi2, Float_t d0, Float_t d0Error, Float_t dz, Float_t dzError) :
|
92 |
|
|
TRootParticle(px,py,pz,e,vtx_x,vtx_y,vtx_z,type,charge)
|
93 |
|
|
,numberOfValidPixelHits_(numberOfValidPixelHits)
|
94 |
|
|
,numberOfValidTrackerHits_(numberOfValidTrackerHits)
|
95 |
|
|
,chi2_(chi2)
|
96 |
|
|
,d0_(d0)
|
97 |
|
|
,d0Error_(d0Error)
|
98 |
|
|
,dz_(dz)
|
99 |
|
|
,dzError_(dzError)
|
100 |
|
|
{;}
|
101 |
|
|
|
102 |
|
|
~TRootTrack() {;}
|
103 |
|
|
|
104 |
|
|
Int_t numberOfValidPixelHits() const { return numberOfValidPixelHits_; }
|
105 |
|
|
Int_t numberOfValidTrackerHits() const { return numberOfValidTrackerHits_; }
|
106 |
|
|
Float_t chi2() const { return chi2_; }
|
107 |
|
|
Float_t d0() const { return d0_; }
|
108 |
|
|
Float_t d0Error() const { return d0Error_; }
|
109 |
|
|
Float_t dz() const { return dz_; }
|
110 |
|
|
Float_t dzError() const { return dzError_; }
|
111 |
lethuill |
1.4 |
virtual TString typeName() const { return "TRootTrack"; }
|
112 |
mlethuil |
1.1 |
|
113 |
|
|
void setNumberOfValidPixelHits(Int_t numberOfValidPixelHits) { numberOfValidPixelHits_ = numberOfValidPixelHits; }
|
114 |
|
|
void setNumberOfValidTrackerHits(Int_t numberOfValidTrackerHits) { numberOfValidTrackerHits_ = numberOfValidTrackerHits; }
|
115 |
|
|
void setChi2(Float_t chi2) { chi2_ = chi2; }
|
116 |
|
|
void setD0(Float_t d0) { d0_ = d0; }
|
117 |
|
|
void setD0Error(Float_t d0Error) { d0Error_ = d0Error; }
|
118 |
|
|
void setDz(Float_t dz) { dz_ = dz; }
|
119 |
|
|
void setDzError(Float_t dzError) { dzError_ = dzError; }
|
120 |
|
|
|
121 |
|
|
friend std::ostream& operator<< (std::ostream& stream, const TRootTrack& track) {
|
122 |
lethuill |
1.2 |
stream << "TRootTrack - Charge=" << setw(2) << track.charge() << " (Et,eta,phi)=("<< setw(10) << track.Et() <<","<< setw(10) << track.Eta() <<","<< setw(10) << track.Phi() << ")"
|
123 |
|
|
<< " vertex(x,y,z)=("<< setw(12) << track.vx() <<","<< setw(12) << track.vy() <<","<< setw(12) << track.vz() << ")"
|
124 |
|
|
<< " chi2="<< setw(8) << track.chi2() <<" nPxlHits="<< setw(2) << track.numberOfValidPixelHits() <<" nTkHits="<< setw(3) << track.numberOfValidTrackerHits()
|
125 |
|
|
<< " d0="<< setw(12) << track.d0() <<" +- "<< setw(12) << track.d0Error() <<" dz="<< setw(10) << track.dz() << " +- " << setw(10) << track.dzError();
|
126 |
mlethuil |
1.1 |
return stream;
|
127 |
|
|
};
|
128 |
|
|
|
129 |
|
|
|
130 |
|
|
private:
|
131 |
|
|
|
132 |
|
|
Int_t numberOfValidPixelHits_;
|
133 |
|
|
Int_t numberOfValidTrackerHits_;
|
134 |
|
|
Float_t chi2_;
|
135 |
|
|
Float_t d0_;
|
136 |
|
|
Float_t d0Error_;
|
137 |
|
|
Float_t dz_;
|
138 |
|
|
Float_t dzError_;
|
139 |
|
|
|
140 |
lethuill |
1.3 |
ClassDef (TRootTrack,1);
|
141 |
mlethuil |
1.1 |
};
|
142 |
|
|
|
143 |
|
|
#endif
|