Belle II Software  release-05-01-25
DQMHistAnalysisTRGGDL.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Kindo Haruki *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #ifndef TRGGDLDQMANALYSISMODULE_H
12 #define TRGGDLDQMANALYSISMODULE_H
13 
14 #pragma once
15 
16 #ifdef _BELLE2_EPICS
17 // EPICS
18 #include "cadef.h"
19 #endif
20 
21 //DQM
22 #include <dqm/analysis/modules/DQMHistAnalysis.h>
23 
24 
25 //ARICH
26 #include <arich/utility/ARICHChannelHist.h>
27 
28 #include <vector>
29 
30 #include <TCanvas.h>
31 #include <TLine.h>
32 #include <TH2Poly.h>
33 
34 namespace Belle2 {
43  class DQMHistAnalysisTRGGDLModule : public DQMHistAnalysisModule {
44 
45  public:
46 
51 
56 
61  virtual void initialize() override;
62 
67  virtual void beginRun() override;
68 
72  virtual void event() override;
73 
78  virtual void endRun() override;
79 
84  virtual void terminate() override;
85 
91  TCanvas* find_canvas(TString cname);
92 
93  protected:
94  bool m_debug;
95  bool m_enableAlert;
98  static const int nskim_gdldqm = 11;
99  std::string skim_smap[nskim_gdldqm] = {
100  "all",
101  "hadron",
102  "tautau",
103  "mumu1trk",
104  "mumu2trk",
105  "gammagamma",
106  "bhabha",
107  "hadronb",
108  "hadronb1",
109  "hadronb2",
110  "mumutight"
111  };
113  TH1D* m_h_psn_extra[nskim_gdldqm] = {};
114  TH1D* m_h_psn_pure_extra = nullptr;
115  TCanvas* m_c_eff[nskim_gdldqm] = {};
116  TH1D* m_h_eff[nskim_gdldqm] = {};
117  static const int n_eff = 35;
119  const char* c_eff[n_eff] = {
120  "fff with c4|hie",
121  "ffo with c4|hie",
122  "ffb with c4|hie",
123  "ffy with c4|hie",
124  "fyo with c4|hie",
125  "fyb with c4|hie",
126  "hie with fff|ffo|ffb",
127  "c4 with fff|ffo|ffb",
128  "lml0 with fff|ffo|ffb",
129  "lml1 with fff|ffo|ffb",
130  "lml2 with fff|ffo|ffb",
131  "lml3 with fff|ffo|ffb",
132  "lml4 with fff|ffo|ffb",
133  "lml5 with fff|ffo|ffb",
134  "lml6 with fff|ffo|ffb",
135  "lml7 with fff|ffo|ffb",
136  "lml8 with fff|ffo|ffb",
137  "lml9 with fff|ffo|ffb",
138  "lml10 with fff|ffo|ffb",
139  "lml12 with fff|ffo|ffb",
140  "lml13 with fff|ffo|ffb",
141  "bha3d with all",
142  "mu_b2b with fff|ffo|ffb",
143  "mu_b2b with lml|eclmumu",
144  "mu_eb2b with lml|eclmumu",
145  "cdcklm1 with fff|ffo|ffb",
146  "cdcklm2 with fff|ffo|ffb",
147  "fff with lml|eclmumu",
148  "ffo with lml|eclmumu",
149  "ffb with lml|eclmumu",
150  "ff with lml|eclmumu",
151  "f with lml|eclmumu",
152  "ffy with lml|eclmumu",
153  "fyo with lml|eclmumu",
154  "fyb with lml|eclmumu"
155  };
156  TCanvas* m_c_eff_shifter = nullptr;
157  TH1D* m_h_eff_shifter = nullptr;
158  static const int n_eff_shifter = 7;
159  const char* c_eff_shifter[n_eff_shifter] = {
160  "CDC fff",
161  "CDC ffo",
162  "CDC ffy",
163  "CDC fyo",
164  "ECL hie",
165  "ECL c4",
166  "KLM b2b"
167  };
168  TCanvas* m_c_pure_eff = nullptr;
169  TH1D* m_h_pure_eff = nullptr;
170  static const int n_pure_eff = 8;
172  const char* c_pure_eff[n_pure_eff] = {
173  "fff with c4|hie",
174  "ffo with c4|hie",
175  "ffb with c4|hie",
176  "ffy with c4|hie",
177  "fyo with c4|hie",
178  "fyb with c4|hie",
179  "hie with fff|ffo|ffb",
180  "c4 with fff|ffo|ffb"
181  };
182 
186  0.7, 0.7, 0.7, 0.7, 0.8, 0.8, 0.1
187  };
189  0.9, 0.9, 0.9, 0.9, 1.0, 1.0, 0.2
190  };
192 #ifdef _BELLE2_EPICS
193  chid mychid[n_eff_shifter];// hard limit max 10 parameters
194 #endif
195 
196  };
197 
199 } // Belle2 namespace
200 
201 #endif
Belle2::DQMHistAnalysisTRGGDLModule::m_line_limit_low_shifter
TLine * m_line_limit_low_shifter[n_eff_shifter]
lower limit line for the simplified efficiency histogram
Definition: DQMHistAnalysisTRGGDL.h:191
Belle2::DQMHistAnalysisTRGGDLModule::find_canvas
TCanvas * find_canvas(TString cname)
Find canvas by name.
Definition: DQMHistAnalysisTRGGDL.cc:385
Belle2::DQMHistAnalysisTRGGDLModule::n_eff
static const int n_eff
number of bins for the efficiency histogram
Definition: DQMHistAnalysisTRGGDL.h:125
Belle2::DQMHistAnalysisTRGGDLModule::m_c_eff_shifter
TCanvas * m_c_eff_shifter
Canvas for TRGGDL efficiency, simplified one for CR shifter.
Definition: DQMHistAnalysisTRGGDL.h:164
Belle2::DQMHistAnalysisTRGGDLModule::m_limit_low_shifter
double m_limit_low_shifter[n_eff_shifter]
lower limit value in each bin
Definition: DQMHistAnalysisTRGGDL.h:193
Belle2::DQMHistAnalysisTRGGDLModule::DQMHistAnalysisTRGGDLModule
DQMHistAnalysisTRGGDLModule()
Constructor.
Definition: DQMHistAnalysisTRGGDL.cc:38
Belle2::DQMHistAnalysisTRGGDLModule::m_h_eff
TH1D * m_h_eff[nskim_gdldqm]
Histogram for TRGGDL efficiency in each HLT skim.
Definition: DQMHistAnalysisTRGGDL.h:124
Belle2::DQMHistAnalysisTRGGDLModule::c_pure_eff
const char * c_pure_eff[n_pure_eff]
label of bins for the efficiency histogram with offline selection
Definition: DQMHistAnalysisTRGGDL.h:180
Belle2::DQMHistAnalysisTRGGDLModule::m_h_pure_eff
TH1D * m_h_pure_eff
Histogram for TRGGDL efficiency with offline selection.
Definition: DQMHistAnalysisTRGGDL.h:177
Belle2::DQMHistAnalysisTRGGDLModule::m_debug
bool m_debug
debug
Definition: DQMHistAnalysisTRGGDL.h:102
Belle2::DQMHistAnalysisTRGGDLModule::endRun
virtual void endRun() override
End-of-run action.
Definition: DQMHistAnalysisTRGGDL.cc:369
Belle2::DQMHistAnalysisTRGGDLModule::m_limit_high_shifter
double m_limit_high_shifter[n_eff_shifter]
upper limit value in each bin
Definition: DQMHistAnalysisTRGGDL.h:196
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::DQMHistAnalysisTRGGDLModule::n_pure_eff
static const int n_pure_eff
number of bins for the efficiency histogram with offline selection
Definition: DQMHistAnalysisTRGGDL.h:178
Belle2::DQMHistAnalysisTRGGDLModule::c_eff
const char * c_eff[n_eff]
label of bins for the efficiency histogram
Definition: DQMHistAnalysisTRGGDL.h:127
Belle2::DQMHistAnalysisTRGGDLModule::nskim_gdldqm
static const int nskim_gdldqm
number of HLT skims
Definition: DQMHistAnalysisTRGGDL.h:106
Belle2::DQMHistAnalysisTRGGDLModule::m_enableAlert
bool m_enableAlert
Enable alert by base color of canvases.
Definition: DQMHistAnalysisTRGGDL.h:103
Belle2::DQMHistAnalysisTRGGDLModule::c_eff_shifter
const char * c_eff_shifter[n_eff_shifter]
label of bins for the simplified efficiency histogram
Definition: DQMHistAnalysisTRGGDL.h:167
Belle2::DQMHistAnalysisTRGGDLModule::~DQMHistAnalysisTRGGDLModule
virtual ~DQMHistAnalysisTRGGDLModule()
Destructor.
Definition: DQMHistAnalysisTRGGDL.cc:48
Belle2::DQMHistAnalysisTRGGDLModule::m_h_psn_extra
TH1D * m_h_psn_extra[nskim_gdldqm]
DQM Histogram for PSN bits in each HLT skim.
Definition: DQMHistAnalysisTRGGDL.h:121
Belle2::DQMHistAnalysisTRGGDLModule::event
virtual void event() override
Event processor.
Definition: DQMHistAnalysisTRGGDL.cc:106
Belle2::DQMHistAnalysisTRGGDLModule::m_h_psn_pure_extra
TH1D * m_h_psn_pure_extra
DQM Histogram for PSN bits with offline selection.
Definition: DQMHistAnalysisTRGGDL.h:122
Belle2::DQMHistAnalysisTRGGDLModule::skim_smap
std::string skim_smap[nskim_gdldqm]
name of HLT skims
Definition: DQMHistAnalysisTRGGDL.h:107
Belle2::DQMHistAnalysisTRGGDLModule::beginRun
virtual void beginRun() override
Called when entering a new run.
Definition: DQMHistAnalysisTRGGDL.cc:102
Belle2::DQMHistAnalysisTRGGDLModule::m_h_eff_shifter
TH1D * m_h_eff_shifter
Histogram for TRGGDL efficiency, simplified one for CR shifter.
Definition: DQMHistAnalysisTRGGDL.h:165
Belle2::DQMHistAnalysisTRGGDLModule::m_c_pure_eff
TCanvas * m_c_pure_eff
Canvas for TRGGDL efficiency with offline selection.
Definition: DQMHistAnalysisTRGGDL.h:176
Belle2::DQMHistAnalysisTRGGDLModule::m_c_eff
TCanvas * m_c_eff[nskim_gdldqm]
Canvas for TRGGDL efficiency in each HLT skim.
Definition: DQMHistAnalysisTRGGDL.h:123
Belle2::DQMHistAnalysisTRGGDLModule::initialize
virtual void initialize() override
Initialize the Module.
Definition: DQMHistAnalysisTRGGDL.cc:55
Belle2::DQMHistAnalysisTRGGDLModule::terminate
virtual void terminate() override
Termination action.
Definition: DQMHistAnalysisTRGGDL.cc:374
Belle2::DQMHistAnalysisTRGGDLModule::n_eff_shifter
static const int n_eff_shifter
number of bins for the simplified efficiency histogram
Definition: DQMHistAnalysisTRGGDL.h:166
Belle2::DQMHistAnalysisTRGGDLModule::m_line_limit_high_shifter
TLine * m_line_limit_high_shifter[n_eff_shifter]
upper limit line for the simplified efficiency histogram
Definition: DQMHistAnalysisTRGGDL.h:192