Belle II Software release-09-00-00
TRGEFFDQMModule.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 <mdst/dataobjects/TRGSummary.h>
18#include <mdst/dataobjects/SoftwareTriggerResult.h>
19#include <mdst/dataobjects/Track.h>
20#include <mdst/dataobjects/TrackFitResult.h>
21#include <mdst/dataobjects/ECLCluster.h>
22#include <mdst/dataobjects/KLMCluster.h>
23
24#include <tracking/dataobjects/RecoTrack.h>
25
26#include <TH1F.h>
27#include <TH2F.h>
28
29namespace Belle2 {
42
43 public:
44
49
53 virtual ~TRGEFFDQMModule();
54
59 void initialize() override;
60
65 void defineHisto() override;
66
71 void beginRun() override;
72
76 void event() override;
77
82 void endRun() override;
83
88 void terminate() override;
89
90
91 protected:
92
98 std::string m_recoTrackArrayName = "" ;
101 TH1F* m_hPhi = nullptr;
102 TH1F* m_hPhi_psnecl = nullptr;
103 TH1F* m_hPhi_psnecl_ftdf = nullptr;
105 TH1F* m_hPt = nullptr;
106 TH1F* m_hPt_psnecl = nullptr;
107 TH1F* m_hPt_psnecl_ftdf = nullptr;
108
109 TH1F* m_nobha_f_phi = nullptr; // remove the bhabha veto
110 TH1F* m_nobha_f_phi_psnecl = nullptr; // remove the bhabha veto
111 TH1F* m_nobha_f_phi_psnecl_ftdf = nullptr; // remove the bhabha veto
112
113 TH1F* m_nobha_hPt = nullptr; // remove the bhabha veto
114 TH1F* m_nobha_hPt_psnecl = nullptr; // remove the bhabha veto
115 TH1F* m_nobha_hPt_psnecl_ftdf = nullptr; // remove the bhabha veto
116
117 //for z bit (t3>0 and !bhaveto and !veto)
118 TH1F* m_hP3_z = nullptr;
119 TH1F* m_hP3_z_psnecl = nullptr;
120 TH1F* m_hP3_z_psnecl_ftdf = nullptr;
121
122 //for y bit (t3>0and!bhaveto and !veto)
123 TH1F* m_hP3_y = nullptr;
124 TH1F* m_hP3_y_psnecl = nullptr;
125 TH1F* m_hP3_y_psnecl_ftdf = nullptr;
126
127 //remove bhabha veto
128 TH1F* m_nobha_hP3_z = nullptr;
129 TH1F* m_nobha_hP3_z_psnecl = nullptr;
130 TH1F* m_nobha_hP3_z_psnecl_ftdf = nullptr;
131
132 TH1F* m_nobha_hP3_y = nullptr;
133 TH1F* m_nobha_hP3_y_psnecl = nullptr;
134 TH1F* m_nobha_hP3_y_psnecl_ftdf = nullptr;
135
136 TH1F* m_nobha_phi_z = nullptr;
137 TH1F* m_nobha_phi_z_psnecl = nullptr;
138 TH1F* m_nobha_phi_z_psnecl_ftdf = nullptr;
139
140 TH1F* m_nobha_phi_y = nullptr;
141 TH1F* m_nobha_phi_y_psnecl = nullptr;
142 TH1F* m_nobha_phi_y_psnecl_ftdf = nullptr;
143
144
145 //-"fyo" with track deleta_phi distribution
146 TH1F* m_fyo_dphi = nullptr;
147 TH1F* m_fyo_dphi_psnecl = nullptr;
148 TH1F* m_fyo_dphi_psnecl_ftdf = nullptr;
149
150 TH1F* m_nobha_fyo_dphi = nullptr;
151 TH1F* m_nobha_fyo_dphi_psnecl = nullptr;
152 TH1F* m_nobha_fyo_dphi_psnecl_ftdf = nullptr;
153
154 //-"stt " with track p, θ, phi distribution
155 TH1F* m_stt_phi = nullptr;
156 TH1F* m_stt_phi_psnecl = nullptr;
157 TH1F* m_stt_phi_psnecl_ftdf = nullptr;
158
159 TH1F* m_stt_P3 = nullptr;
160 TH1F* m_stt_P3_psnecl = nullptr;
161 TH1F* m_stt_P3_psnecl_ftdf = nullptr;
162
163 TH1F* m_stt_theta = nullptr;
164 TH1F* m_stt_theta_psnecl = nullptr;
165 TH1F* m_stt_theta_psnecl_ftdf = nullptr;
166
167 TH1F* m_nobha_stt_phi = nullptr;
168 TH1F* m_nobha_stt_phi_psnecl = nullptr;
169 TH1F* m_nobha_stt_phi_psnecl_ftdf = nullptr;
170
171 TH1F* m_nobha_stt_P3 = nullptr;
172 TH1F* m_nobha_stt_P3_psnecl = nullptr;
173 TH1F* m_nobha_stt_P3_psnecl_ftdf = nullptr;
174
175 TH1F* m_nobha_stt_theta = nullptr;
176 TH1F* m_nobha_stt_theta_psnecl = nullptr;
177 TH1F* m_nobha_stt_theta_psnecl_ftdf = nullptr;
178
179 //-"hie" with ECL cluster energy sum distribution.
180 TH1F* m_hie_E = nullptr;
181 TH1F* m_hie_E_psnecl = nullptr;
182 TH1F* m_hie_E_psnecl_ftdf = nullptr;
183
184 TH1F* m_nobha_hie_E = nullptr; // remove the bha_veto
185 TH1F* m_nobha_hie_E_psnecl = nullptr;
186 TH1F* m_nobha_hie_E_psnecl_ftdf = nullptr;
187
188 // ecltiming
189 TH1F* m_ecltiming_E = nullptr;
190 TH1F* m_ecltiming_E_psnecl = nullptr;
191 TH1F* m_ecltiming_E_psnecl_ftdf = nullptr;
192
193 TH1F* m_ecltiming_theta = nullptr;
194 TH1F* m_ecltiming_theta_psnecl = nullptr;
195 TH1F* m_ecltiming_theta_psnecl_ftdf = nullptr;
196
197 TH1F* m_ecltiming_phi = nullptr;
198 TH1F* m_ecltiming_phi_psnecl = nullptr;
199 TH1F* m_ecltiming_phi_psnecl_ftdf = nullptr;
200
201 // -KLM TRG - - - for track φ,θ distribution
202 TH1F* m_klmhit_phi = nullptr;
203 TH1F* m_klmhit_phi_psnecl = nullptr;
204 TH1F* m_klmhit_phi_psnecl_ftdf = nullptr;
205
206 TH1F* m_klmhit_theta = nullptr;
207 TH1F* m_klmhit_theta_psnecl = nullptr;
208 TH1F* m_klmhit_theta_psnecl_ftdf = nullptr;
209
210 TH1F* m_eklmhit_phi = nullptr;
211 TH1F* m_eklmhit_phi_psnecl = nullptr;
212 TH1F* m_eklmhit_phi_psnecl_ftdf = nullptr;
213
214 TH1F* m_eklmhit_theta = nullptr;
215 TH1F* m_eklmhit_theta_psnecl = nullptr;
216 TH1F* m_eklmhit_theta_psnecl_ftdf = nullptr;
217
218
219
220
221
222
223
224
225
226
227
228
229 };
230
232} // Belle2 namespace
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
Make summary of data quality from reconstruction.
std::string m_recoTrackArrayName
Belle2::RecoTrack StoreArray name.
void initialize() override
Initialize the Module.
TH1F * m_hPhi_psnecl_ftdf
Histogram of cdc phi of IP tracks with ecl and f bit.
virtual ~TRGEFFDQMModule()
Destructor.
void event() override
Event processor.
void endRun() override
End-of-run action.
StoreObjPtr< TRGSummary > m_trgSummary
Trigger summary.
void terminate() override
Termination action.
TH1F * m_hPhi_psnecl
Histogram of cdc phi of IP tracks with ecl bit.
void beginRun() override
Called when entering a new run.
StoreArray< ECLCluster > m_ECLClusters
ECL Clusters.
TH1F * m_hPhi
Histogram of cdc phi of IP tracks.
StoreArray< KLMCluster > m_KLMClusters
KLM Clusters.
StoreArray< RecoTrack > m_RecoTracks
RecoTracks.
StoreArray< Track > m_Tracks
Tracks.
TRGEFFDQMModule()
Constructor.
StoreObjPtr< SoftwareTriggerResult > m_TrgResult
Store array for Trigger selection.
void defineHisto() override
Histogram definitions.
Abstract base class for different kinds of events.