Belle II Software  release-06-00-14
DQMHistAnalysisSVDEfficiency.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 // File : DQMHistAnalysisSVDEfficiency.h
10 // Description : module for DQM histogram analysis of SVD sensors efficiencies
11 //-
12 
13 #pragma once
14 
15 #include <dqm/analysis/modules/DQMHistAnalysis.h>
16 #include <svd/dataobjects/SVDSummaryPlots.h>
17 
18 #include <TFile.h>
19 #include <TPaveText.h>
20 #include <TCanvas.h>
21 
22 namespace Belle2 {
30 
31  // Public functions
32  public:
33 
37 
39  virtual void initialize() override;
40 
42  virtual void beginRun() override;
43  virtual void event() override;
44  virtual void endRun() override;
45  virtual void terminate() override;
46 
47  //parameters
48  float m_effError;
49  float m_effWarning;
52  private:
53 
55  std::string m_refFileName;
57  TFile* m_refFile = nullptr;
58 
59  TCanvas* m_cEfficiencyU = nullptr;
60  TCanvas* m_cEfficiencyV = nullptr;
62  TCanvas* m_cEfficiencyErrU = nullptr;
63  TCanvas* m_cEfficiencyErrV = nullptr;
66  Int_t findBinY(Int_t layer, Int_t sensor);
68  TPaveText* m_legProblem = nullptr;
69  TPaveText* m_legWarning = nullptr;
70  TPaveText* m_legNormal = nullptr;
71  TPaveText* m_legEmpty = nullptr;
74  enum effStatus {
75  good = 0,
76  warning = 1,
77  error = 2,
78  lowStat = 3
79  };
84  std::vector<VxdID> m_SVDModules;
85 
86  };
88 } // end namespace Belle2
89 
The base class for the histogram analysis module.
Class definition for the output module of Sequential ROOT I/O.
float m_statThreshold
minimal number of tracks per sensor to set green or red frame
TPaveText * m_legEmpty
efficiency plot legend, empty
TCanvas * m_cEfficiencyErrU
efficiency U error plot canvas
Int_t findBinY(Int_t layer, Int_t sensor)
find Y bin corresponding to sensor, efficiency plot
virtual void initialize() override
Module functions to be called from main process.
virtual void event() override
This method is the core of the module.
std::vector< VxdID > m_SVDModules
IDs of all SVD Modules to iterate over.
effStatus m_effUstatus
number representing the status of the efficiency U side
virtual void endRun() override
This method is called if the current run ends.
virtual void terminate() override
This method is called at the end of the event processing.
TPaveText * m_legWarning
efficiency plot legend, warning
virtual void beginRun() override
Module functions to be called from event process.
float m_effWarning
warning level of the efficiency
effStatus m_effVstatus
number representing the status of the efficiency V side
TPaveText * m_legNormal
efficiency plot legend, normal
TCanvas * m_cEfficiencyErrV
efficiency V error plot canvas
TPaveText * m_legProblem
efficiency plot legend, problem
SVDSummaryPlots * m_hEfficiencyErr
efficiency error histo
TFile * m_refFile
The pointer to the reference file.
class to summarize SVD quantities per sensor and side
Abstract base class for different kinds of events.