Belle II Software  release-08-01-10
DosiSimHit.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 #ifndef DosiSIMHIT_H
10 #define DosiSIMHIT_H
11 
12 #include <simulation/dataobjects/SimHitBase.h>
13 
14 // ROOT
15 #include <TVector3.h>
16 
17 namespace Belle2 {
31  class DosiSimHit : public SimHitBase {
32  public:
35  0) {;}
38  int CellId,
39  int TrackId,
40  int Pdg,
41  float FlightTime,
42  float Edep,
43  TVector3 Momentum,
44  TVector3 Position
45  ): SimHitBase(), m_CellId(CellId), m_TrackId(TrackId), m_Pdg(Pdg), m_FlightTime(FlightTime), m_Edep(Edep), m_Momentum(Momentum),
46  m_Position(Position)
47  {
48  }
49 
50 
51 
52 
55  void setCellId(int CellId) { m_CellId = CellId; }
56 
59  void setTrackId(int TrackId) { m_TrackId = TrackId; }
60 
63  void setPDGCode(int Pdg) { m_Pdg = Pdg; }
64 
67  void setFlightTime(double FlightTime) { m_FlightTime = (float) FlightTime; }
68 
71  void setEnergyDep(double Edep) { m_Edep = (float) Edep; }
72 
75  void setMomentum(TVector3 Momentum) { m_Momentum = Momentum; }
76 
79  void setPosIn(TVector3 Position) { m_Position = Position; }
80 
83  void setPosition(TVector3 Position) { m_Position = Position; }
84 
85 
89  int getCellId() const { return m_CellId; }
90 
94  int getTrackId() const { return m_TrackId; }
95 
99  int getPDGCode() const { return m_Pdg; }
100 
104  double getFlightTime() const { return (double)m_FlightTime; }
105 
109  double getEnergyDep() const { return (double) m_Edep; }
110 
114  TVector3 getMomentum() const { return m_Momentum; }
115 
119  TVector3 getPosIn() const { return m_Position; }
120 
124  TVector3 getPosition() const { return m_Position; }
125 
126 
130  void shiftInTime(float delta) override { m_FlightTime += delta; }
131 
132 
133  private:
134  int m_CellId;
135  int m_TrackId;
136  int m_Pdg;
137  float m_FlightTime;
138  float m_Edep;
139  TVector3 m_Momentum;
140  TVector3 m_Position;
142  ClassDefOverride(DosiSimHit, 1)
143  };
144 
146 } // end namespace Belle2
147 
148 #endif
ClassDosiSimHit - Geant4 simulated hit for the Dosi crystal in beast.
Definition: DosiSimHit.h:31
TVector3 m_Position
Position.
Definition: DosiSimHit.h:140
int getPDGCode() const
Get Particle PDG (can be one of secondaries)
Definition: DosiSimHit.h:99
void setEnergyDep(double Edep)
Set Deposit energy.
Definition: DosiSimHit.h:71
int getTrackId() const
Get Track ID.
Definition: DosiSimHit.h:94
int getCellId() const
Get Cell ID.
Definition: DosiSimHit.h:89
int m_CellId
Cell ID.
Definition: DosiSimHit.h:134
double getFlightTime() const
Get Flight time from IP.
Definition: DosiSimHit.h:104
void setPDGCode(int Pdg)
Set Particle PDG (can be one of secondaries)
Definition: DosiSimHit.h:63
DosiSimHit()
default constructor for ROOT
Definition: DosiSimHit.h:34
void setCellId(int CellId)
Set Cell ID.
Definition: DosiSimHit.h:55
TVector3 m_Momentum
Momentum.
Definition: DosiSimHit.h:139
double getEnergyDep() const
Get Deposit energy.
Definition: DosiSimHit.h:109
float m_FlightTime
Flight time from IP.
Definition: DosiSimHit.h:137
float m_Edep
Deposit energy.
Definition: DosiSimHit.h:138
TVector3 getMomentum() const
Get Momentum.
Definition: DosiSimHit.h:114
void setPosition(TVector3 Position)
Set Position.
Definition: DosiSimHit.h:83
void setTrackId(int TrackId)
Set Track ID.
Definition: DosiSimHit.h:59
TVector3 getPosition() const
Get Position.
Definition: DosiSimHit.h:124
void setPosIn(TVector3 Position)
Set Position.
Definition: DosiSimHit.h:79
DosiSimHit(int CellId, int TrackId, int Pdg, float FlightTime, float Edep, TVector3 Momentum, TVector3 Position)
Useful Constructor.
Definition: DosiSimHit.h:37
void setFlightTime(double FlightTime)
Set Flight time from IP.
Definition: DosiSimHit.h:67
TVector3 getPosIn() const
Get Position.
Definition: DosiSimHit.h:119
void setMomentum(TVector3 Momentum)
Set Momentum.
Definition: DosiSimHit.h:75
void shiftInTime(float delta) override
Shift the SimHit in time (needed for beam background mixing)
Definition: DosiSimHit.h:130
int m_TrackId
Track ID.
Definition: DosiSimHit.h:135
int m_Pdg
Particle PDG (can be one of secondaries)
Definition: DosiSimHit.h:136
Class SimHitBase - A common base for subdetector SimHits.
Definition: SimHitBase.h:28
Abstract base class for different kinds of events.