CMS 3D CMS Logo

FP420G4Hit.h
Go to the documentation of this file.
1 // File: FP420G4Hit.h
3 // Date: 02.2006
4 //
5 // Package: FP420
6 // Class : FP420G4Hit
7 //
9 #ifndef FP420G4Hit_h
10 #define FP420G4Hit_h
11 
12 #include "G4VHit.hh"
13 #include <boost/cstdint.hpp>
14 #include <iostream>
15 
16 #include "G4Step.hh"
17 //#include "G4StepPoint.hh"
18 
19 class FP420G4Hit : public G4VHit {
20 public:
21  FP420G4Hit();
22  ~FP420G4Hit() override;
23  FP420G4Hit(const FP420G4Hit& right);
24  const FP420G4Hit& operator=(const FP420G4Hit& right);
25  int operator==(const FP420G4Hit&) { return 0; }
26 
27  void Draw() override {}
28  void Print() override;
29 
30 public:
31  G4ThreeVector getEntry() const;
32  void setEntry(const G4ThreeVector& xyz);
33 
34  G4ThreeVector getEntryLocalP() const;
35  void setEntryLocalP(const G4ThreeVector& xyz1);
36 
37  G4ThreeVector getExitLocalP() const;
38  void setExitLocalP(const G4ThreeVector& xyz1);
39 
40  double getEM() const;
41  void setEM(double e);
42 
43  double getHadr() const;
44  void setHadr(double e);
45 
46  double getIncidentEnergy() const;
47  void setIncidentEnergy(double e);
48 
49  //G4int getTrackID() const;
50  unsigned int getTrackID() const;
51  void setTrackID(int i);
52 
53  unsigned int getUnitID() const;
54  void setUnitID(unsigned int i);
55 
56  double getTimeSlice() const;
57  void setTimeSlice(double d);
58  int getTimeSliceID() const;
59 
60  void addEnergyDeposit(double em, double hd);
61  void addEnergyDeposit(const FP420G4Hit& aHit);
62 
63  double getEnergyDeposit() const;
64 
65  float getPabs() const;
66  float getTof() const;
67  float getEnergyLoss() const;
68  int getParticleType() const;
69 
70  void setPabs(float e);
71  void setTof(float e);
72  void addEnergyLoss(float e);
73  void setEnergyLoss(float e);
74  void setParticleType(short i);
75 
76  float getThetaAtEntry() const;
77  float getPhiAtEntry() const;
78 
79  void setThetaAtEntry(float t);
80  void setPhiAtEntry(float f);
81 
82  float getX() const;
83  void setX(float t);
84  float getY() const;
85  float getZ() const;
86  void setY(float t);
87  void setZ(float t);
88 
89  int getParentId() const;
90  float getVx() const;
91  float getVy() const;
92  float getVz() const;
93 
94  void setParentId(int p);
95  void setVx(float p);
96  void setVy(float p);
97  void setVz(float p);
98 
99 private:
100  G4ThreeVector entry; //Entry point
101  G4ThreeVector entrylp; //Entry local point
102  G4ThreeVector exitlp; //Exit local point
103  double elem; //EnergyDeposit of EM particles
104  double hadr; //EnergyDeposit of HD particles
105  double theIncidentEnergy; //Energy of the primary particle
106  G4int theTrackID; //Identification number of the primary
107  //particle
108  double theTimeSlice; //Time Slice Identification
109 
110  int theUnitID; //FP420 Unit Number
111 
112  float theX;
113  float theY;
114  float theZ;
115  float thePabs;
116  float theTof;
119 
122 
124  float theVx;
125  float theVy;
126  float theVz;
127 };
128 
129 std::ostream& operator<<(std::ostream&, const FP420G4Hit&);
130 
131 #endif
float theTof
Definition: FP420G4Hit.h:116
const FP420G4Hit & operator=(const FP420G4Hit &right)
Definition: FP420G4Hit.cc:66
void setY(float t)
Definition: FP420G4Hit.cc:159
double getEnergyDeposit() const
Definition: FP420G4Hit.cc:136
void setPhiAtEntry(float f)
Definition: FP420G4Hit.cc:153
float getTof() const
Definition: FP420G4Hit.cc:139
void setVz(float p)
Definition: FP420G4Hit.cc:174
std::ostream & operator<<(std::ostream &, const FP420G4Hit &)
Definition: FP420G4Hit.cc:176
void setEntry(const G4ThreeVector &xyz)
Definition: FP420G4Hit.cc:104
double theIncidentEnergy
Definition: FP420G4Hit.h:105
G4ThreeVector entrylp
Definition: FP420G4Hit.h:101
G4ThreeVector getExitLocalP() const
Definition: FP420G4Hit.cc:109
void setZ(float t)
Definition: FP420G4Hit.cc:162
float getVz() const
Definition: FP420G4Hit.cc:173
double theTimeSlice
Definition: FP420G4Hit.h:108
void setPabs(float e)
Definition: FP420G4Hit.cc:143
int theParentId
Definition: FP420G4Hit.h:123
float getPabs() const
Definition: FP420G4Hit.cc:138
int theParticleType
Definition: FP420G4Hit.h:118
void setVx(float p)
Definition: FP420G4Hit.cc:168
void setTrackID(int i)
Definition: FP420G4Hit.cc:122
unsigned int getTrackID() const
Definition: FP420G4Hit.cc:121
void addEnergyDeposit(double em, double hd)
Definition: FP420G4Hit.cc:131
float getVx() const
Definition: FP420G4Hit.cc:167
float getPhiAtEntry() const
Definition: FP420G4Hit.cc:150
int getParentId() const
Definition: FP420G4Hit.cc:164
unsigned int getUnitID() const
Definition: FP420G4Hit.cc:124
void setEnergyLoss(float e)
Definition: FP420G4Hit.cc:146
double elem
Definition: FP420G4Hit.h:103
float getVy() const
Definition: FP420G4Hit.cc:170
void Draw() override
Definition: FP420G4Hit.h:27
void setTof(float e)
Definition: FP420G4Hit.cc:144
double hadr
Definition: FP420G4Hit.h:104
double getIncidentEnergy() const
Definition: FP420G4Hit.cc:118
G4int theTrackID
Definition: FP420G4Hit.h:106
G4ThreeVector exitlp
Definition: FP420G4Hit.h:102
void Print() override
Definition: FP420G4Hit.cc:101
double f[11][100]
double getHadr() const
Definition: FP420G4Hit.cc:115
G4ThreeVector getEntryLocalP() const
Definition: FP420G4Hit.cc:106
void setTimeSlice(double d)
Definition: FP420G4Hit.cc:128
float getX() const
Definition: FP420G4Hit.cc:155
float theVy
Definition: FP420G4Hit.h:125
float getEnergyLoss() const
Definition: FP420G4Hit.cc:140
void setEntryLocalP(const G4ThreeVector &xyz1)
Definition: FP420G4Hit.cc:107
~FP420G4Hit() override
Definition: FP420G4Hit.cc:36
void setEM(double e)
Definition: FP420G4Hit.cc:113
void setIncidentEnergy(double e)
Definition: FP420G4Hit.cc:119
float theThetaAtEntry
Definition: FP420G4Hit.h:120
int getTimeSliceID() const
Definition: FP420G4Hit.cc:129
void setX(float t)
Definition: FP420G4Hit.cc:156
void setExitLocalP(const G4ThreeVector &xyz1)
Definition: FP420G4Hit.cc:110
float thePabs
Definition: FP420G4Hit.h:115
float theY
Definition: FP420G4Hit.h:113
int theUnitID
Definition: FP420G4Hit.h:110
int getParticleType() const
Definition: FP420G4Hit.cc:141
void setParticleType(short i)
Definition: FP420G4Hit.cc:147
void setThetaAtEntry(float t)
Definition: FP420G4Hit.cc:152
int operator==(const FP420G4Hit &)
Definition: FP420G4Hit.h:25
void setUnitID(unsigned int i)
Definition: FP420G4Hit.cc:125
G4ThreeVector entry
Definition: FP420G4Hit.h:100
float theZ
Definition: FP420G4Hit.h:114
double getEM() const
Definition: FP420G4Hit.cc:112
float theVx
Definition: FP420G4Hit.h:124
G4ThreeVector getEntry() const
Definition: FP420G4Hit.cc:103
float getY() const
Definition: FP420G4Hit.cc:158
void setParentId(int p)
Definition: FP420G4Hit.cc:165
double getTimeSlice() const
Definition: FP420G4Hit.cc:127
float theEnergyLoss
Definition: FP420G4Hit.h:117
float getZ() const
Definition: FP420G4Hit.cc:161
float thePhiAtEntry
Definition: FP420G4Hit.h:121
void addEnergyLoss(float e)
Definition: FP420G4Hit.cc:145
void setHadr(double e)
Definition: FP420G4Hit.cc:116
float getThetaAtEntry() const
Definition: FP420G4Hit.cc:149
float theX
Definition: FP420G4Hit.h:112
float theVz
Definition: FP420G4Hit.h:126
void setVy(float p)
Definition: FP420G4Hit.cc:171