Belle II Software  release-05-01-25
DQMHistAnalysisKLM.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, Leo Piilonen, Vipin Gaur, *
7  * Giacomo De Pietro *
8  * *
9  * This software is provided "as is" without any warranty. *
10  **************************************************************************/
11 
12 #pragma once
13 
14 /* DQM headers. */
15 #include <dqm/analysis/modules/DQMHistAnalysis.h>
16 
17 /* Belle 2 headers. */
18 #include <framework/database/DBObjPtr.h>
19 #include <klm/dataobjects/bklm/BKLMElementNumbers.h>
20 #include <klm/dataobjects/KLMChannelArrayIndex.h>
21 #include <klm/dataobjects/KLMElementNumbers.h>
22 #include <klm/dataobjects/KLMSectorArrayIndex.h>
23 #include <klm/dbobjects/KLMElectronicsMap.h>
24 
25 /* ROOT headers. */
26 #include <TCanvas.h>
27 #include <TLatex.h>
28 #include <TText.h>
29 #include <TLine.h>
30 
31 /* C++ headers. */
32 #include <vector>
33 
34 namespace Belle2 {
43  class DQMHistAnalysisKLMModule : public DQMHistAnalysisModule {
44 
45  public:
46 
51 
56 
60  void initialize() override;
61 
65  void beginRun() override;
66 
70  void event() override;
71 
75  void endRun() override;
76 
80  void terminate() override;
81 
82  protected:
83 
87  double getProcessedEvents();
88 
99  int subdetector, int section, int sector,
100  TH1* histogram, TCanvas* canvas, TLatex& latex);
101 
107  void processPlaneHistogram(const std::string& histName, TLatex& latex);
108 
113  void fillMaskedChannelsHistogram(const std::string& histName);
114 
120  TCanvas* findCanvas(const std::string& canvasName);
121 
123  double m_ProcessedEvents;
124 
127 
129  int m_ThresholdForHot;
130 
133 
136 
139 
141  std::vector<uint16_t> m_DeadBarrelModules;
142 
144  std::vector<uint16_t> m_DeadEndcapModules;
145 
147  std::vector<uint16_t> m_MaskedChannels;
148 
150  TLine m_PlaneLine;
151 
153  TText m_PlaneText;
154 
157 
160 
163 
166 
169 
170  };
171 
173 }
Belle2::DQMHistAnalysisKLMModule::DQMHistAnalysisKLMModule
DQMHistAnalysisKLMModule()
Constructor.
Definition: DQMHistAnalysisKLM.cc:29
Belle2::DQMHistAnalysisKLMModule::m_ThresholdForMasked
int m_ThresholdForMasked
Threshold for masked channels.
Definition: DQMHistAnalysisKLM.h:135
Belle2::DQMHistAnalysisKLMModule::m_ChannelArrayIndex
const KLMChannelArrayIndex * m_ChannelArrayIndex
KLM channel array index.
Definition: DQMHistAnalysisKLM.h:165
Belle2::DQMHistAnalysisKLMModule::m_MaskedChannels
std::vector< uint16_t > m_MaskedChannels
Vector of masked channels.
Definition: DQMHistAnalysisKLM.h:156
Belle2::EKLMElementNumbers
EKLM element numbers.
Definition: EKLMElementNumbers.h:34
Belle2::DQMHistAnalysisKLMModule::processPlaneHistogram
void processPlaneHistogram(const std::string &histName, TLatex &latex)
Process histogram containing the number of hits in plane.
Definition: DQMHistAnalysisKLM.cc:267
Belle2::DQMHistAnalysisKLMModule::~DQMHistAnalysisKLMModule
~DQMHistAnalysisKLMModule()
Destructor.
Definition: DQMHistAnalysisKLM.cc:58
Belle2::DQMHistAnalysisKLMModule::m_PlaneLine
TLine m_PlaneLine
TLine for boundary in plane histograms.
Definition: DQMHistAnalysisKLM.h:159
Belle2::KLMSectorArrayIndex
KLM sector array index.
Definition: KLMSectorArrayIndex.h:33
Belle2::DQMHistAnalysisKLMModule::m_ElectronicsMap
DBObjPtr< KLMElectronicsMap > m_ElectronicsMap
Electronics map.
Definition: DQMHistAnalysisKLM.h:177
Belle2::DQMHistAnalysisKLMModule::m_MinHitsForFlagging
int m_MinHitsForFlagging
Minimal number of hits for flagging.
Definition: DQMHistAnalysisKLM.h:141
Belle2::DQMHistAnalysisKLMModule::event
void event() override
This method is called for each event.
Definition: DQMHistAnalysisKLM.cc:380
Belle2::DQMHistAnalysisKLMModule::m_MinProcessedEventsForMessages
double m_MinProcessedEventsForMessages
Minimal number of processed events for error messages.
Definition: DQMHistAnalysisKLM.h:147
Belle2::DQMHistAnalysisKLMModule::getProcessedEvents
double getProcessedEvents()
Get number of processed events.
Definition: DQMHistAnalysisKLM.cc:89
Belle2::DBObjPtr
Class for accessing objects in the database.
Definition: DBObjPtr.h:31
Belle2::DQMHistAnalysisKLMModule::m_MinProcessedEventsForMessagesInput
double m_MinProcessedEventsForMessagesInput
Input parameter for minimal number of processed events for error messages.
Definition: DQMHistAnalysisKLM.h:144
Belle2::DQMHistAnalysisKLMModule::m_EklmElementNumbers
const EKLMElementNumbers * m_EklmElementNumbers
EKLM element numbers.
Definition: DQMHistAnalysisKLM.h:174
Belle2::DQMHistAnalysisKLMModule::m_ThresholdForHot
int m_ThresholdForHot
Threshold for hot channels.
Definition: DQMHistAnalysisKLM.h:138
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::DQMHistAnalysisKLMModule::endRun
void endRun() override
This method is called if the current run ends.
Definition: DQMHistAnalysisKLM.cc:85
Belle2::DQMHistAnalysisKLMModule::initialize
void initialize() override
Initializer.
Definition: DQMHistAnalysisKLM.cc:62
Belle2::DQMHistAnalysisKLMModule::m_DeadEndcapModules
std::vector< uint16_t > m_DeadEndcapModules
Vector of dead endcap modules.
Definition: DQMHistAnalysisKLM.h:153
Belle2::DQMHistAnalysisKLMModule::findCanvas
TCanvas * findCanvas(const std::string &canvasName)
Find TCanvas that matches a given name.
Definition: DQMHistAnalysisKLM.cc:366
Belle2::DQMHistAnalysisKLMModule::analyseChannelHitHistogram
void analyseChannelHitHistogram(int subdetector, int section, int sector, TH1 *histogram, TCanvas *canvas, TLatex &latex)
Analyse channel hit histogram.
Definition: DQMHistAnalysisKLM.cc:101
Belle2::DQMHistAnalysisKLMModule::terminate
void terminate() override
This method is called at the end of the event processing.
Definition: DQMHistAnalysisKLM.cc:70
Belle2::DQMHistAnalysisKLMModule::m_ElementNumbers
const KLMElementNumbers * m_ElementNumbers
KLM element numbers.
Definition: DQMHistAnalysisKLM.h:171
Belle2::DQMHistAnalysisKLMModule::m_SectorArrayIndex
const KLMSectorArrayIndex * m_SectorArrayIndex
KLM sector array index.
Definition: DQMHistAnalysisKLM.h:168
Belle2::DQMHistAnalysisKLMModule::m_DeadBarrelModules
std::vector< uint16_t > m_DeadBarrelModules
Vector of dead barrel modules.
Definition: DQMHistAnalysisKLM.h:150
Belle2::DQMHistAnalysisKLMModule::m_PlaneText
TText m_PlaneText
TText for names in plane histograms.
Definition: DQMHistAnalysisKLM.h:162
Belle2::KLMElementNumbers
KLM element numbers.
Definition: KLMElementNumbers.h:37
Belle2::KLMChannelArrayIndex
KLM channel array index.
Definition: KLMChannelArrayIndex.h:33
Belle2::DQMHistAnalysisKLMModule::beginRun
void beginRun() override
Called when entering a new run.
Definition: DQMHistAnalysisKLM.cc:74
Belle2::DQMHistAnalysisKLMModule::fillMaskedChannelsHistogram
void fillMaskedChannelsHistogram(const std::string &histName)
Fill histogram containing masked channels per sector.
Definition: DQMHistAnalysisKLM.cc:230
Belle2::DQMHistAnalysisKLMModule::m_ProcessedEvents
double m_ProcessedEvents
Number of processed events.
Definition: DQMHistAnalysisKLM.h:132