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 
41 public:
42 
43  // ---------- Constructor and destructor -----------------
44  TotemG4Hit();
45  ~TotemG4Hit() override;
46  TotemG4Hit(const TotemG4Hit &right);
47 
48  // ---------- operators ----------------------------------
49  const TotemG4Hit& operator=(const TotemG4Hit &right);
50  int operator==(const TotemG4Hit &){return 0;}
51 
52  // ---------- member functions ---------------------------
53  void Draw() override{}
54  void Print() override;
55 
56  math::XYZPoint getEntry() const;
57  void setEntry(double x, double y, double z) {entry.SetCoordinates(x,y,z);}
58 
59  double getEM() const;
60  void setEM (double e);
61 
62  double getHadr() const;
63  void setHadr (double e);
64 
65  double getIncidentEnergy() const;
66  void setIncidentEnergy (double e);
67 
68  int getTrackID() const;
69  void setTrackID (int i);
70 
71  uint32_t getUnitID() const;
72  void setUnitID (uint32_t i);
73 
74  double getTimeSlice() const;
75  void setTimeSlice(double d);
76  int getTimeSliceID() const;
77 
78  void addEnergyDeposit(double em, double hd);
79  void addEnergyDeposit(const TotemG4Hit& aHit);
80 
81  double getEnergyDeposit() const;
82 
83  float getPabs() const;
84  float getTof() const;
85  float getEnergyLoss() const;
86  int getParticleType() const;
87 
88  void setPabs(float e);
89  void setTof(float e);
90  void setEnergyLoss(float e) ;
91  void setParticleType(short i) ;
92 
93  float getThetaAtEntry() const;
94  float getPhiAtEntry() const;
95 
96  void setThetaAtEntry(float t);
97  void setPhiAtEntry(float f) ;
98 
99  float getX() const;
100  float getY() const;
101  float getZ() const;
102  void setX(float t);
103  void setY(float t);
104  void setZ(float t);
105 
106  int getParentId() const;
107  float getVx() const;
108  float getVy() const;
109  float getVz() const;
110 
111  void setParentId(int p);
112  void setVx(float p);
113  void setVy(float p);
114  void setVz(float p);
115 
116 private:
117 
118  math::XYZPoint entry; //Entry point
119  double elem; //EnergyDeposit of EM particles
120  double hadr; //EnergyDeposit of HD particles
121  double theIncidentEnergy; //Energy of the primary particle
122  int theTrackID; //Identification number of the primary
123  //particle
124  uint32_t theUnitID; //Totem Unit Number
125  double theTimeSlice; //Time Slice Identification
126 
127 
128  float theX;
129  float theY;
130  float theZ;
131  float thePabs;
132  float theTof;
135 
140 
142  float theVx;
143  float theVy;
144  float theVz;
145 
146 };
147 
148 std::ostream& operator<<(std::ostream&, const TotemG4Hit&);
149 
150 #endif
151 
void setVz(float p)
Definition: TotemG4Hit.cc:183
float theThetaAtEntry
Definition: TotemG4Hit.h:136
float theTof
Definition: TotemG4Hit.h:132
void setPabs(float e)
Definition: TotemG4Hit.cc:153
void setEnergyLoss(float e)
Definition: TotemG4Hit.cc:155
int theParentId
Definition: TotemG4Hit.h:141
int operator==(const TotemG4Hit &)
Definition: TotemG4Hit.h:50
void setEntry(double x, double y, double z)
Definition: TotemG4Hit.h:57
float theVx
Definition: TotemG4Hit.h:142
float getTof() const
Definition: TotemG4Hit.cc:149
void setHadr(double e)
Definition: TotemG4Hit.cc:129
float getEnergyLoss() const
Definition: TotemG4Hit.cc:150
void setX(float t)
Definition: TotemG4Hit.cc:165
float theY
Definition: TotemG4Hit.h:129
int theTrackID
Definition: TotemG4Hit.h:122
math::XYZPoint getEntry() const
Definition: TotemG4Hit.cc:123
float getPabs() const
Definition: TotemG4Hit.cc:148
float theZ
Definition: TotemG4Hit.h:130
float getVy() const
Definition: TotemG4Hit.cc:179
void setVy(float p)
Definition: TotemG4Hit.cc:180
uint32_t theUnitID
Definition: TotemG4Hit.h:124
void setTimeSlice(double d)
Definition: TotemG4Hit.cc:141
double theTimeSlice
Definition: TotemG4Hit.h:125
void setY(float t)
Definition: TotemG4Hit.cc:168
float thePhiAtEntry
Definition: TotemG4Hit.h:137
void Print() override
Definition: TotemG4Hit.cc:118
float getPhiAtEntry() const
Definition: TotemG4Hit.cc:159
void Draw() override
Definition: TotemG4Hit.h:53
void setVx(float p)
Definition: TotemG4Hit.cc:177
float theX
Definition: TotemG4Hit.h:128
int getTrackID() const
Definition: TotemG4Hit.cc:134
int getTimeSliceID() const
Definition: TotemG4Hit.cc:142
double f[11][100]
float theEnergyLoss
Definition: TotemG4Hit.h:133
float theVz
Definition: TotemG4Hit.h:144
~TotemG4Hit() override
Definition: TotemG4Hit.cc:50
void setParentId(int p)
Definition: TotemG4Hit.cc:174
int theParticleType
Definition: TotemG4Hit.h:134
float getVx() const
Definition: TotemG4Hit.cc:176
void setZ(float t)
Definition: TotemG4Hit.cc:171
double getHadr() const
Definition: TotemG4Hit.cc:128
void setIncidentEnergy(double e)
Definition: TotemG4Hit.cc:132
double getIncidentEnergy() const
Definition: TotemG4Hit.cc:131
float getVz() const
Definition: TotemG4Hit.cc:182
void setThetaAtEntry(float t)
Definition: TotemG4Hit.cc:161
int getParentId() const
Definition: TotemG4Hit.cc:173
math::XYZPoint theExitPoint
Definition: TotemG4Hit.h:139
void setUnitID(uint32_t i)
Definition: TotemG4Hit.cc:138
void setTrackID(int i)
Definition: TotemG4Hit.cc:135
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:12
void setPhiAtEntry(float f)
Definition: TotemG4Hit.cc:162
uint32_t getUnitID() const
Definition: TotemG4Hit.cc:137
float theVy
Definition: TotemG4Hit.h:143
math::XYZPoint theEntryPoint
Definition: TotemG4Hit.h:138
double getEM() const
Definition: TotemG4Hit.cc:125
void setParticleType(short i)
Definition: TotemG4Hit.cc:156
void setTof(float e)
Definition: TotemG4Hit.cc:154
const TotemG4Hit & operator=(const TotemG4Hit &right)
Definition: TotemG4Hit.cc:81
float getZ() const
Definition: TotemG4Hit.cc:170
double getEnergyDeposit() const
Definition: TotemG4Hit.cc:146
float thePabs
Definition: TotemG4Hit.h:131
int getParticleType() const
Definition: TotemG4Hit.cc:151
float getX() const
Definition: TotemG4Hit.cc:164
void setEM(double e)
Definition: TotemG4Hit.cc:126
double hadr
Definition: TotemG4Hit.h:120
double getTimeSlice() const
Definition: TotemG4Hit.cc:140
float getThetaAtEntry() const
Definition: TotemG4Hit.cc:158
float getY() const
Definition: TotemG4Hit.cc:167
double elem
Definition: TotemG4Hit.h:119
std::ostream & operator<<(std::ostream &, const TotemG4Hit &)
Definition: TotemG4Hit.cc:185
math::XYZPoint entry
Definition: TotemG4Hit.h:118
void addEnergyDeposit(double em, double hd)
Definition: TotemG4Hit.cc:144
double theIncidentEnergy
Definition: TotemG4Hit.h:121