CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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
float theThetaAtEntry
Definition: TotemG4Hit.h:132
float theTof
Definition: TotemG4Hit.h:128
void setPabs(float e)
Definition: TotemG4Hit.cc:148
void setEnergyLoss(float e)
Definition: TotemG4Hit.cc:150
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
float getTof() const
Definition: TotemG4Hit.cc:144
void setHadr(double e)
Definition: TotemG4Hit.cc:121
float getEnergyLoss() const
Definition: TotemG4Hit.cc:145
void setX(float t)
Definition: TotemG4Hit.cc:160
float theY
Definition: TotemG4Hit.h:125
int theTrackID
Definition: TotemG4Hit.h:119
math::XYZPoint getEntry() const
Definition: TotemG4Hit.cc:115
float getPabs() const
Definition: TotemG4Hit.cc:143
float theZ
Definition: TotemG4Hit.h:126
std::ostream & operator<<(std::ostream &out, const ALILine &li)
Definition: ALILine.cc:167
float getVy() const
Definition: TotemG4Hit.cc:174
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
tuple d
Definition: ztail.py:151
void setY(float t)
Definition: TotemG4Hit.cc:163
float thePhiAtEntry
Definition: TotemG4Hit.h:133
void Print() override
Definition: TotemG4Hit.cc:113
float getPhiAtEntry() const
Definition: TotemG4Hit.cc:154
void Draw() override
Definition: TotemG4Hit.h:51
void setVx(float p)
Definition: TotemG4Hit.cc:172
float theX
Definition: TotemG4Hit.h:124
int getTrackID() const
Definition: TotemG4Hit.cc:126
int getTimeSliceID() const
Definition: TotemG4Hit.cc:134
float theEnergyLoss
Definition: TotemG4Hit.h:129
float theVz
Definition: TotemG4Hit.h:140
~TotemG4Hit() override
Definition: TotemG4Hit.cc:50
void setParentId(int p)
Definition: TotemG4Hit.cc:169
int theParticleType
Definition: TotemG4Hit.h:130
float getVx() const
Definition: TotemG4Hit.cc:171
void setZ(float t)
Definition: TotemG4Hit.cc:166
double getHadr() const
Definition: TotemG4Hit.cc:120
void setIncidentEnergy(double e)
Definition: TotemG4Hit.cc:124
double getIncidentEnergy() const
Definition: TotemG4Hit.cc:123
float getVz() const
Definition: TotemG4Hit.cc:177
void setThetaAtEntry(float t)
Definition: TotemG4Hit.cc:156
int getParentId() const
Definition: TotemG4Hit.cc:168
math::XYZPoint theExitPoint
Definition: TotemG4Hit.h:135
void setUnitID(uint32_t i)
Definition: TotemG4Hit.cc:130
void setTrackID(int i)
Definition: TotemG4Hit.cc:127
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:12
void setPhiAtEntry(float f)
Definition: TotemG4Hit.cc:157
uint32_t getUnitID() const
Definition: TotemG4Hit.cc:129
float theVy
Definition: TotemG4Hit.h:139
math::XYZPoint theEntryPoint
Definition: TotemG4Hit.h:134
double getEM() const
Definition: TotemG4Hit.cc:117
void setParticleType(short i)
Definition: TotemG4Hit.cc:151
void setTof(float e)
Definition: TotemG4Hit.cc:149
const TotemG4Hit & operator=(const TotemG4Hit &right)
Definition: TotemG4Hit.cc:79
float getZ() const
Definition: TotemG4Hit.cc:165
double getEnergyDeposit() const
Definition: TotemG4Hit.cc:141
float thePabs
Definition: TotemG4Hit.h:127
int getParticleType() const
Definition: TotemG4Hit.cc:146
float getX() const
Definition: TotemG4Hit.cc:159
void setEM(double e)
Definition: TotemG4Hit.cc:118
double hadr
Definition: TotemG4Hit.h:117
double getTimeSlice() const
Definition: TotemG4Hit.cc:132
float getThetaAtEntry() const
Definition: TotemG4Hit.cc:153
float getY() const
Definition: TotemG4Hit.cc:162
double elem
Definition: TotemG4Hit.h:116
math::XYZPoint entry
Definition: TotemG4Hit.h:115
void addEnergyDeposit(double em, double hd)
Definition: TotemG4Hit.cc:136
double theIncidentEnergy
Definition: TotemG4Hit.h:118