CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
PPSPixelG4Hit.h
Go to the documentation of this file.
1 #ifndef _PPS_PixelG4Hit_h
2 #define _PPS_PixelG4Hit_h 1
3 // -*- C++ -*-
4 //
5 // Package: PPS
6 // Class : PPSPixelG4Hit
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"
35 #include "G4ThreeVector.hh"
36 #include <iostream>
37 
38 class PPSPixelG4Hit : public G4VHit {
39 public:
40  // ---------- Constructor and destructor -----------------
41  PPSPixelG4Hit();
42  ~PPSPixelG4Hit() override = default;
43  PPSPixelG4Hit(const PPSPixelG4Hit& right);
44 
45  // ---------- operators ----------------------------------
46  const PPSPixelG4Hit& operator=(const PPSPixelG4Hit& right);
47  int operator==(const PPSPixelG4Hit&) { return 0; }
48 
49  // ---------- member functions ---------------------------
50  void Draw() override {}
51  void Print() override;
52 
53  const G4ThreeVector& meanPosition() const { return MeanPosition_; };
54  void setMeanPosition(const G4ThreeVector& a) { MeanPosition_ = a; };
55 
56  const G4ThreeVector& entryPoint() const;
57  void setEntryPoint(const G4ThreeVector&);
58  const G4ThreeVector& exitPoint() const;
59  void setExitPoint(const G4ThreeVector&);
60 
61  double eM() const;
62  void setEM(double e);
63 
64  double hadr() const;
65  void setHadr(double e);
66 
67  double incidentEnergy() const;
68  void setIncidentEnergy(double e);
69 
70  int trackID() const;
71  void setTrackID(int i);
72 
73  uint32_t unitID() const;
74  void setUnitID(uint32_t i);
75 
76  double timeSlice() const;
77  void setTimeSlice(double d);
78  int timeSliceID() const;
79 
80  void addEnergyDeposit(double em, double hd);
81  void addEnergyDeposit(const PPSPixelG4Hit& aHit);
82 
83  double energyDeposit() const;
84 
85  float p() const;
86  float tof() const;
87  float energyLoss() const;
88  int particleType() const;
89 
90  void setP(float e);
91  void setTof(float e);
92  void setEnergyLoss(float e);
93  void setParticleType(short i);
94 
95  float thetaAtEntry() const;
96  float phiAtEntry() const;
97 
98  void setThetaAtEntry(float t);
99  void setPhiAtEntry(float f);
100  float px() const;
101  float py() const;
102  float pz() const;
103  float vPx() const;
104  float vPy() const;
105  float vPz() const;
106 
107  void setPx(float e);
108  void setPy(float e);
109  void setPz(float e);
110  void setVPx(float e);
111  void setVPy(float e);
112  void setVPz(float e);
113  float x() const;
114  float y() const;
115  float z() const;
116  void setX(float t);
117  void setY(float t);
118  void setZ(float t);
119 
120  int parentId() const;
121  float vx() const;
122  float vy() const;
123  float vz() const;
124 
125  void setParentId(int p);
126  void setVx(float p);
127  void setVy(float p);
128  void setVz(float p);
129 
130 private:
131  G4ThreeVector MeanPosition_;
132  double elem_; //EnergyDeposit of EM particles
133  double hadr_; //EnergyDeposit of HD particles
134  double theIncidentEnergy_; //Energy of the primary particle
135  int theTrackID_; //Identification number of the primary
136  //particle
137  uint32_t theUnitID_; //PPS Unit Number
138  double theTimeSlice_; //Time Slice Identification
139 
140  float theX_;
141  float theY_;
142  float theZ_;
143  float thePabs_;
144  float theTof_;
147 
150  G4ThreeVector theEntryPoint_;
151  G4ThreeVector theExitPoint_;
154  float theVx_;
155  float theVy_;
156  float theVz_;
157 };
158 
159 std::ostream& operator<<(std::ostream&, const PPSPixelG4Hit&);
160 
161 #endif
void setParticleType(short i)
float thetaAtEntry() const
void setPy(float e)
void addEnergyDeposit(double em, double hd)
const PPSPixelG4Hit & operator=(const PPSPixelG4Hit &right)
const G4ThreeVector & exitPoint() const
double hadr() const
void setExitPoint(const G4ThreeVector &)
float x() const
float vPz() const
void Draw() override
Definition: PPSPixelG4Hit.h:50
double theTimeSlice_
std::ostream & operator<<(std::ostream &out, const ALILine &li)
Definition: ALILine.cc:167
float theEnergyLoss_
float vy() const
void setP(float e)
void setEM(double e)
void setVy(float p)
G4ThreeVector theExitPoint_
float phiAtEntry() const
tuple d
Definition: ztail.py:151
float energyLoss() const
void Print() override
void setVPz(float e)
float thePhiAtEntry_
void setPz(float e)
void setPhiAtEntry(float f)
float vz() const
int timeSliceID() const
void setParentId(int p)
void setY(float t)
void setHadr(double e)
void setX(float t)
G4ThreeVector theEntryPoint_
const G4ThreeVector & entryPoint() const
void setTof(float e)
float vPx() const
int operator==(const PPSPixelG4Hit &)
Definition: PPSPixelG4Hit.h:47
const G4ThreeVector & meanPosition() const
Definition: PPSPixelG4Hit.h:53
uint32_t theUnitID_
void setPx(float e)
~PPSPixelG4Hit() override=default
float z() const
int particleType() const
double energyDeposit() const
void setTimeSlice(double d)
void setEntryPoint(const G4ThreeVector &)
float px() const
float theThetaAtEntry_
float tof() const
float pz() const
void setThetaAtEntry(float t)
float vPy() const
void setVx(float p)
G4ThreeVector MeanPosition_
int parentId() const
uint32_t unitID() const
void setTrackID(int i)
void setVPx(float e)
int trackID() const
void setUnitID(uint32_t i)
double a
Definition: hdecay.h:119
float p() const
void setVz(float p)
double theIncidentEnergy_
void setVPy(float e)
double eM() const
double timeSlice() const
void setZ(float t)
void setIncidentEnergy(double e)
void setEnergyLoss(float e)
float vx() const
float py() const
float y() const
void setMeanPosition(const G4ThreeVector &a)
Definition: PPSPixelG4Hit.h:54
double incidentEnergy() const