Belle II Software  release-05-02-19
SVDOccupancyAnalysisModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2011 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributor: Giulia Casarosa *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <framework/core/Module.h>
14 #include <vxd/dataobjects/VxdID.h>
15 #include <framework/datastore/StoreArray.h>
16 #include <framework/datastore/StoreObjPtr.h>
17 #include <svd/dataobjects/SVDShaperDigit.h>
18 #include <svd/dataobjects/SVDHistograms.h>
19 #include <svd/dataobjects/SVDSummaryPlots.h>
20 #include <framework/dataobjects/EventMetaData.h>
21 
22 #include <mdst/dataobjects/SoftwareTriggerResult.h>
23 
24 #include <svd/calibration/SVDNoiseCalibrations.h>
25 
26 
27 #include <string>
28 #include <TFile.h>
29 #include <TH1F.h>
30 #include <TH2F.h>
31 
32 namespace Belle2 {
45  class SVDOccupancyAnalysisModule : public Module {
46 
47  public:
48 
49  SVDOccupancyAnalysisModule();
50 
51  virtual ~SVDOccupancyAnalysisModule();
52  virtual void initialize() override;
53  virtual void beginRun() override;
54  virtual void event() override;
55  virtual void endRun() override;
56  virtual void terminate() override;
57 
58  /* user-defined parameters */
59  std::string m_rootFileName = "";
60  std::string m_ShaperDigitName = "SVDShaperDigits";
62  /* ROOT file related parameters */
63  TFile* m_rootFilePtr = nullptr;
65  float m_group = 10000;
66  float m_minZS = 3;
67  float m_maxZS = 6;
68  int m_pointsZS = 7;
69  bool m_FADCmode = true;
71  private:
72 
75  bool m_skipRejectedEvents = false;
77  int m_nEvents = 0;
84  std::vector<VxdID> m_SVDModules;
86 
87  //layer summary
88  float m_distr_Nbins = 10000;
89  float m_distr_min = 0;
90  float m_distr_max = 100;
92  TH1F* m_occ_L3U = nullptr;
93  TH1F* m_occ_L3V = nullptr;
94  TH1F* m_occ_L4U = nullptr;
95  TH1F* m_occ_L4V = nullptr;
96  TH1F* m_occ_L5U = nullptr;
97  TH1F* m_occ_L5V = nullptr;
98  TH1F* m_occ_L6U = nullptr;
99  TH1F* m_occ_L6V = nullptr;
101  //SHAPER
102  SVDSummaryPlots* m_hit = nullptr;
109  };
111 }
112 
113 
Belle2::SVDOccupancyAnalysisModule::m_skipRejectedEvents
bool m_skipRejectedEvents
if true skip events rejected by HLT
Definition: SVDOccupancyAnalysisModule.h:83
Belle2::SVDOccupancyAnalysisModule::m_SVDModules
std::vector< VxdID > m_SVDModules
IDs of all SVD Modules to iterate over.
Definition: SVDOccupancyAnalysisModule.h:93
Belle2::SVDOccupancyAnalysisModule::m_distr_max
float m_distr_max
max of occupancy distributions
Definition: SVDOccupancyAnalysisModule.h:98
Belle2::SVDOccupancyAnalysisModule::m_ShaperDigitName
std::string m_ShaperDigitName
ShaperDigit StoreArray name.
Definition: SVDOccupancyAnalysisModule.h:68
Belle2::SVDOccupancyAnalysisModule::m_group
float m_group
number of events to comput occupancy for occ VS time
Definition: SVDOccupancyAnalysisModule.h:73
Belle2::SVDHistograms< TH1F >
Belle2::SVDOccupancyAnalysisModule::m_svdShapers
StoreArray< SVDShaperDigit > m_svdShapers
SVDShaperDigit StoreArray.
Definition: SVDOccupancyAnalysisModule.h:86
Belle2::SVDOccupancyAnalysisModule::m_occ_L4V
TH1F * m_occ_L4V
occupancy distribution for L4 V-side sensors
Definition: SVDOccupancyAnalysisModule.h:103
Belle2::SVDOccupancyAnalysisModule::m_histo_dist
SVDHistograms< TH1F > * m_histo_dist
occupancy distribution histograms
Definition: SVDOccupancyAnalysisModule.h:111
Belle2::SVDOccupancyAnalysisModule::m_resultStoreObjectPointer
StoreObjPtr< SoftwareTriggerResult > m_resultStoreObjectPointer
if true, ZS done with same algorithm as on FADC
Definition: SVDOccupancyAnalysisModule.h:82
Belle2::SVDOccupancyAnalysisModule::m_nEvents
int m_nEvents
number of events
Definition: SVDOccupancyAnalysisModule.h:85
Belle2::SVDOccupancyAnalysisModule::beginRun
virtual void beginRun() override
Called when entering a new run.
Definition: SVDOccupancyAnalysisModule.cc:59
Belle2::SVDOccupancyAnalysisModule::m_histo_occtdep
SVDHistograms< TH2F > * m_histo_occtdep
occupancy VS event number
Definition: SVDOccupancyAnalysisModule.h:115
Belle2::SVDOccupancyAnalysisModule::m_minZS
float m_minZS
minimum zero suppresion cut
Definition: SVDOccupancyAnalysisModule.h:74
Belle2::SVDOccupancyAnalysisModule::m_occ_L3U
TH1F * m_occ_L3U
occupancy distribution for L3 U-side sensors
Definition: SVDOccupancyAnalysisModule.h:100
Belle2::SVDOccupancyAnalysisModule::terminate
virtual void terminate() override
This method is called at the end of the event processing.
Definition: SVDOccupancyAnalysisModule.cc:229
Belle2::SVDOccupancyAnalysisModule::m_occ_L5V
TH1F * m_occ_L5V
occupancy distribution for L5 V-side sensors
Definition: SVDOccupancyAnalysisModule.h:105
Belle2::SVDOccupancyAnalysisModule::m_histo_occ
SVDHistograms< TH1F > * m_histo_occ
occupancy histograms
Definition: SVDOccupancyAnalysisModule.h:112
Belle2::SVDOccupancyAnalysisModule::m_hit
SVDSummaryPlots * m_hit
hit number summary histogram
Definition: SVDOccupancyAnalysisModule.h:110
Belle2::SVDOccupancyAnalysisModule::m_occ_L5U
TH1F * m_occ_L5U
occupancy distribution for L5 U-side sensors
Definition: SVDOccupancyAnalysisModule.h:104
Belle2::SVDOccupancyAnalysisModule::m_rootFileName
std::string m_rootFileName
root file name
Definition: SVDOccupancyAnalysisModule.h:67
Belle2::SVDOccupancyAnalysisModule::event
virtual void event() override
This method is the core of the module.
Definition: SVDOccupancyAnalysisModule.cc:139
Belle2::SVDNoiseCalibrations
This class defines the dbobject and the method to access SVD calibrations from the noise local runs.
Definition: SVDNoiseCalibrations.h:46
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::StoreObjPtr
Type-safe access to single objects in the data store.
Definition: ParticleList.h:33
Belle2::SVDOccupancyAnalysisModule::m_occ_L4U
TH1F * m_occ_L4U
occupancy distribution for L4 U-side sensors
Definition: SVDOccupancyAnalysisModule.h:102
Belle2::SVDOccupancyAnalysisModule::m_distr_Nbins
float m_distr_Nbins
number of bins of occupancy distributions
Definition: SVDOccupancyAnalysisModule.h:96
Belle2::SVDOccupancyAnalysisModule::endRun
virtual void endRun() override
This method is called if the current run ends.
Definition: SVDOccupancyAnalysisModule.cc:235
Belle2::SVDOccupancyAnalysisModule::m_distr_min
float m_distr_min
min of occupancy distributions
Definition: SVDOccupancyAnalysisModule.h:97
Belle2::SVDOccupancyAnalysisModule::m_histo_zsOcc
SVDHistograms< TH1F > * m_histo_zsOcc
occupancy VS ZScut histograms
Definition: SVDOccupancyAnalysisModule.h:113
Belle2::SVDSummaryPlots
class to summarize SVD quantities per sensor and side
Definition: SVDSummaryPlots.h:35
Belle2::SVDOccupancyAnalysisModule::m_occ_L6U
TH1F * m_occ_L6U
occupancy distribution for L6 U-side sensors
Definition: SVDOccupancyAnalysisModule.h:106
Belle2::SVDOccupancyAnalysisModule::m_pointsZS
int m_pointsZS
max zero suppression cut
Definition: SVDOccupancyAnalysisModule.h:76
Belle2::SVDOccupancyAnalysisModule::m_occ_L6V
TH1F * m_occ_L6V
occupancy distribution for L6 V-side sensors
Definition: SVDOccupancyAnalysisModule.h:107
Belle2::SVDOccupancyAnalysisModule::m_rootFilePtr
TFile * m_rootFilePtr
pointer at root file used for storing histograms
Definition: SVDOccupancyAnalysisModule.h:71
Belle2::StoreArray
Accessor to arrays stored in the data store.
Definition: ECLMatchingPerformanceExpertModule.h:33
Belle2::SVDOccupancyAnalysisModule::initialize
virtual void initialize() override
Initialize the Module.
Definition: SVDOccupancyAnalysisModule.cc:45
Belle2::SVDOccupancyAnalysisModule::m_histo_zsOccSQ
SVDHistograms< TH1F > * m_histo_zsOccSQ
occupancy VS ZS cut swuared histograms
Definition: SVDOccupancyAnalysisModule.h:114
Belle2::SVDOccupancyAnalysisModule::m_occ_L3V
TH1F * m_occ_L3V
occupancy distribution for L3 V-side sensors
Definition: SVDOccupancyAnalysisModule.h:101
Belle2::SVDOccupancyAnalysisModule::m_eventMetaData
StoreObjPtr< EventMetaData > m_eventMetaData
Event Meta Data StoreObjectPointer.
Definition: SVDOccupancyAnalysisModule.h:87
Belle2::SVDOccupancyAnalysisModule::m_NoiseCal
SVDNoiseCalibrations m_NoiseCal
SVDNoise calibrations db object.
Definition: SVDOccupancyAnalysisModule.h:89