Belle II Software  release-05-01-25
KLMDQMModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2018 Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Kirill Chilikin, Vipin Gaur, Leo Piilonen *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 /* KLM headers. */
14 #include <klm/dataobjects/bklm/BKLMElementNumbers.h>
15 #include <klm/dataobjects/bklm/BKLMHit1d.h>
16 #include <klm/dataobjects/eklm/EKLMElementNumbers.h>
17 #include <klm/dataobjects/KLMDigit.h>
18 #include <klm/dataobjects/KLMChannelArrayIndex.h>
19 #include <klm/dataobjects/KLMElementNumbers.h>
20 #include <klm/dataobjects/KLMSectorArrayIndex.h>
21 
22 /* Belle 2 headers. */
23 #include <framework/core/HistoModule.h>
24 #include <framework/datastore/StoreArray.h>
25 #include <rawdata/dataobjects/RawFTSW.h>
26 #include <rawdata/dataobjects/RawKLM.h>
27 
28 /* ROOT headers. */
29 #include <TH1F.h>
30 
31 namespace Belle2 {
43  class KLMDQMModule : public HistoModule {
44 
45  public:
46 
50  KLMDQMModule();
51 
55  ~KLMDQMModule();
56 
60  void defineHisto() override;
61 
65  void initialize() override;
66 
70  void beginRun() override;
71 
75  void event() override;
76 
80  void endRun() override;
81 
85  void terminate() override;
86 
87  private:
88 
90  enum TriggerBitsBin {
91 
93  c_0x8 = 1,
94 
96  c_0x4 = 2,
97 
99  c_0x2 = 3,
100 
102  c_0x1 = 4,
103 
104  };
105 
108 
111 
113  std::string m_HistogramDirectoryName;
114 
116  TH1F* m_DAQInclusion;
117 
119  TH1F* m_TimeRPC;
120 
123 
126 
128  TH1F* m_PlaneBKLMPhi;
129 
131  TH1F* m_PlaneBKLMZ;
132 
134  TH1F* m_PlaneEKLM;
135 
137  TH1F** m_ChannelHits[
140 
143 
145  TH1F* m_DigitsKLM;
146 
148  TH1F* m_DigitsRPC;
149 
152 
155 
158 
161 
163  TH1F* m_TriggerBitsBKLM;
164 
166  TH1F* m_TriggerBitsEKLM;
167 
170 
172  TH1F* m_TriggersLERInj;
173 
176 
178  TH1F* m_TriggersHERInj;
179 
182 
185 
188 
191 
194 
197 
200 
203 
204  };
205 
207 }
Belle2::KLMDQMModule::c_0x2
@ c_0x2
0x2.
Definition: KLMDQMModule.h:107
Belle2::EKLMElementNumbers::getMaximalSectorGlobalNumberKLMOrder
static constexpr int getMaximalSectorGlobalNumberKLMOrder()
Get maximal sector global number with KLM ordering (section, sector).
Definition: EKLMElementNumbers.h:353
Belle2::KLMDQMModule::m_Digits
StoreArray< KLMDigit > m_Digits
KLM digits.
Definition: KLMDQMModule.h:207
Belle2::KLMDQMModule::m_KlmDigitsAfterHERInj
TH1F * m_KlmDigitsAfterHERInj
Number of KLM Digits after LER injection.
Definition: KLMDQMModule.h:183
Belle2::KLMDQMModule::m_TriggerBitsEKLM
TH1F * m_TriggerBitsEKLM
Trigger bits: EKLM scintillators.
Definition: KLMDQMModule.h:174
Belle2::EKLMElementNumbers
EKLM element numbers.
Definition: EKLMElementNumbers.h:34
Belle2::KLMDQMModule::beginRun
void beginRun() override
Called when entering a new run.
Definition: KLMDQMModule.cc:247
Belle2::KLMDQMModule::m_ChannelHitHistogramsEKLM
const int m_ChannelHitHistogramsEKLM
Number of channel hit histograms per sector for EKLM.
Definition: KLMDQMModule.h:118
Belle2::KLMDQMModule::TriggerBitsBin
TriggerBitsBin
Bins for the trigger bits historgrams.
Definition: KLMDQMModule.h:98
Belle2::KLMDQMModule::m_RawKlms
StoreArray< RawKLM > m_RawKlms
Raw KLM.
Definition: KLMDQMModule.h:204
Belle2::KLMSectorArrayIndex
KLM sector array index.
Definition: KLMSectorArrayIndex.h:33
Belle2::KLMDQMModule::m_PlaneBKLMPhi
TH1F * m_PlaneBKLMPhi
Plane occupancy: BKLM, phi readout.
Definition: KLMDQMModule.h:136
Belle2::KLMDQMModule::m_DAQInclusion
TH1F * m_DAQInclusion
KLM DAQ inclusion.
Definition: KLMDQMModule.h:124
Belle2::KLMDQMModule::m_ChannelHitHistogramsBKLM
const int m_ChannelHitHistogramsBKLM
Number of channel hit histograms per sector for BKLM.
Definition: KLMDQMModule.h:115
Belle2::KLMDQMModule::m_PlaneBKLMZ
TH1F * m_PlaneBKLMZ
Plane occupancy: BKLM, z readout.
Definition: KLMDQMModule.h:139
Belle2::KLMDQMModule::m_TriggersHERInj
TH1F * m_TriggersHERInj
Histogram to be used for normalization of occupancy after HER injection.
Definition: KLMDQMModule.h:186
Belle2::KLMDQMModule::m_MaskedChannelsPerSector
TH1F * m_MaskedChannelsPerSector
Masked channels per sector.
Definition: KLMDQMModule.h:150
Belle2::KLMDQMModule::endRun
void endRun() override
This method is called if the current run ends.
Definition: KLMDQMModule.cc:429
Belle2::KLMDQMModule::~KLMDQMModule
~KLMDQMModule()
Destructor.
Definition: KLMDQMModule.cc:59
Belle2::KLMDQMModule::m_HistogramDirectoryName
std::string m_HistogramDirectoryName
Directory for KLM DQM histograms in ROOT file.
Definition: KLMDQMModule.h:121
Belle2::KLMDQMModule::m_TriggerBitsBKLM
TH1F * m_TriggerBitsBKLM
Trigger bits: BKLM scintillators.
Definition: KLMDQMModule.h:171
Belle2::KLMDQMModule::m_PlaneEKLM
TH1F * m_PlaneEKLM
Plane occupancy: EKLM.
Definition: KLMDQMModule.h:142
Belle2::KLMDQMModule::m_ChannelHits
TH1F ** m_ChannelHits[EKLMElementNumbers::getMaximalSectorGlobalNumberKLMOrder()+BKLMElementNumbers::getMaximalSectorGlobalNumber()]
Number of hits per channel.
Definition: KLMDQMModule.h:147
Belle2::KLMDQMModule::m_DigitsRPC
TH1F * m_DigitsRPC
Number of digits: BKLM RPCs.
Definition: KLMDQMModule.h:156
Belle2::KLMDQMModule::c_0x8
@ c_0x8
0x8.
Definition: KLMDQMModule.h:101
Belle2::KLMDQMModule::c_0x1
@ c_0x1
0x1.
Definition: KLMDQMModule.h:110
Belle2::KLMDQMModule::m_ChannelArrayIndex
const KLMChannelArrayIndex * m_ChannelArrayIndex
KLM channel array index.
Definition: KLMDQMModule.h:189
Belle2::KLMDQMModule::event
void event() override
This method is called for each event.
Definition: KLMDQMModule.cc:293
Belle2::KLMDQMModule::initialize
void initialize() override
Initializer.
Definition: KLMDQMModule.cc:238
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::BKLMElementNumbers::getMaximalSectorGlobalNumber
static constexpr int getMaximalSectorGlobalNumber()
Get maximal sector global number.
Definition: BKLMElementNumbers.h:267
Belle2::KLMDQMModule::m_BklmHit1ds
StoreArray< BKLMHit1d > m_BklmHit1ds
BKLM 1d hits.
Definition: KLMDQMModule.h:210
Belle2::KLMDQMModule::defineHisto
void defineHisto() override
Definition of the histograms.
Definition: KLMDQMModule.cc:70
Belle2::KLMDQMModule::m_TriggersLERInj
TH1F * m_TriggersLERInj
Histogram to be used for normalization of occupancy after LER injection.
Definition: KLMDQMModule.h:180
Belle2::KLMDQMModule::m_RawFtsws
StoreArray< RawFTSW > m_RawFtsws
Raw FTSW.
Definition: KLMDQMModule.h:201
Belle2::KLMDQMModule::m_TimeScintillatorBKLM
TH1F * m_TimeScintillatorBKLM
Time: BKLM scintillators.
Definition: KLMDQMModule.h:130
Belle2::KLMDQMModule::m_DigitsScintillatorEKLM
TH1F * m_DigitsScintillatorEKLM
Number of digits: EKLM scintillators.
Definition: KLMDQMModule.h:162
Belle2::KLMDQMModule::m_DigitsMultiStripEKLM
TH1F * m_DigitsMultiStripEKLM
Number of multi-strip digits: EKLM scintillators.
Definition: KLMDQMModule.h:168
Belle2::KLMDQMModule::m_ElementNumbers
const KLMElementNumbers * m_ElementNumbers
KLM element numbers.
Definition: KLMDQMModule.h:195
Belle2::KLMDQMModule::terminate
void terminate() override
This method is called at the end of the event processing.
Definition: KLMDQMModule.cc:433
Belle2::KLMDQMModule::m_DigitsMultiStripBKLM
TH1F * m_DigitsMultiStripBKLM
Number of multi-strip digits: BKLM scintillators.
Definition: KLMDQMModule.h:165
Belle2::KLMDQMModule::m_eklmElementNumbers
const EKLMElementNumbers * m_eklmElementNumbers
Element numbers.
Definition: KLMDQMModule.h:198
Belle2::KLMDQMModule::m_DigitsKLM
TH1F * m_DigitsKLM
Number of digits: whole KLM.
Definition: KLMDQMModule.h:153
Belle2::KLMElementNumbers
KLM element numbers.
Definition: KLMElementNumbers.h:37
Belle2::StoreArray
Accessor to arrays stored in the data store.
Definition: ECLMatchingPerformanceExpertModule.h:33
Belle2::KLMDQMModule::m_DigitsScintillatorBKLM
TH1F * m_DigitsScintillatorBKLM
Number of digits: BKLM scintillators.
Definition: KLMDQMModule.h:159
Belle2::KLMDQMModule::m_SectorArrayIndex
const KLMSectorArrayIndex * m_SectorArrayIndex
KLM sector array index.
Definition: KLMDQMModule.h:192
Belle2::KLMChannelArrayIndex
KLM channel array index.
Definition: KLMChannelArrayIndex.h:33
Belle2::KLMDQMModule::m_TimeScintillatorEKLM
TH1F * m_TimeScintillatorEKLM
Time: EKLM scintillators.
Definition: KLMDQMModule.h:133
Belle2::KLMDQMModule::m_TimeRPC
TH1F * m_TimeRPC
Time: BKLM RPCs.
Definition: KLMDQMModule.h:127
Belle2::KLMDQMModule::m_KlmDigitsAfterLERInj
TH1F * m_KlmDigitsAfterLERInj
Number of KLM Digits after LER injection.
Definition: KLMDQMModule.h:177
Belle2::KLMDQMModule::c_0x4
@ c_0x4
0x4.
Definition: KLMDQMModule.h:104
Belle2::KLMDQMModule::KLMDQMModule
KLMDQMModule()
Constructor.
Definition: KLMDQMModule.cc:25