1616using namespace std ;
1717using namespace Belle2 ;
1818
19- REG_MODULE (SVDB4CommissioningPlots)
19+ REG_MODULE (SVDB4CommissioningPlots);
2020
2121SVDB4CommissioningPlotsModule::SVDB4CommissioningPlotsModule () : Module()
2222 , m_nTracks(0 ), m_Pvalue(), m_mom(0 ), m_nSVDhits(0 )
@@ -30,11 +30,8 @@ SVDB4CommissioningPlotsModule::SVDB4CommissioningPlotsModule() : Module()
3030 addParam (" ClustersName" , m_ClusterName, " Name of Cluster Store Array." , std::string (" SVDClusters" ));
3131 addParam (" TrackListName" , m_TrackName, " Name of Track Store Array." , std::string (" Tracks" ));
3232 addParam (" TrackFitResultListName" , m_TrackFitResultName, " Name of TracksFitResult Store Array." , std::string (" TrackFitResults" ));
33- }
34-
35- SVDB4CommissioningPlotsModule::~SVDB4CommissioningPlotsModule ()
36- {
37-
33+ addParam (" plotRecoDigits" , m_plotRecoDigits,
34+ " Set true to produce the plots for RecoDigits (false by default)" , m_plotRecoDigits);
3835}
3936
4037void SVDB4CommissioningPlotsModule::initialize ()
@@ -46,7 +43,6 @@ void SVDB4CommissioningPlotsModule::initialize()
4643 m_recoTracks.isOptional ();
4744 m_tfr.isOptional (m_TrackFitResultName);
4845
49-
5046 B2INFO (" RecoDigits: " << m_RecoDigitName);
5147 B2INFO (" Clusters: " << m_ClusterName);
5248 B2INFO (" Tracks: " << m_TrackName);
@@ -66,93 +62,93 @@ void SVDB4CommissioningPlotsModule::beginRun()
6662 // RECO DIGITS
6763 TH1F hRecoCharge (" reco_charge_L@layerL@ladderS@sensor@view" ,
6864 " Charge of RecoDigits in @layer.@ladder.@sensor @view/@side side" ,
69- 100 , 0 , 1000 );
65+ 100 , 0 , 1000 );
7066 hRecoCharge.GetXaxis ()->SetTitle (" charge (ke-)" );
7167 h_recoCharge = new SVDHistograms<TH1F>(hRecoCharge);
7268
7369 TH1F hRecoEnergy (" reco_energy_L@layerL@ladderS@sensor@view" ,
7470 " Energy of RecoDigits in @layer.@ladder.@sensor @view/@side side" ,
75- 100 , 0 , 360 );
71+ 100 , 0 , 360 );
7672 hRecoEnergy.GetXaxis ()->SetTitle (" energy (keV)" );
7773 h_recoEnergy = new SVDHistograms<TH1F>(hRecoEnergy);
7874
7975 TH1F hRecoTime (" reco_time_L@layerL@ladderS@sensor@view" ,
8076 " Time of RecoDigits in @layer.@ladder.@sensor @view/@side side" ,
81- 200 , -100 , 100 );
77+ 200 , -100 , 100 );
8278 hRecoTime.GetXaxis ()->SetTitle (" time (ns)" );
8379 h_recoTime = new SVDHistograms<TH1F>(hRecoTime);
8480
8581 TH1F hRecoNoise (" reco_noise_L@layerL@ladderS@sensor@view" ,
8682 " Noise of RecoDigits in @layer.@ladder.@sensor @view/@side side" ,
87- 200 , 300 , 1800 );
83+ 200 , 300 , 1800 );
8884 hRecoNoise.GetXaxis ()->SetTitle (" strip noise (e-)" );
8985 h_recoNoise = new SVDHistograms<TH1F>(hRecoNoise);
9086
9187 // CLUSTER NOT RELATED TO TRACKS
9288 TH1F hClusterCharge (" cluster_charge_L@layerL@ladderS@sensor@view" ,
9389 " Charge of Clusters in @layer.@ladder.@sensor @view/@side side" ,
94- 100 , 0 , 100 );
90+ 100 , 0 , 100 );
9591 hClusterCharge.GetXaxis ()->SetTitle (" charge (ke-)" );
9692 h_clusterCharge = new SVDHistograms<TH1F>(hClusterCharge);
9793
9894 TH1F hClusterSize (" cluster_size_L@layerL@ladderS@sensor@view" ,
9995 " Clusters Size for @layer.@ladder.@sensor @view/@side side" ,
100- 20 , 0 , 20 );
96+ 20 , 0 , 20 );
10197 hClusterSize.GetXaxis ()->SetTitle (" cluster size" );
10298 h_clusterSize = new SVDHistograms<TH1F>(hClusterSize);
10399
104100 TH1F hClusterSNR (" cluster_SNR_L@layerL@ladderS@sensor@view" ,
105101 " SNR of Clusters in @layer.@ladder.@sensor @view/@side side" ,
106- 100 , 0 , 140 );
102+ 100 , 0 , 140 );
107103 hClusterSNR.GetXaxis ()->SetTitle (" SNR" );
108104 h_clusterSNR = new SVDHistograms<TH1F>(hClusterSNR);
109105
110106 TH1F hClusterEnergy (" cluster_energy_L@layerL@ladderS@sensor@view" ,
111107 " Energy of Clusters in @layer.@ladder.@sensor @view/@side side" ,
112- 100 , 0 , 360 );
108+ 100 , 0 , 360 );
113109 hClusterEnergy.GetXaxis ()->SetTitle (" energy (keV)" );
114110 h_clusterEnergy = new SVDHistograms<TH1F>(hClusterEnergy);
115111
116112 TH1F hClusterTime (" cluster_time_L@layerL@ladderS@sensor@view" ,
117113 " Time of Clusters in @layer.@ladder.@sensor @view/@side side" ,
118- 200 , -100 , 100 );
114+ 200 , -100 , 100 );
119115 hClusterTime.GetXaxis ()->SetTitle (" time (ns)" );
120116 h_clusterTime = new SVDHistograms<TH1F>(hClusterTime);
121117
122118 // CLUSTER RELATED TO TRACKS
123119 TH1F hClusterTrkCharge (" clusterTrk_charge_L@layerL@ladderS@sensor@view" ,
124120 " Charge of Clusters Related to Tracks in @layer.@ladder.@sensor @view/@side side" ,
125- 100 , 0 , 100 );
121+ 100 , 0 , 100 );
126122 hClusterTrkCharge.GetXaxis ()->SetTitle (" charge (ke-)" );
127123 h_clusterTrkCharge = new SVDHistograms<TH1F>(hClusterTrkCharge);
128124
129125 TH1F hClusterTrkSize (" clusterTrk_size_L@layerL@ladderS@sensor@view" ,
130126 " Cluster Size for @layer.@ladder.@sensor @view/@side side" ,
131- 20 , 0 , 20 );
127+ 20 , 0 , 20 );
132128 hClusterTrkSize.GetXaxis ()->SetTitle (" cluster size" );
133129 h_clusterTrkSize = new SVDHistograms<TH1F>(hClusterTrkSize);
134130
135131 TH1F hClusterTrkSNR (" clusterTrk_SNR_L@layerL@ladderS@sensor@view" ,
136132 " SNR of Clusters Related to Tracks in @layer.@ladder.@sensor @view/@side side" ,
137- 100 , 0 , 140 );
133+ 100 , 0 , 140 );
138134 hClusterTrkSNR.GetXaxis ()->SetTitle (" SNR" );
139135 h_clusterTrkSNR = new SVDHistograms<TH1F>(hClusterTrkSNR);
140136
141137 TH1F hClusterTrkEnergy (" clusterTrk_energy_L@layerL@ladderS@sensor@view" ,
142138 " Energy of Clusters Related to Tracks in @layer.@ladder.@sensor @view/@side side" ,
143- 100 , 0 , 360 );
139+ 100 , 0 , 360 );
144140 hClusterTrkEnergy.GetXaxis ()->SetTitle (" energy (keV)" );
145141 h_clusterTrkEnergy = new SVDHistograms<TH1F>(hClusterTrkEnergy);
146142
147143 TH1F hClusterTrkTime (" clusterTrk_time_L@layerL@ladderS@sensor@view" ,
148144 " Time of Clusters Related to Tracks in @layer.@ladder.@sensor @view/@side side" ,
149- 200 , -100 , 100 );
145+ 200 , -100 , 100 );
150146 hClusterTrkTime.GetXaxis ()->SetTitle (" time (ns)" );
151147 h_clusterTrkTime = new SVDHistograms<TH1F>(hClusterTrkTime);
152148
153149 TH1F hClusterTrkInterstripPos (" clusterTrk_interstripPos_L@layerL@ladderS@sensor@view" ,
154150 " Interstrip Position of Clusters Related to Tracks in @layer.@ladder.@sensor @view/@side side" ,
155- 400 , 0 , 1 );
151+ 400 , 0 , 1 );
156152 hClusterTrkInterstripPos.GetXaxis ()->SetTitle (" interstrip position" );
157153 h_clusterTrkInterstripPos = new SVDHistograms<TH1F>(hClusterTrkInterstripPos);
158154
@@ -225,26 +221,28 @@ void SVDB4CommissioningPlotsModule::event()
225221 }
226222
227223 if (m_Tracks)
228- B2DEBUG (1 , " %%%%%%%% NEW EVENT, number of Tracks = " << m_Tracks.getEntries ());
229-
224+ B2DEBUG (29 , " %%%%%%%% NEW EVENT, number of Tracks = " << m_Tracks.getEntries ());
230225
231226 // reco digits
232- if (m_svdRecos.isValid ()) {
233- for (int digi = 0 ; digi < m_svdRecos.getEntries (); digi++) {
227+ if (m_plotRecoDigits) {
228+ if (m_svdRecos.isValid ()) {
229+ for (int digi = 0 ; digi < m_svdRecos.getEntries (); digi++) {
234230
235- VxdID::baseType theVxdID = (VxdID::baseType)m_svdRecos[digi]->getSensorID ();
236- int side = m_svdRecos[digi]->isUStrip ();
237- int cellID = m_svdRecos[digi]->getCellID ();
231+ VxdID::baseType theVxdID = (VxdID::baseType)m_svdRecos[digi]->getSensorID ();
232+ int side = m_svdRecos[digi]->isUStrip ();
233+ int cellID = m_svdRecos[digi]->getCellID ();
238234
239- float thisNoise = m_NoiseCal.getNoiseInElectrons (theVxdID, side, cellID);
235+ float thisNoise = m_NoiseCal.getNoiseInElectrons (theVxdID, side, cellID);
240236
241- h_recoNoise->fill (theVxdID, side, thisNoise);
242- h_recoCharge->fill (theVxdID, side, m_svdRecos[digi]->getCharge () / 1000 .);
243- h_recoEnergy->fill (theVxdID, side, m_svdRecos[digi]->getCharge ()*c_eTOkeV);
244- h_recoTime->fill (theVxdID, side, m_svdRecos[digi]->getTime ());
237+ h_recoNoise->fill (theVxdID, side, thisNoise);
238+ h_recoCharge->fill (theVxdID, side, m_svdRecos[digi]->getCharge () / 1000 .);
239+ h_recoEnergy->fill (theVxdID, side, m_svdRecos[digi]->getCharge ()*c_eTOkeV);
240+ h_recoTime->fill (theVxdID, side, m_svdRecos[digi]->getTime ());
241+ }
245242 }
246243 }
247244
245+
248246 // clusters NOT related to tracks
249247 for (int cl = 0 ; cl < m_svdClusters.getEntries (); cl++) {
250248
@@ -311,11 +309,13 @@ void SVDB4CommissioningPlotsModule::endRun()
311309 for (Belle2::VxdID sensor : geoCache.getSensors (ladder))
312310 for (int view = SVDHistograms<TH1F>::VIndex ; view < SVDHistograms<TH1F>::UIndex + 1 ; view++) {
313311
314- dir_reco_layer->cd ();
315- (h_recoCharge->getHistogram (sensor, view))->Write ();
316- (h_recoEnergy->getHistogram (sensor, view))->Write ();
317- (h_recoTime->getHistogram (sensor, view))->Write ();
318- (h_recoNoise->getHistogram (sensor, view))->Write ();
312+ if (m_plotRecoDigits) {
313+ dir_reco_layer->cd ();
314+ (h_recoCharge->getHistogram (sensor, view))->Write ();
315+ (h_recoEnergy->getHistogram (sensor, view))->Write ();
316+ (h_recoTime->getHistogram (sensor, view))->Write ();
317+ (h_recoNoise->getHistogram (sensor, view))->Write ();
318+ }
319319 dir_clusterAssigned_layer->cd ();
320320 (h_clusterTrkCharge->getHistogram (sensor, view))->Write ();
321321 (h_clusterTrkSNR->getHistogram (sensor, view))->Write ();
@@ -337,9 +337,3 @@ void SVDB4CommissioningPlotsModule::endRun()
337337 }
338338
339339}
340-
341-
342-
343- void SVDB4CommissioningPlotsModule::terminate ()
344- {
345- }
0 commit comments