Belle II Software  release-06-01-15
BKLMSimulationPar.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 /* Belle 2 headers. */
12 #include <framework/gearbox/GearDir.h>
13 
14 /* ROOT headers. */
15 #include <TObject.h>
16 
17 namespace Belle2 {
24  class BKLMSimulationPar: public TObject {
25 
26  enum {
27  c_NDIV = 5,
28  c_MAX_NHIT = 10
29  };
30 
31  public:
32 
35  {
36  }
37 
39  explicit BKLMSimulationPar(const GearDir&);
40 
43 
45  void read(const GearDir&);
46 
48  double getHitTimeMax(void) const
49  {
50  return m_HitTimeMax;
51  }
52 
54  int getNPhiDivision(void) const
55  {
56  return m_NPhiDiv;
57  }
58 
60  int getNZDivision(void) const
61  {
62  return m_NZDiv;
63  }
64 
66  int getMaxMultiplicity(void) const
67  {
68  return c_MAX_NHIT;
69  }
70 
72  int getNPhiMultiplicity(int division) const
73  {
74  return m_NPhiMultiplicity[division];
75  }
76 
78  int getNZMultiplicity(int division) const
79  {
80  return m_NZMultiplicity[division];
81  }
82 
84  double getPhiWeight(int division, int nmutiplicity) const
85  {
86  return m_PhiWeight[division][nmutiplicity];
87  }
88 
90  double getZWeight(int division, int nmutiplicity) const
91  {
92  return m_ZWeight[division][nmutiplicity];
93  }
94 
96  double getPhiMultiplicityCDF(double stripDiv, int mult) const;
97 
99  double getZMultiplicityCDF(double stripDiv, int mult) const;
100 
101  private:
102 
104  double m_HitTimeMax;
105 
107  double m_PhiMultiplicityCDF[c_NDIV + 1][c_MAX_NHIT];
108 
110  double m_ZMultiplicityCDF[c_NDIV + 1][c_MAX_NHIT];
111 
114 
116  int m_NZDiv;
117 
119  int m_NPhiMultiplicity[c_NDIV + 1];
120 
122  int m_NZMultiplicity[c_NDIV + 1];
123 
125  double m_PhiWeight[c_NDIV + 1][c_MAX_NHIT];
126 
128  double m_ZWeight[c_NDIV + 1][c_MAX_NHIT];
129 
132 
133  };
134 
136 } // end of namespace Belle2
Provides BKLM simulation parameters.
double m_PhiMultiplicityCDF[c_NDIV+1][c_MAX_NHIT]
RPC phiStrip multiplicity cumulative probability distribution table.
~BKLMSimulationPar()
Default destructor.
double getZWeight(int division, int nmutiplicity) const
Get weight table for z.
double m_ZWeight[c_NDIV+1][c_MAX_NHIT]
RPC zStrip weight table.
double m_ZMultiplicityCDF[c_NDIV+1][c_MAX_NHIT]
RPC zStrip multiplicity cumulative probability distribution table.
int getNZMultiplicity(int division) const
Get number of kind of mutiplicity for zstrips.
double getHitTimeMax(void) const
Get the maximum global time for a recorded sim hit.
double getPhiWeight(int division, int nmutiplicity) const
Get weight table for phi.
int m_NZDiv
Number of division for zstrips.
double getZMultiplicityCDF(double stripDiv, int mult) const
Get the RPC z-strip cumulative prob density function.
double getPhiMultiplicityCDF(double stripDiv, int mult) const
Get the RPC phi-strip cumulative prob density function.
int getMaxMultiplicity(void) const
Get the maximum multiplicity in the RPC strip cumulative prob density functions.
BKLMSimulationPar()
Default constructor.
double m_PhiWeight[c_NDIV+1][c_MAX_NHIT]
RPC phiStrip weight table.
int getNPhiMultiplicity(int division) const
Get number of kind of mutiplicity for phistrips.
double m_HitTimeMax
Maximum global time for a recorded sim hit.
int m_NPhiDiv
Number of division for phistrips.
int getNPhiDivision(void) const
Get number of divisions for phi strips.
ClassDef(BKLMSimulationPar, 3)
Class version.
int m_NPhiMultiplicity[c_NDIV+1]
Number of kind of mutiplicity of phistrips in each divison.
int getNZDivision(void) const
Get number of divisions for z strips.
void read(const GearDir &)
Get simulation parameters from Gearbox.
int m_NZMultiplicity[c_NDIV+1]
Number of weigths of zstrips in each divison.
GearDir is the basic class used for accessing the parameter store.
Definition: GearDir.h:31
Abstract base class for different kinds of events.