Belle II Software development
DQMHistAnalysisPXDCM.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 : DQMHistAnalysisPXDCM.h
10// Description : DQM Analysis for PXD Common Modes
11//-
12
13#pragma once
14
15#include <dqm/core/DQMHistAnalysis.h>
16
17#include <vxd/dataobjects/VxdID.h>
18
19#include <TH2.h>
20#include <TLine.h>
21
22namespace Belle2 {
30
31 // Public functions
32 public:
33
38
42 void initialize(void) override final;
43
47 void beginRun(void) override final;
48
52 void event(void) override final;
53
57 void terminate(void) override final;
58
59 private:
60
61 // Data members
65 int m_minEntries = 10000;
66
68 double m_warnMean{};
70 double m_errorMean{};
72 double m_warnOutside{};
78 std::vector<int> m_excluded;
79
81 std::vector <std::string> m_parModuleList;
83 std::vector <std::vector<int>> m_parGateList;
84
86 std::map <VxdID, std::vector<int>> m_maskedGates;
87
89 std::vector<VxdID> m_PXDModules;
90
92 TH2D* m_hCommonModeDelta = nullptr;
94 TCanvas* m_cCommonModeDelta = nullptr;
96 TLine* m_line10 = nullptr;
98 TLine* m_lineOutside = nullptr;
99
102 };
104} // end namespace Belle2
105
The base class for the histogram analysis module.
DQM Histogram Analysis for PXD Common Modes.
void terminate(void) override final
This method is called at the end of the event processing.
int m_minEntries
Update entry interval.
TLine * m_line10
Line in the Canvas to guide the eye, target CM.
double m_warnOutside
warn level for outside fraction
TCanvas * m_cCommonModeDelta
Final Canvas.
int m_upperLine
threshold level/line for outside fraction
void initialize(void) override final
Initializer.
TLine * m_lineOutside
Line in the Canvas to guide the eye, outside boundary.
MonitoringObject * m_monObj
Monitoring Object.
TH2D * m_hCommonModeDelta
histogram covering all modules
std::vector< VxdID > m_PXDModules
IDs of all PXD Modules to iterate over.
std::string m_histogramDirectoryName
name of histogram directory
double m_errorOutside
error level for outside fraction
double m_errorMean
error level for mean
std::map< VxdID, std::vector< int > > m_maskedGates
Module wise gate masking in CM plot and alarm.
double m_warnMean
warn level for mean
std::vector< std::vector< int > > m_parGateList
Gate list for masking.
std::vector< int > m_excluded
Indizes of excluded PXD Modules.
void beginRun(void) override final
Called when entering a new run.
void event(void) override final
This method is called for each event.
std::vector< std::string > m_parModuleList
Module list for masking.
MonitoringObject is a basic object to hold data for the run-dependency monitoring Run summary TCanvas...
Abstract base class for different kinds of events.