Belle II Software  release-08-01-10
PXDGatedModeDQMModule.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 #pragma once
10 
11 #include <framework/core/HistoModule.h>
12 #include <vxd/geometry/GeoCache.h>
13 #include <framework/datastore/StoreArray.h>
14 #include <pxd/dataobjects/PXDRawHit.h>
15 #include <mdst/dataobjects/EventLevelTriggerTimeInfo.h>
16 #include <TH2.h>
17 #include <string>
18 #include <map>
19 
20 namespace Belle2 {
26  namespace PXD {
37 
38  public:
39 
42 
43  private:
45  std::string m_PXDRawHitsName;
46  bool m_perGate;
57 
60 
63 
64 
66  TH1F* hBunchInjLER = nullptr;
68  TH1F* hBunchInjHER = nullptr;
70  TH1F* hBunchTrg = nullptr;
71 
72  std::map<std::pair<VxdID, int>, TH2F*> hGatedModeMapLER;
73  std::map<std::pair<VxdID, int>, TH2F*> hGatedModeMapHER;
75  std::map<std::pair<VxdID, int>, TH2F*> hGatedModeMapCutLER;
76  std::map<std::pair<VxdID, int>, TH2F*> hGatedModeMapCutHER;
78  std::map<VxdID, TH2F*> hGatedModeMapSubLER;
79  std::map<VxdID, TH2F*> hGatedModeMapSubHER;
81  std::map<VxdID, TH2F*> hGatedModeMapAddLER;
82  std::map<VxdID, TH2F*> hGatedModeMapAddHER;
84  std::map<VxdID, TH2F*> hGatedModeProjLER;
85  std::map<VxdID, TH2F*> hGatedModeProjHER;
87  std::map<std::pair<VxdID, int>, TH2F*> hGatedModeMapADCLER;
88  std::map<std::pair<VxdID, int>, TH2F*> hGatedModeMapADCHER;
90  std::map<std::pair<VxdID, int>, TH2F*> hGatedModeMapCutADCLER;
91  std::map<std::pair<VxdID, int>, TH2F*> hGatedModeMapCutADCHER;
93  std::map<VxdID, TH2F*> hGatedModeMapSubADCLER;
94  std::map<VxdID, TH2F*> hGatedModeMapSubADCHER;
96  std::map<VxdID, TH2F*> hGatedModeMapAddADCLER;
97  std::map<VxdID, TH2F*> hGatedModeMapAddADCHER;
99  std::map<VxdID, TH2F*> hGatedModeProjADCLER;
100  std::map<VxdID, TH2F*> hGatedModeProjADCHER;
102  void initialize() override final;
104  void beginRun() override final;
106  void event() override final;
108  void defineHisto() override final;
110  };//end class declaration
111 
112 
113  } //end PXD namespace;
115 } // end namespace Belle2
HistoModule.h is supposed to be used instead of Module.h for the modules with histogram definitions t...
Definition: HistoModule.h:29
The PXD for GatedMode DQM module.
std::map< VxdID, TH2F * > hGatedModeProjLER
Histogram Occupancy after LER injection.
std::string m_PXDRawHitsName
The name of the StoreArray of PXDRawHits to be generated.
std::map< VxdID, TH2F * > hGatedModeProjHER
Histogram Occupancy after HER injection.
void initialize() override final
initialize function
bool m_perGate
make one plot per possible gate
PXDGatedModeDQMModule()
Constructor defining the parameters.
std::map< std::pair< VxdID, int >, TH2F * > hGatedModeMapHER
Histogram Occupancy after HER injection.
std::map< std::pair< VxdID, int >, TH2F * > hGatedModeMapADCLER
Histogram Occupancy after LER injection.
int m_minTimeCutLER
minimum time cut in us after LER kick
std::map< VxdID, TH2F * > hGatedModeMapSubHER
Histogram Occupancy after HER injection.
std::map< std::pair< VxdID, int >, TH2F * > hGatedModeMapLER
Histogram Occupancy after LER injection.
std::map< VxdID, TH2F * > hGatedModeMapAddADCHER
Histogram Occupancy after HER injection.
int m_outsideTimeCut
outside GM time cut in us after kick
void defineHisto() override final
defineHisto function
std::map< std::pair< VxdID, int >, TH2F * > hGatedModeMapADCHER
Histogram Occupancy after HER injection.
std::map< VxdID, TH2F * > hGatedModeMapSubADCLER
Histogram Occupancy after LER injection.
std::map< VxdID, TH2F * > hGatedModeMapAddLER
Histogram Occupancy after LER injection.
int m_maxTimeCutLER
maximum time cut in us after LER kick
int m_maxTimeCutHER
maximum time cut in us after HER kick
int m_chargeCut
minimum charge cut in ADU
void event() override final
event function
int m_minTimeCutHER
minimum time cut in us after HER kick
std::map< VxdID, TH2F * > hGatedModeProjADCLER
Histogram Occupancy after LER injection.
std::string m_histogramDirectoryName
Name of the histogram directory in ROOT file.
TH1F * hBunchInjLER
Histo for last LER injected bunches.
int m_chargeCutHigh
minimum charge cut for second set of histograms in ADU
std::map< VxdID, TH2F * > hGatedModeMapSubLER
Histogram Occupancy after LER injection.
std::map< std::pair< VxdID, int >, TH2F * > hGatedModeMapCutLER
Histogram Occupancy after LER injection.
std::map< VxdID, TH2F * > hGatedModeMapSubADCHER
Histogram Occupancy after HER injection.
void beginRun() override final
beginRun function
std::map< VxdID, TH2F * > hGatedModeMapAddADCLER
Histogram Occupancy after LER injection.
VXD::GeoCache & m_vxdGeometry
the VXD geometry
std::map< VxdID, TH2F * > hGatedModeMapAddHER
Histogram Occupancy after HER injection.
TH1F * hBunchTrg
Histo for triggered bunches.
std::map< VxdID, TH2F * > hGatedModeProjADCHER
Histogram Occupancy after HER injection.
StoreObjPtr< EventLevelTriggerTimeInfo > m_EventLevelTriggerTimeInfo
Object for TTD mdst object.
StoreArray< PXDRawHit > m_storeRawHits
Input array for PXD Raw Hits.
TH1F * hBunchInjHER
Histo for last HER injected bunches.
std::map< std::pair< VxdID, int >, TH2F * > hGatedModeMapCutHER
Histogram Occupancy after HER injection.
std::map< std::pair< VxdID, int >, TH2F * > hGatedModeMapCutADCLER
Histogram Occupancy after LER injection.
std::map< std::pair< VxdID, int >, TH2F * > hGatedModeMapCutADCHER
Histogram Occupancy after HER injection.
Accessor to arrays stored in the data store.
Definition: StoreArray.h:113
Type-safe access to single objects in the data store.
Definition: StoreObjPtr.h:96
Class to faciliate easy access to sensor information of the VXD like coordinate transformations or pi...
Definition: GeoCache.h:39
Abstract base class for different kinds of events.