CMS 3D CMS Logo

CTPPSFastTrack.h
Go to the documentation of this file.
1 #ifndef FastSimDataFormats_CTPPSFastSim_CTPPSFastTrack_H
2 #define FastSimDataFormats_CTPPSFastSim_CTPPSFastTrack_H
3 
7 
8 #include <vector>
10 public:
13  // ~CTPPSFastTrack() {}
15  : thet(0.),
16  thexi(0.),
17  thecellid(0),
18  thetof(0.),
19  thex1(0.),
20  they1(0.),
21  thex2(0.),
22  they2(0.),
23  momentum_(0, 0, 0),
24  vertex_(0, 0, 0) {}
25  // constructor
27  float xi,
28  unsigned int cellid,
29  float tof,
30  float x1,
31  float y1,
32  float x2,
33  float y2,
34  const Vector &momentum,
35  const Point &vertex)
36  : thet(t),
37  thexi(xi),
39  thetof(tof),
40  thex1(x1),
41  they1(y1),
42  thex2(x2),
43  they2(y2),
45  vertex_(vertex) {}
46 
48  //
50  const Vector &momentum() const;
52  const Point &referencePoint() const;
53  // reference point on the track. This method is DEPRECATED, please use referencePoint() instead
54  const Point &vertex() const;
55  /* Time of flight in nanoseconds from the primary interaction
56  * to the entry point. Always positive in a PSimHit,
57  * but may become negative in a SimHit due to bunch assignment.
58  */
59  float timeOfFlight() const { return tof(); }
60 
61  float t() const { return thet; }
62 
63  float xi() const { return thexi; }
64 
65  float tof() const { return thetof; }
66 
67  float x1() const { return thex1; }
68 
69  float y1() const { return they1; }
70 
71  float x2() const { return thex2; }
72 
73  float y2() const { return they2; }
74  float px() const { return momentum_.x(); }
75  float py() const { return momentum_.Y(); }
76  float pz() const { return momentum_.Z(); }
77  float x0() const { return vertex_.x(); }
78  float y0() const { return vertex_.Y(); }
79  float z0() const { return vertex_.Z(); }
80 
81  unsigned int cellid() const { return thecellid; }
82 
83  void setp(const Vector &momentum) { momentum_ = momentum; }
84 
85  void setvertex(const Point &vertex) { vertex_ = vertex; }
86 
87  void settof(float tof) { thetof = tof; }
88 
89  void sett(float t) { thet = t; }
90 
91  void setxi(float xi) { thexi = xi; }
92 
93  void setx1(float x1) { thex1 = x1; }
94 
95  void sety1(float y1) { they1 = y1; }
96 
97  void setx2(float x2) { thex2 = x2; }
98 
99  void sety2(float y2) { they2 = y2; }
100 
101  void setcellid(unsigned int cellid) { thecellid = cellid; }
102 
103 private:
104  float thet;
105  float thexi;
106  unsigned int thecellid;
107  float thetof;
108  float thex1;
109  float they1;
110  float thex2;
111  float they2;
114 };
115 
116 #endif //CTPPSFastTrack_H
void sett(float t)
const Point & vertex() const
float y1() const
ROOT::Math::Plane3D::Vector Vector
Definition: EcalHitMaker.cc:29
float z0() const
float xi() const
float px() const
math::XYZVector Vector
unsigned int cellid() const
void setvertex(const Point &vertex)
void sety1(float y1)
unsigned int thecellid
void setx2(float x2)
float timeOfFlight() const
void setp(const Vector &momentum)
float tof() const
void setx1(float x1)
float x2() const
float y0() const
CTPPSFastTrack(float t, float xi, unsigned int cellid, float tof, float x1, float y1, float x2, float y2, const Vector &momentum, const Point &vertex)
float t() const
void setxi(float xi)
float y2() const
float py() const
float x1() const
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
math::XYZPoint Point
void settof(float tof)
void sety2(float y2)
const Point & referencePoint() const
Reference point on the track.
Structure Point Contains parameters of Gaussian fits to DMRs.
float pz() const
void setcellid(unsigned int cellid)
float x0() const
const Vector & momentum() const
track momentum vector