CMS 3D CMS Logo

TotemG4Hit.h
Go to the documentation of this file.
1 #ifndef Forward_TotemG4Hit_h
2 #define Forward_TotemG4Hit_h 1
3 // -*- C++ -*-
4 //
5 // Package: Forward
6 // Class : TotemG4Hit
7 //
25 //
26 // Original Author:
27 // Created: Tue May 16 10:14:34 CEST 2006
28 //
29 
30 // system include files
31 
32 // user include files
33 
34 #include "G4VHit.hh"
36 #include <cstdint>
37 #include <iostream>
38 
39 class TotemG4Hit : public G4VHit {
40 public:
41  // ---------- Constructor and destructor -----------------
42  TotemG4Hit();
43  ~TotemG4Hit() override;
44  TotemG4Hit(const TotemG4Hit& right);
45 
46  // ---------- operators ----------------------------------
47  const TotemG4Hit& operator=(const TotemG4Hit& right);
48  int operator==(const TotemG4Hit&) { return 0; }
49 
50  // ---------- member functions ---------------------------
51  void Draw() override {}
52  void Print() override;
53 
54  math::XYZPoint getEntry() const;
55  void setEntry(double x, double y, double z) { entry.SetCoordinates(x, y, z); }
56 
57  double getEM() const;
58  void setEM(double e);
59 
60  double getHadr() const;
61  void setHadr(double e);
62 
63  double getIncidentEnergy() const;
64  void setIncidentEnergy(double e);
65 
66  int getTrackID() const;
67  void setTrackID(int i);
68 
69  uint32_t getUnitID() const;
70  void setUnitID(uint32_t i);
71 
72  double getTimeSlice() const;
73  void setTimeSlice(double d);
74  int getTimeSliceID() const;
75 
76  void addEnergyDeposit(double em, double hd);
77  void addEnergyDeposit(const TotemG4Hit& aHit);
78 
79  double getEnergyDeposit() const;
80 
81  float getPabs() const;
82  float getTof() const;
83  float getEnergyLoss() const;
84  int getParticleType() const;
85 
86  void setPabs(float e);
87  void setTof(float e);
88  void setEnergyLoss(float e);
89  void setParticleType(short i);
90 
91  float getThetaAtEntry() const;
92  float getPhiAtEntry() const;
93 
94  void setThetaAtEntry(float t);
95  void setPhiAtEntry(float f);
96 
97  float getX() const;
98  float getY() const;
99  float getZ() const;
100  void setX(float t);
101  void setY(float t);
102  void setZ(float t);
103 
104  int getParentId() const;
105  float getVx() const;
106  float getVy() const;
107  float getVz() const;
108 
109  void setParentId(int p);
110  void setVx(float p);
111  void setVy(float p);
112  void setVz(float p);
113 
114 private:
115  math::XYZPoint entry; //Entry point
116  double elem; //EnergyDeposit of EM particles
117  double hadr; //EnergyDeposit of HD particles
118  double theIncidentEnergy; //Energy of the primary particle
119  int theTrackID; //Identification number of the primary
120  //particle
121  uint32_t theUnitID; //Totem Unit Number
122  double theTimeSlice; //Time Slice Identification
123 
124  float theX;
125  float theY;
126  float theZ;
127  float thePabs;
128  float theTof;
131 
136 
138  float theVx;
139  float theVy;
140  float theVz;
141 };
142 
143 std::ostream& operator<<(std::ostream&, const TotemG4Hit&);
144 
145 #endif
void setVz(float p)
Definition: TotemG4Hit.cc:178
double getHadr() const
Definition: TotemG4Hit.cc:120
float theThetaAtEntry
Definition: TotemG4Hit.h:132
float getThetaAtEntry() const
Definition: TotemG4Hit.cc:153
float theTof
Definition: TotemG4Hit.h:128
void setPabs(float e)
Definition: TotemG4Hit.cc:148
float getY() const
Definition: TotemG4Hit.cc:162
float getPabs() const
Definition: TotemG4Hit.cc:143
void setEnergyLoss(float e)
Definition: TotemG4Hit.cc:150
int getTimeSliceID() const
Definition: TotemG4Hit.cc:134
float getTof() const
Definition: TotemG4Hit.cc:144
int theParentId
Definition: TotemG4Hit.h:137
int operator==(const TotemG4Hit &)
Definition: TotemG4Hit.h:48
void setEntry(double x, double y, double z)
Definition: TotemG4Hit.h:55
float theVx
Definition: TotemG4Hit.h:138
void setHadr(double e)
Definition: TotemG4Hit.cc:121
void setX(float t)
Definition: TotemG4Hit.cc:160
float theY
Definition: TotemG4Hit.h:125
double getIncidentEnergy() const
Definition: TotemG4Hit.cc:123
int theTrackID
Definition: TotemG4Hit.h:119
float getPhiAtEntry() const
Definition: TotemG4Hit.cc:154
float theZ
Definition: TotemG4Hit.h:126
void setVy(float p)
Definition: TotemG4Hit.cc:175
uint32_t theUnitID
Definition: TotemG4Hit.h:121
void setTimeSlice(double d)
Definition: TotemG4Hit.cc:133
double theTimeSlice
Definition: TotemG4Hit.h:122
void setY(float t)
Definition: TotemG4Hit.cc:163
float getEnergyLoss() const
Definition: TotemG4Hit.cc:145
float thePhiAtEntry
Definition: TotemG4Hit.h:133
void Print() override
Definition: TotemG4Hit.cc:113
void Draw() override
Definition: TotemG4Hit.h:51
uint32_t getUnitID() const
Definition: TotemG4Hit.cc:129
void setVx(float p)
Definition: TotemG4Hit.cc:172
float theX
Definition: TotemG4Hit.h:124
double f[11][100]
float theEnergyLoss
Definition: TotemG4Hit.h:129
float theVz
Definition: TotemG4Hit.h:140
~TotemG4Hit() override
Definition: TotemG4Hit.cc:50
double getEnergyDeposit() const
Definition: TotemG4Hit.cc:141
void setParentId(int p)
Definition: TotemG4Hit.cc:169
int theParticleType
Definition: TotemG4Hit.h:130
void setZ(float t)
Definition: TotemG4Hit.cc:166
float getVy() const
Definition: TotemG4Hit.cc:174
void setIncidentEnergy(double e)
Definition: TotemG4Hit.cc:124
d
Definition: ztail.py:151
void setThetaAtEntry(float t)
Definition: TotemG4Hit.cc:156
math::XYZPoint theExitPoint
Definition: TotemG4Hit.h:135
float getZ() const
Definition: TotemG4Hit.cc:165
void setUnitID(uint32_t i)
Definition: TotemG4Hit.cc:130
int getParentId() const
Definition: TotemG4Hit.cc:168
void setTrackID(int i)
Definition: TotemG4Hit.cc:127
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:12
float getVz() const
Definition: TotemG4Hit.cc:177
void setPhiAtEntry(float f)
Definition: TotemG4Hit.cc:157
float theVy
Definition: TotemG4Hit.h:139
float getVx() const
Definition: TotemG4Hit.cc:171
math::XYZPoint theEntryPoint
Definition: TotemG4Hit.h:134
void setParticleType(short i)
Definition: TotemG4Hit.cc:151
int getParticleType() const
Definition: TotemG4Hit.cc:146
void setTof(float e)
Definition: TotemG4Hit.cc:149
math::XYZPoint getEntry() const
Definition: TotemG4Hit.cc:115
const TotemG4Hit & operator=(const TotemG4Hit &right)
Definition: TotemG4Hit.cc:79
double getTimeSlice() const
Definition: TotemG4Hit.cc:132
float thePabs
Definition: TotemG4Hit.h:127
double getEM() const
Definition: TotemG4Hit.cc:117
void setEM(double e)
Definition: TotemG4Hit.cc:118
double hadr
Definition: TotemG4Hit.h:117
float getX() const
Definition: TotemG4Hit.cc:159
double elem
Definition: TotemG4Hit.h:116
std::ostream & operator<<(std::ostream &, const TotemG4Hit &)
Definition: TotemG4Hit.cc:180
math::XYZPoint entry
Definition: TotemG4Hit.h:115
int getTrackID() const
Definition: TotemG4Hit.cc:126
void addEnergyDeposit(double em, double hd)
Definition: TotemG4Hit.cc:136
double theIncidentEnergy
Definition: TotemG4Hit.h:118