Belle II Software  release-06-00-14
BKLMSimHit.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 #pragma once
10 
11 /* KLM headers. */
12 #include <klm/dataobjects/bklm/BKLMElementNumbers.h>
13 #include <klm/dataobjects/bklm/BKLMStatus.h>
14 
15 /* Belle 2 headers. */
16 #include <simulation/dataobjects/SimHitBase.h>
17 
18 namespace Belle2 {
25  class BKLMSimHit : public SimHitBase {
26 
27  public:
28 
30  BKLMSimHit();
31 
38  BKLMSimHit(int moduleID, double x, double t, double dE);
39 
42  {
43  }
44 
46  BKLMSimHit(const BKLMSimHit&);
47 
50 
53  bool inRPC() const
54  {
56  }
57 
60  int getSection() const
61  {
63  }
64 
67  int getSector() const
68  {
70  }
71 
74  int getLayer() const
75  {
77  }
78 
81  int getPlane() const
82  {
84  }
85 
88  bool isPhiReadout() const
89  {
92  }
93 
96  int getStrip() const
97  {
99  }
100 
103  int getStripMin() const
104  {
106  }
107 
110  int getStripMax() const
111  {
113  }
114 
117  int getModuleID() const
118  {
119  return m_ModuleID;
120  }
121 
124  float getPropagationTime() const
125  {
126  return m_PropagationTime;
127  }
128 
131  float getGlobalTime() const override
132  {
133  return m_Time;
134  }
135 
138  double getTime() const
139  {
140  return (double)m_Time;
141  }
142 
145  double getEnergyDeposit() const
146  {
147  return (double)m_EDep;
148  }
149 
152  void shiftInTime(float delta) override
153  {
154  m_Time += delta;
155  }
156 
157  private:
158 
162 
164  float m_Time;
165 
167  float m_EDep;
168 
171 
174 
175  };
176 
178 } // end of namespace Belle2
static int getSectorByModule(int module)
Get sector number by module identifier.
static int getStripByModule(int module)
Get strip number by module identifier.
static int getPlaneByModule(int module)
Get plane number (0 = z, 1 = phi) by module identifier.
@ c_FirstRPCLayer
First RPC layer.
static int getLayerByModule(int module)
Get layer number by module identifier.
static int getSectionByModule(int module)
Get section number by module identifier.
Store one simulation hit as a ROOT object.
Definition: BKLMSimHit.h:25
bool inRPC() const
Determine whether this hit is in an RPC or scintillator.
Definition: BKLMSimHit.h:53
int getStripMin() const
Get lowest readout strip number of a contiguous set.
Definition: BKLMSimHit.h:103
int getLayer() const
Get layer number.
Definition: BKLMSimHit.h:74
float m_Time
event hit time (ns)
Definition: BKLMSimHit.h:164
float getGlobalTime() const override
Get the hit time (implementation of base class function.
Definition: BKLMSimHit.h:131
int getSection() const
Get section number.
Definition: BKLMSimHit.h:60
int getPlane() const
Get plane number.
Definition: BKLMSimHit.h:81
float getPropagationTime() const
Get signal propagation time alont strip.
Definition: BKLMSimHit.h:124
int getStrip() const
Get strip number of this hit.
Definition: BKLMSimHit.h:96
ClassDefOverride(BKLMSimHit, 5)
Needed to make the ROOT object storable.
BKLMSimHit()
Empty constructor for ROOT IO (needed to make the class storable)
Definition: BKLMSimHit.cc:15
int getSector() const
Get sector number.
Definition: BKLMSimHit.h:67
int getModuleID() const
Get detector-module identifier.
Definition: BKLMSimHit.h:117
bool isPhiReadout() const
Get readout coordinate.
Definition: BKLMSimHit.h:88
int m_ModuleID
detector-module identifier
Definition: BKLMSimHit.h:161
float m_EDep
energy deposition (MeV)
Definition: BKLMSimHit.h:167
double getEnergyDeposit() const
Get energy deposition.
Definition: BKLMSimHit.h:145
~BKLMSimHit()
Destructor.
Definition: BKLMSimHit.h:41
float m_PropagationTime
time-of-propagation (ns) from hit to sensor
Definition: BKLMSimHit.h:170
void shiftInTime(float delta) override
Adjust time (for background-overlay hit)
Definition: BKLMSimHit.h:152
BKLMSimHit & operator=(const BKLMSimHit &)
Assignment operator.
Definition: BKLMSimHit.cc:45
int getStripMax() const
Get highest readout strip number of a contiguous set.
Definition: BKLMSimHit.h:110
double getTime() const
Get the hit time.
Definition: BKLMSimHit.h:138
static int getMaximalStrip(int module)
Get maximal strip number.
Definition: BKLMStatus.h:85
Class SimHitBase - A common base for subdetector SimHits.
Definition: SimHitBase.h:28
Abstract base class for different kinds of events.