Belle II Software  release-05-02-19
QcsmonitorSimHit.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010-2014 Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Martin Ritter, Igal Jaegle *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #ifndef QCSMONITORSIMHIT_H
12 #define QCSMONITORSIMHIT_H
13 
14 #include <simulation/dataobjects/SimHitBase.h>
15 
16 // ROOT
17 #include <TVector3.h>
18 
19 namespace Belle2 {
33  class QcsmonitorSimHit : public SimHitBase {
34  public:
37  m_Position(0, 0,
38  0) {;}
41  int CellId,
42  int TrackId,
43  int Pdg,
44  float FlightTime,
45  float Edep,
46  TVector3 Momentum,
47  TVector3 Position
49  {
50  m_CellId = CellId;
51  m_TrackId = TrackId;
52  m_Pdg = Pdg;
53  m_FlightTime = FlightTime;
54  m_Edep = Edep;
55  m_Momentum = Momentum;
56  m_Position = Position;
57 
58  }
59 
60 
61 
62 
65  void setCellId(int CellId) { m_CellId = CellId; }
66 
69  void setTrackId(int TrackId) { m_TrackId = TrackId; }
70 
73  void setPDGCode(int Pdg) { m_Pdg = Pdg; }
74 
77  void setFlightTime(double FlightTime) { m_FlightTime = (float) FlightTime; }
78 
81  void setEnergyDep(double Edep) { m_Edep = (float) Edep; }
82 
85  void setMomentum(TVector3 Momentum) { m_Momentum = Momentum; }
86 
89  void setPosIn(TVector3 Position) { m_Position = Position; }
90 
93  void setPosition(TVector3 Position) { m_Position = Position; }
94 
95 
99  int getCellId() const { return m_CellId; }
100 
104  int getTrackId() const { return m_TrackId; }
105 
109  int getPDGCode() const { return m_Pdg; }
110 
114  double getFlightTime() const { return (double)m_FlightTime; }
115 
119  double getEnergyDep() const { return (double) m_Edep; }
120 
124  TVector3 getMomentum() const { return m_Momentum; }
125 
129  TVector3 getPosIn() const { return m_Position; }
130 
134  TVector3 getPosition() const { return m_Position; }
135 
136 
140  void shiftInTime(float delta) override { m_FlightTime += delta; }
141 
142 
143  private:
144  int m_CellId;
145  int m_TrackId;
146  int m_Pdg;
147  float m_FlightTime;
148  float m_Edep;
149  TVector3 m_Momentum;
150  TVector3 m_Position;
152  ClassDefOverride(QcsmonitorSimHit, 1)
153  };
154 
156 } // end namespace Belle2
157 
158 #endif
Belle2::QcsmonitorSimHit::m_Position
TVector3 m_Position
Position.
Definition: QcsmonitorSimHit.h:158
Belle2::QcsmonitorSimHit::getCellId
int getCellId() const
Get Cell ID.
Definition: QcsmonitorSimHit.h:107
Belle2::QcsmonitorSimHit::m_Edep
float m_Edep
Deposit energy.
Definition: QcsmonitorSimHit.h:156
Belle2::QcsmonitorSimHit::getPosIn
TVector3 getPosIn() const
Get Position.
Definition: QcsmonitorSimHit.h:137
Belle2::QcsmonitorSimHit
ClassQcsmonitorSimHit - Geant4 simulated hit for the Qcsmonitor crystal in beast.
Definition: QcsmonitorSimHit.h:41
Belle2::QcsmonitorSimHit::getFlightTime
double getFlightTime() const
Get Flight time from IP.
Definition: QcsmonitorSimHit.h:122
Belle2::QcsmonitorSimHit::setTrackId
void setTrackId(int TrackId)
Set Track ID.
Definition: QcsmonitorSimHit.h:77
Belle2::SimHitBase
Class SimHitBase - A common base for subdetector SimHits.
Definition: SimHitBase.h:38
Belle2::SimHitBase::SimHitBase
SimHitBase()
Constructor.
Definition: SimHitBase.h:43
Belle2::QcsmonitorSimHit::m_Pdg
int m_Pdg
Particle PDG (can be one of secondaries)
Definition: QcsmonitorSimHit.h:154
Belle2::QcsmonitorSimHit::QcsmonitorSimHit
QcsmonitorSimHit()
default constructor for ROOT
Definition: QcsmonitorSimHit.h:44
Belle2::QcsmonitorSimHit::setCellId
void setCellId(int CellId)
Set Cell ID.
Definition: QcsmonitorSimHit.h:73
Belle2::QcsmonitorSimHit::getMomentum
TVector3 getMomentum() const
Get Momentum.
Definition: QcsmonitorSimHit.h:132
Belle2::QcsmonitorSimHit::m_FlightTime
float m_FlightTime
Flight time from IP.
Definition: QcsmonitorSimHit.h:155
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::QcsmonitorSimHit::setFlightTime
void setFlightTime(double FlightTime)
Set Flight time from IP.
Definition: QcsmonitorSimHit.h:85
Belle2::QcsmonitorSimHit::m_TrackId
int m_TrackId
Track ID.
Definition: QcsmonitorSimHit.h:153
Belle2::QcsmonitorSimHit::getTrackId
int getTrackId() const
Get Track ID.
Definition: QcsmonitorSimHit.h:112
Belle2::QcsmonitorSimHit::setMomentum
void setMomentum(TVector3 Momentum)
Set Momentum.
Definition: QcsmonitorSimHit.h:93
Belle2::QcsmonitorSimHit::getPDGCode
int getPDGCode() const
Get Particle PDG (can be one of secondaries)
Definition: QcsmonitorSimHit.h:117
Belle2::QcsmonitorSimHit::getPosition
TVector3 getPosition() const
Get Position.
Definition: QcsmonitorSimHit.h:142
Belle2::QcsmonitorSimHit::shiftInTime
void shiftInTime(float delta) override
Shift the SimHit in time (needed for beam background mixing)
Definition: QcsmonitorSimHit.h:148
Belle2::QcsmonitorSimHit::getEnergyDep
double getEnergyDep() const
Get Deposit energy.
Definition: QcsmonitorSimHit.h:127
Belle2::QcsmonitorSimHit::m_CellId
int m_CellId
Cell ID.
Definition: QcsmonitorSimHit.h:152
Belle2::QcsmonitorSimHit::setPDGCode
void setPDGCode(int Pdg)
Set Particle PDG (can be one of secondaries)
Definition: QcsmonitorSimHit.h:81
Belle2::QcsmonitorSimHit::setPosition
void setPosition(TVector3 Position)
Set Position.
Definition: QcsmonitorSimHit.h:101
Belle2::QcsmonitorSimHit::m_Momentum
TVector3 m_Momentum
Momentum.
Definition: QcsmonitorSimHit.h:157
Belle2::QcsmonitorSimHit::setEnergyDep
void setEnergyDep(double Edep)
Set Deposit energy.
Definition: QcsmonitorSimHit.h:89
Belle2::QcsmonitorSimHit::setPosIn
void setPosIn(TVector3 Position)
Set Position.
Definition: QcsmonitorSimHit.h:97