Belle II Software  release-05-01-25
DQMHistAnalysisPXDER.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2017 - Belle II Collaboration *
4  * *
5  * Description : An example module for DQM histogram analysis *
6  * Author: The Belle II Collaboration *
7  * Author : Bjoern Spruck, Peter Kodys *
8  * *
9  * Prepared for Belle II geometry *
10  * *
11  * This software is provided "as is" without any warranty. *
12  **************************************************************************/
13 
14 #pragma once
15 
16 #include <dqm/analysis/modules/DQMHistAnalysis.h>
17 
18 #include "TFile.h"
19 #include "TH1I.h"
20 #include "TH1F.h"
21 
22 #include <vector>
23 
24 namespace Belle2 {
31  class DQMHistAnalysisPXDERModule : public DQMHistAnalysisModule {
32 
33  public:
34 
37  /* Destructor */
39 
40  private:
41 
43  void initialize() override final;
44  void beginRun() override final;
45  void event() override final;
46  void endRun() override final;
47  void terminate() override final;
48 
49  private:
50 
52  //TDirectory* m_oldDir;
53 
55 // TH1I* m_fHitMapCountsFlag;
57 // TH1I* m_fHitMapClCountsFlag;
59  TH1I* m_fFiredFlag = nullptr;
61  TH1I* m_fClustersFlag = nullptr;
63  TH1I* m_fStartRowFlag = nullptr;
65  TH1I* m_fChargStartRowFlag = nullptr;
67  TH1I* m_fStartRowCountFlag = nullptr;
69  TH1I* m_fClusterChargeFlag = nullptr;
71  TH1I* m_fPixelSignalFlag = nullptr;
73  TH1I* m_fClusterSizeUFlag = nullptr;
75  TH1I* m_fClusterSizeVFlag = nullptr;
77  TH1I* m_fClusterSizeUVFlag = nullptr;
78 
79  // Name the histograms, we have to find them anyway every event
81 // std::string m_hitMapCounts;
83 // std::string m_hitMapClCounts;
84 
86  std::vector <std::string> m_fired;
88  std::vector <std::string> m_clusters;
90  std::vector <std::string> m_startRow;
92  std::vector <std::string> m_chargStartRow;
94  std::vector <std::string> m_startRowCount;
96  std::vector <std::string> m_clusterCharge;
98  std::vector <std::string> m_pixelSignal;
100  std::vector <std::string> m_clusterSizeU;
102  std::vector <std::string> m_clusterSizeV;
104  std::vector <std::string> m_clusterSizeUV;
105 
106 
108  std::vector <std::string> m_ref_fired;
110  std::vector <std::string> m_ref_clusters;
112  std::vector <std::string> m_ref_startRow;
114  std::vector <std::string> m_ref_chargStartRow;
116  std::vector <std::string> m_ref_startRowCount;
118  std::vector <std::string> m_ref_clusterCharge;
120  std::vector <std::string> m_ref_pixelSignal;
122  std::vector <std::string> m_ref_clusterSizeU;
124  std::vector <std::string> m_ref_clusterSizeV;
126  std::vector <std::string> m_ref_clusterSizeUV;
127 
129  //int m_nPixels;
131  int c_nVXDLayers = 0;
133  int c_nPXDLayers = 0;
135  int c_nSVDLayers = 0;
139  int c_lastVXDLayer = 0;
141  int c_firstPXDLayer = 0;
143  int c_lastPXDLayer = 0;
145  int c_firstSVDLayer = 0;
147  int c_lastSVDLayer = 0;
149  int c_nPXDSensors = 0;
150 
157  void getIDsFromIndex(const int Index, int& Layer, int& Ladder, int& Sensor) const;
183  int SetFlag(int Type, int bin, double* pars, double ratio, const std::string& name_hist, const std::string& name_refhist,
184  TH1I* flaghist);
210 // int SetFlag(int Type, int bin, double* pars, double ratio, TH1I* hist, TH1I* refhist, TH1I* flaghist);
211 
213  std::string m_refFileName;
215  TFile* m_refFile = nullptr;
216 
222  TH1* GetHisto(TString histoname);
223 
224  };
225 
227 }
228 
Belle2::DQMHistAnalysisPXDERModule::m_ref_startRowCount
std::vector< std::string > m_ref_startRowCount
counter for Cluster seed charge by distance from the start row
Definition: DQMHistAnalysisPXDER.h:127
Belle2::DQMHistAnalysisPXDERModule::m_clusterSizeV
std::vector< std::string > m_clusterSizeV
v cluster size
Definition: DQMHistAnalysisPXDER.h:113
Belle2::DQMHistAnalysisPXDERModule::c_nPXDSensors
int c_nPXDSensors
Number of PXD sensors on Belle II.
Definition: DQMHistAnalysisPXDER.h:160
Belle2::DQMHistAnalysisPXDERModule::GetHisto
TH1 * GetHisto(TString histoname)
Get a histogram by name (DEPRECATED), better use function from base class!
Definition: DQMHistAnalysisPXDER.cc:482
Belle2::DQMHistAnalysisPXDERModule::m_clusterCharge
std::vector< std::string > m_clusterCharge
Charge of clusters.
Definition: DQMHistAnalysisPXDER.h:107
Belle2::DQMHistAnalysisPXDERModule::m_fired
std::vector< std::string > m_fired
Hitmaps of Digits.
Definition: DQMHistAnalysisPXDER.h:97
Belle2::DQMHistAnalysisPXDERModule::m_ref_clusterSizeV
std::vector< std::string > m_ref_clusterSizeV
v cluster size
Definition: DQMHistAnalysisPXDER.h:135
Belle2::DQMHistAnalysisPXDERModule::SetFlag
int SetFlag(int Type, int bin, double *pars, double ratio, const std::string &name_hist, const std::string &name_refhist, TH1I *flaghist)
Function return flag histogram filled based on condition from TH1F source.
Definition: DQMHistAnalysisPXDER.cc:333
Belle2::DQMHistAnalysisPXDERModule::initialize
void initialize() override final
Module functions.
Definition: DQMHistAnalysisPXDER.cc:59
Belle2::DQMHistAnalysisPXDERModule::c_lastPXDLayer
int c_lastPXDLayer
Last PXD layer on Belle II.
Definition: DQMHistAnalysisPXDER.h:154
Belle2::DQMHistAnalysisPXDERModule::m_fClustersFlag
TH1I * m_fClustersFlag
Flags of Clusters per event.
Definition: DQMHistAnalysisPXDER.h:72
Belle2::DQMHistAnalysisPXDERModule::m_refFile
TFile * m_refFile
The pointer to the reference file.
Definition: DQMHistAnalysisPXDER.h:226
Belle2::DQMHistAnalysisPXDERModule::m_clusters
std::vector< std::string > m_clusters
Clusters per event.
Definition: DQMHistAnalysisPXDER.h:99
Belle2::DQMHistAnalysisPXDERModule::m_fClusterSizeUVFlag
TH1I * m_fClusterSizeUVFlag
Flags of Cluster size.
Definition: DQMHistAnalysisPXDER.h:88
Belle2::DQMHistAnalysisPXDERModule::m_ref_clusters
std::vector< std::string > m_ref_clusters
Clusters per event.
Definition: DQMHistAnalysisPXDER.h:121
Belle2::DQMHistAnalysisPXDERModule::endRun
void endRun() override final
This method is called if the current run ends.
Definition: DQMHistAnalysisPXDER.cc:305
Belle2::DQMHistAnalysisPXDERModule::m_fPixelSignalFlag
TH1I * m_fPixelSignalFlag
Flags of Charge of pixels.
Definition: DQMHistAnalysisPXDER.h:82
Belle2::DQMHistAnalysisPXDERModule::m_fStartRowCountFlag
TH1I * m_fStartRowCountFlag
Flags of counter for Cluster seed charge by distance from the start row.
Definition: DQMHistAnalysisPXDER.h:78
Belle2::DQMHistAnalysisPXDERModule::terminate
void terminate() override final
This method is called at the end of the event processing.
Definition: DQMHistAnalysisPXDER.cc:309
Belle2::DQMHistAnalysisPXDERModule::m_fClusterChargeFlag
TH1I * m_fClusterChargeFlag
Flags of Charge of clusters.
Definition: DQMHistAnalysisPXDER.h:80
Belle2::DQMHistAnalysisPXDERModule::event
void event() override final
This method is the core of the module.
Definition: DQMHistAnalysisPXDER.cc:252
Belle2::DQMHistAnalysisPXDERModule::m_ref_fired
std::vector< std::string > m_ref_fired
Fired pixels per event.
Definition: DQMHistAnalysisPXDER.h:119
Belle2::DQMHistAnalysisPXDERModule::c_nSVDLayers
int c_nSVDLayers
Number of SVD layers on Belle II.
Definition: DQMHistAnalysisPXDER.h:146
Belle2::DQMHistAnalysisPXDERModule::m_fStartRowFlag
TH1I * m_fStartRowFlag
Flags of Start row distribution.
Definition: DQMHistAnalysisPXDER.h:74
Belle2::DQMHistAnalysisPXDERModule::m_ref_clusterCharge
std::vector< std::string > m_ref_clusterCharge
Charge of clusters.
Definition: DQMHistAnalysisPXDER.h:129
Belle2::DQMHistAnalysisPXDERModule::m_startRow
std::vector< std::string > m_startRow
Start row distribution.
Definition: DQMHistAnalysisPXDER.h:101
Belle2::DQMHistAnalysisPXDERModule::m_clusterSizeU
std::vector< std::string > m_clusterSizeU
u cluster size
Definition: DQMHistAnalysisPXDER.h:111
Belle2::DQMHistAnalysisPXDERModule::m_fClusterSizeUFlag
TH1I * m_fClusterSizeUFlag
Flags of u cluster size.
Definition: DQMHistAnalysisPXDER.h:84
Belle2::DQMHistAnalysisPXDERModule::m_fChargStartRowFlag
TH1I * m_fChargStartRowFlag
Flags of Cluster seed charge by distance from the start row.
Definition: DQMHistAnalysisPXDER.h:76
Belle2::DQMHistAnalysisPXDERModule::m_refFileName
std::string m_refFileName
Function return flag histogram filled based on condition from TH1I source.
Definition: DQMHistAnalysisPXDER.h:224
Belle2::DQMHistAnalysisPXDERModule::m_ref_clusterSizeUV
std::vector< std::string > m_ref_clusterSizeUV
Cluster size.
Definition: DQMHistAnalysisPXDER.h:137
Belle2::DQMHistAnalysisPXDERModule::beginRun
void beginRun() override final
Called when entering a new run.
Definition: DQMHistAnalysisPXDER.cc:230
Belle2::DQMHistAnalysisPXDERModule::m_ref_pixelSignal
std::vector< std::string > m_ref_pixelSignal
Charge of pixels.
Definition: DQMHistAnalysisPXDER.h:131
Belle2::DQMHistAnalysisPXDERModule::m_ref_clusterSizeU
std::vector< std::string > m_ref_clusterSizeU
u cluster size
Definition: DQMHistAnalysisPXDER.h:133
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::DQMHistAnalysisPXDERModule::DQMHistAnalysisPXDERModule
DQMHistAnalysisPXDERModule()
Constructor.
Definition: DQMHistAnalysisPXDER.cc:45
Belle2::DQMHistAnalysisPXDERModule::m_pixelSignal
std::vector< std::string > m_pixelSignal
Charge of pixels.
Definition: DQMHistAnalysisPXDER.h:109
Belle2::DQMHistAnalysisPXDERModule::c_firstVXDLayer
int c_firstVXDLayer
First VXD layer on Belle II.
Definition: DQMHistAnalysisPXDER.h:148
Belle2::DQMHistAnalysisPXDERModule::c_nVXDLayers
int c_nVXDLayers
Number of pixels on PXD v direction.
Definition: DQMHistAnalysisPXDER.h:142
Belle2::DQMHistAnalysisPXDERModule::c_lastVXDLayer
int c_lastVXDLayer
Last VXD layer on Belle II.
Definition: DQMHistAnalysisPXDER.h:150
Belle2::PXD::Sensor
std::map< Digit, DigitValue > Sensor
Map of all hits in one Sensor.
Definition: PXDDigitizerModule.h:89
Belle2::DQMHistAnalysisPXDERModule::m_fClusterSizeVFlag
TH1I * m_fClusterSizeVFlag
Flags of v cluster size.
Definition: DQMHistAnalysisPXDER.h:86
Belle2::DQMHistAnalysisPXDERModule::getIDsFromIndex
void getIDsFromIndex(const int Index, int &Layer, int &Ladder, int &Sensor) const
Function return index of sensor in plots.
Definition: DQMHistAnalysisPXDER.cc:313
Belle2::DQMHistAnalysisPXDERModule::m_fFiredFlag
TH1I * m_fFiredFlag
Basic Directory in output file.
Definition: DQMHistAnalysisPXDER.h:70
Belle2::DQMHistAnalysisPXDERModule::c_nPXDLayers
int c_nPXDLayers
Number of PXD layers on Belle II.
Definition: DQMHistAnalysisPXDER.h:144
Belle2::DQMHistAnalysisPXDERModule::c_firstSVDLayer
int c_firstSVDLayer
First SVD layer on Belle II.
Definition: DQMHistAnalysisPXDER.h:156
Belle2::DQMHistAnalysisPXDERModule::m_ref_chargStartRow
std::vector< std::string > m_ref_chargStartRow
Cluster seed charge by distance from the start row.
Definition: DQMHistAnalysisPXDER.h:125
Belle2::DQMHistAnalysisPXDERModule::m_ref_startRow
std::vector< std::string > m_ref_startRow
Start row distribution.
Definition: DQMHistAnalysisPXDER.h:123
Belle2::DQMHistAnalysisPXDERModule::m_startRowCount
std::vector< std::string > m_startRowCount
counter for Cluster seed charge by distance from the start row
Definition: DQMHistAnalysisPXDER.h:105
Belle2::DQMHistAnalysisPXDERModule::m_clusterSizeUV
std::vector< std::string > m_clusterSizeUV
Cluster size.
Definition: DQMHistAnalysisPXDER.h:115
Belle2::DQMHistAnalysisPXDERModule::m_chargStartRow
std::vector< std::string > m_chargStartRow
Cluster seed charge by distance from the start row.
Definition: DQMHistAnalysisPXDER.h:103
Belle2::DQMHistAnalysisPXDERModule::c_lastSVDLayer
int c_lastSVDLayer
Last SVD layer on Belle II.
Definition: DQMHistAnalysisPXDER.h:158
Belle2::DQMHistAnalysisPXDERModule::c_firstPXDLayer
int c_firstPXDLayer
First PXD layer on Belle II.
Definition: DQMHistAnalysisPXDER.h:152