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 
4 
8 
9 #include <vector>
11  public:
14  // ~CTPPSFastTrack() {}
15  CTPPSFastTrack() : thet(0.),thexi(0.),thecellid(0),thetof(0.),thex1(0.),they1(0.),thex2(0.),they2(0.),momentum_(0, 0, 0),vertex_(0, 0, 0) {}
16  // constructor
17  CTPPSFastTrack(float t,float xi,unsigned int cellid ,float tof,float x1,float y1,float x2,float y2,const Vector &momentum,const Point &vertex):
18  thet(t),
19  thexi(xi),
20  thecellid(cellid),
21  thetof(tof),
22  thex1(x1),
23  they1(y1),
24  thex2(x2),
25  they2(y2),
26  momentum_(momentum),
27  vertex_(vertex) {}
28 
30  //
32  const Vector &momentum() const;
34  const Point &referencePoint() const;
35  // reference point on the track. This method is DEPRECATED, please use referencePoint() instead
36  const Point &vertex() const ;
37  /* Time of flight in nanoseconds from the primary interaction
38  * to the entry point. Always positive in a PSimHit,
39  * but may become negative in a SimHit due to bunch assignment.
40  */
41  float timeOfFlight() const {return tof();}
42 
43  float t() const {return thet;}
44 
45  float xi() const {return thexi;}
46 
47  float tof() const {return thetof;}
48 
49  float x1() const {return thex1;}
50 
51  float y1() const {return they1;}
52 
53  float x2() const {return thex2;}
54 
55  float y2() const {return they2;}
56  float px() const {return momentum_.x();}
57  float py() const {return momentum_.Y();}
58  float pz() const {return momentum_.Z();}
59  float x0() const {return vertex_.x();}
60  float y0() const {return vertex_.Y();}
61  float z0() const {return vertex_.Z();}
62 
63  unsigned int cellid() const {return thecellid;}
64 
65  void setp(const Vector& momentum ) { momentum_ = momentum; }
66 
67  void setvertex(const Point &vertex) {vertex_ = vertex;}
68 
69  void settof(float tof) {thetof=tof;}
70 
71  void sett(float t){thet = t;}
72 
73  void setxi(float xi){thexi = xi;}
74 
75  void setx1(float x1){thex1 = x1;}
76 
77  void sety1(float y1){they1 = y1;}
78 
79  void setx2(float x2){thex2 = x2;}
80 
81  void sety2(float y2){they2 = y2;}
82 
83  void setcellid(unsigned int cellid ){thecellid=cellid;}
84 
85  private:
86  float thet;
87  float thexi;
88  unsigned int thecellid;
89  float thetof;
90  float thex1;
91  float they1;
92  float thex2;
93  float they2;
94  Vector momentum_;
95  Point vertex_;
96 
97 };
98 
99 #endif //CTPPSFastTrack_H
void sett(float t)
float y2() const
float y1() const
float t() const
float x2() const
const Point & vertex() const
math::XYZVector Vector
void setvertex(const Point &vertex)
void sety1(float y1)
unsigned int thecellid
unsigned int cellid() const
void setx2(float x2)
float pz() const
void setp(const Vector &momentum)
void setx1(float x1)
float x1() 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 z0() const
void setxi(float xi)
float px() const
float timeOfFlight() const
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
math::XYZPoint Point
float xi() const
void settof(float tof)
void sety2(float y2)
const Point & referencePoint() const
Reference point on the track.
float tof() const
float y0() const
float py() const
const Vector & momentum() const
track momentum vector
float x0() const
void setcellid(unsigned int cellid)