Belle II Software development
CDCDQMModule.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 <framework/core/Module.h>
13#include <framework/datastore/StoreArray.h>
14#include <framework/database/DBArray.h>
15#include <framework/database/DBObjPtr.h>
16
17#include <cdc/dataobjects/CDCHit.h>
18#include <cdc/dataobjects/CDCRawHit.h>
19
20#include <mdst/dataobjects/TRGSummary.h>
21#include <mdst/dataobjects/SoftwareTriggerResult.h>
22#include <mdst/dataobjects/Track.h>
23#include <mdst/dataobjects/TrackFitResult.h>
24#include <mdst/dataobjects/HitPatternVXD.h>
25#include <mdst/dataobjects/HitPatternCDC.h>
26
27#include <tracking/dataobjects/RecoTrack.h>
28#include <rawdata/dataobjects/RawCDC.h>
29
30#include <TH1F.h>
31#include <TH2F.h>
32
33namespace Belle2 {
42 class CDCDQMModule : public HistoModule {
43
44 public:
45
50
54 virtual ~CDCDQMModule();
55
60 void initialize() override;
61
66 void defineHisto() override;
67
72 void beginRun() override;
73
77 void event() override;
78
83 void endRun() override;
84
89 void terminate() override;
90
95 double getShiftedPhi(const ROOT::Math::XYZVector& position, const int& lay);
96
101 int findPhiBin(double phi, const int& lay);
102
103 protected:
104
111 std::string m_recoTrackArrayName = "" ;
116 bool m_adjustWireShift = true;
117 Long64_t m_nEvents = 0;
118 TH1F* m_hNEvents = nullptr;
119 TH1F* m_hOcc = nullptr;
120 TH2F* m_hADC = nullptr;
121 TH2F* m_hTDC = nullptr;
122 TH2F* m_hHit = nullptr;
123 TH2F* m_hBit = nullptr;
124 TH1F* m_hPhi = nullptr;
125 TH2F* m_hPhiIndex = nullptr;
126 TH2F* m_hPhiEff = nullptr;
127 TH2F* m_hPhiHit = nullptr;
128 TH2F* m_hPhiNCDC = nullptr;
129 TH2F* m_hTrackingWireEff = nullptr;
131 };
132
134} // Belle2 namespace
Make summary of data quality from reconstruction.
Definition: CDCDQMModule.h:42
std::string m_recoTrackArrayName
Belle2::RecoTrack StoreArray name.
Definition: CDCDQMModule.h:111
StoreArray< RawCDC > m_rawCDCs
Input array for CDC Raw.
Definition: CDCDQMModule.h:107
TH2F * m_hPhiNCDC
Histogram of track associated nCDCHits vs phi.
Definition: CDCDQMModule.h:128
TH2F * m_hBit
Histogram of online databit removed.
Definition: CDCDQMModule.h:123
void initialize() override
Initialize the Module.
Definition: CDCDQMModule.cc:82
int m_minHits
Minimum hits for processing.
Definition: CDCDQMModule.h:114
int m_minNdf
Minimum track NDF for cdc dqm plots.
Definition: CDCDQMModule.h:115
void event() override
Event processor.
CDCDQMModule()
Constructor.
Definition: CDCDQMModule.cc:36
StoreArray< CDCRawHit > m_cdcRawHits
CDC raw hits.
Definition: CDCDQMModule.h:106
void endRun() override
End-of-run action.
TH2F * m_hPhiIndex
Histogram of cdc phi of different IP + skims tracks.
Definition: CDCDQMModule.h:125
StoreObjPtr< TRGSummary > m_trgSummary
Trigger summary.
Definition: CDCDQMModule.h:108
void terminate() override
Termination action.
double getShiftedPhi(const ROOT::Math::XYZVector &position, const int &lay)
Compute and shift phi if it is stereo layer return [0,2pi].
int findPhiBin(double phi, const int &lay)
Find bin corresponds to a specific phi in a layer phi must be in [0,2pi].
TH1F * m_hNEvents
Histogram of num.
Definition: CDCDQMModule.h:118
TH2F * m_hTDC
Histogram of TDC with track associated hits for all boards (0-299)
Definition: CDCDQMModule.h:121
TH2F * m_hPhiHit
Histogram of track associated hits in phi vs layer
Definition: CDCDQMModule.h:127
void beginRun() override
Called when entering a new run.
Definition: CDCDQMModule.cc:95
TH2F * m_hPhiEff
Histogram of cdc phi of tracking eff.
Definition: CDCDQMModule.h:126
bool m_adjustWireShift
If true, gets the correct phi view of the boards.
Definition: CDCDQMModule.h:116
TH1F * m_hPhi
Histogram of cdc phi of IP tracks.
Definition: CDCDQMModule.h:124
StoreArray< CDCHit > m_cdcHits
CDC hits.
Definition: CDCDQMModule.h:105
virtual ~CDCDQMModule()
Destructor.
Definition: CDCDQMModule.cc:47
TH2F * m_hADC
Histogram of ADC with track associated hits for all boards (0-299)
Definition: CDCDQMModule.h:120
TH1F * m_hOcc
Histogram of occupancy.
Definition: CDCDQMModule.h:119
StoreArray< RecoTrack > m_RecoTracks
RecoTracks.
Definition: CDCDQMModule.h:110
StoreArray< Track > m_Tracks
Tracks.
Definition: CDCDQMModule.h:109
StoreObjPtr< SoftwareTriggerResult > m_TrgResult
Store array for Trigger selection.
Definition: CDCDQMModule.h:112
TH2F * m_hHit
Histogram of Hits for all layers (0-55)
Definition: CDCDQMModule.h:122
void defineHisto() override
Histogram definitions.
Definition: CDCDQMModule.cc:51
Long64_t m_nEvents
Number of events processed.
Definition: CDCDQMModule.h:117
TH2F * m_hTrackingWireEff
Histogram of attached and expected CDC wires in layer.
Definition: CDCDQMModule.h:129
HistoModule.h is supposed to be used instead of Module.h for the modules with histogram definitions t...
Definition: HistoModule.h:29
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
Abstract base class for different kinds of events.