Belle II Software  release-05-01-25
CsiHit_v2.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  * Alexandre Beaulieu *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #ifndef CsiHIT_V2_H
12 #define CsiHIT_V2_H
13 
14 #include <simulation/dataobjects/SimHitBase.h>
15 
16 // ROOT
17 #include <TVector3.h>
18 
19 namespace Belle2 {
33  class CsiHit_v2 : public SimHitBase {
34  public:
36  CsiHit_v2(): SimHitBase(), m_CellId(0), m_TrackId(0), m_Pdg(0), m_FlightTime(0), m_Edep(0), m_Momentum(0, 0, 0), m_Position(0, 0,
37  0), m_Erecdep(0) {;}
39  CsiHit_v2(
40  int CellId,
41  int TrackId,
42  int Pdg,
43  float FlightTime,
44  float Edep,
45  TVector3 Momentum,
46  TVector3 Position,
47  float Erecdep
48  ): SimHitBase()
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  m_Erecdep = Erecdep;
58 
59  }
60 
61 
64  void setCellId(int CellId) { m_CellId = CellId; }
65 
68  void setTrackId(int TrackId) { m_TrackId = TrackId; }
69 
72  void setPDGCode(int Pdg) { m_Pdg = Pdg; }
73 
76  void setFlightTime(double FlightTime) { m_FlightTime = (float) FlightTime; }
77 
80  void setEnergyDep(double Edep) { m_Edep = (float) Edep; }
81 
84  void setMomentum(TVector3 Momentum) { m_Momentum = Momentum; }
85 
88  void setPosIn(TVector3 Position) { m_Position = Position; }
89 
92  void setPosition(TVector3 Position) { m_Position = Position; }
93 
94 
98  int getCellId() const { return m_CellId; }
99 
103  int getTrackId() const { return m_TrackId; }
104 
108  int getPDGCode() const { return m_Pdg; }
109 
113  double getFlightTime() const { return (double)m_FlightTime; }
114 
118  double getEnergyDep() const { return (double) m_Edep; }
119 
123  double getEnergyRecDep() const { return (double) m_Erecdep; }
124 
128  TVector3 getMomentum() const { return m_Momentum; }
129 
133  TVector3 getPosIn() const { return m_Position; }
134 
138  TVector3 getPosition() const { return m_Position; }
139 
140 
144  void shiftInTime(float delta) override { m_FlightTime += delta; }
145 
146 
147  private:
148  int m_CellId;
149  int m_TrackId;
150  int m_Pdg;
151  float m_FlightTime;
152  float m_Edep;
153  TVector3 m_Momentum;
154  TVector3 m_Position;
155  float m_Erecdep;
157  ClassDefOverride(CsiHit_v2, 1)
158  };
159 
161 } // end namespace Belle2
162 
163 #endif
Belle2::CsiHit_v2::m_CellId
int m_CellId
Cell ID.
Definition: CsiHit_v2.h:156
Belle2::CsiHit_v2::getFlightTime
double getFlightTime() const
Get Flight time from IP.
Definition: CsiHit_v2.h:121
Belle2::CsiHit_v2::getPosIn
TVector3 getPosIn() const
Get Position.
Definition: CsiHit_v2.h:141
Belle2::CsiHit_v2::getPosition
TVector3 getPosition() const
Get Position.
Definition: CsiHit_v2.h:146
Belle2::CsiHit_v2::getMomentum
TVector3 getMomentum() const
Get Momentum.
Definition: CsiHit_v2.h:136
Belle2::CsiHit_v2::getEnergyRecDep
double getEnergyRecDep() const
Get Deposit energy folded by resolution.
Definition: CsiHit_v2.h:131
Belle2::CsiHit_v2::CsiHit_v2
CsiHit_v2()
default constructor for ROOT
Definition: CsiHit_v2.h:44
Belle2::CsiHit_v2::setTrackId
void setTrackId(int TrackId)
Set Track ID.
Definition: CsiHit_v2.h:76
Belle2::CsiHit_v2
ClassCsiHit_v2 - Geant4 simulated hits in CsI crystals in BEAST.
Definition: CsiHit_v2.h:41
Belle2::CsiHit_v2::setPDGCode
void setPDGCode(int Pdg)
Set Particle PDG (can be one of secondaries)
Definition: CsiHit_v2.h:80
Belle2::CsiHit_v2::setPosition
void setPosition(TVector3 Position)
Set Position.
Definition: CsiHit_v2.h:100
Belle2::SimHitBase
Class SimHitBase - A common base for subdetector SimHits.
Definition: SimHitBase.h:38
Belle2::SimHitBase::SimHitBase
SimHitBase()
Constructor.
Definition: SimHitBase.h:43
Belle2::CsiHit_v2::m_Momentum
TVector3 m_Momentum
Momentum.
Definition: CsiHit_v2.h:161
Belle2::CsiHit_v2::m_Erecdep
float m_Erecdep
Deposit energy reconstructed.
Definition: CsiHit_v2.h:163
Belle2::CsiHit_v2::setMomentum
void setMomentum(TVector3 Momentum)
Set Momentum.
Definition: CsiHit_v2.h:92
Belle2::CsiHit_v2::getCellId
int getCellId() const
Get Cell ID.
Definition: CsiHit_v2.h:106
Belle2::CsiHit_v2::setEnergyDep
void setEnergyDep(double Edep)
Set Deposit energy.
Definition: CsiHit_v2.h:88
Belle2::CsiHit_v2::shiftInTime
void shiftInTime(float delta) override
Shift the SimHit in time (needed for beam background mixing)
Definition: CsiHit_v2.h:152
Belle2::CsiHit_v2::m_TrackId
int m_TrackId
Track ID.
Definition: CsiHit_v2.h:157
Belle2::CsiHit_v2::setCellId
void setCellId(int CellId)
Set Cell ID.
Definition: CsiHit_v2.h:72
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::CsiHit_v2::m_Pdg
int m_Pdg
Particle PDG (can be one of secondaries)
Definition: CsiHit_v2.h:158
Belle2::CsiHit_v2::m_FlightTime
float m_FlightTime
Flight time from IP.
Definition: CsiHit_v2.h:159
Belle2::CsiHit_v2::m_Position
TVector3 m_Position
Position.
Definition: CsiHit_v2.h:162
Belle2::CsiHit_v2::getPDGCode
int getPDGCode() const
Get Particle PDG (can be one of secondaries)
Definition: CsiHit_v2.h:116
Belle2::CsiHit_v2::getTrackId
int getTrackId() const
Get Track ID.
Definition: CsiHit_v2.h:111
Belle2::CsiHit_v2::setPosIn
void setPosIn(TVector3 Position)
Set Position.
Definition: CsiHit_v2.h:96
Belle2::CsiHit_v2::setFlightTime
void setFlightTime(double FlightTime)
Set Flight time from IP.
Definition: CsiHit_v2.h:84
Belle2::CsiHit_v2::getEnergyDep
double getEnergyDep() const
Get Deposit energy.
Definition: CsiHit_v2.h:126
Belle2::CsiHit_v2::m_Edep
float m_Edep
Deposit energy.
Definition: CsiHit_v2.h:160