ATLAS Offline Software
InDetGlobalHitsMonTool.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
20 //Local
21 #include "InDetGlobalHitsMonTool.h"
22 //Framework
23 #include "GaudiKernel/StatusCode.h"
24 #include "GaudiKernel/ListItem.h"
25 #include "TrkTrack/Track.h"
33 
35 
37 
42 
43 
44 #include "LWHists/TH1F_LW.h"
45 #include "LWHists/TH2F_LW.h"
46 #include "LWHists/TH1I_LW.h"
47 #include "LWHists/TH2I_LW.h"
48 #include "LWHists/TProfile_LW.h"
49 #include "TProfile2D.h"
50 
51 
52 //Root
53 #include <string>
54 
56  const std::string & name,
57  const IInterface* parent)
59  m_tracks(nullptr),
60  m_ID_hitmap_x_y(nullptr),
61  m_ID_hitmap_x_y_eca(nullptr),
62  m_ID_hitmap_x_y_ecc(nullptr),
63  m_ID_hitmap_z_x(nullptr),
64  m_ID_hitmap_z_r(nullptr),
65  m_ID_holes(nullptr),
66  m_Trk_nSihits_nTRThits(nullptr),m_Trk_nPIXhits_nSCThits(nullptr),m_Trk_nSCThits_nTRThits(nullptr),
67  m_Trk_nPIXhits(nullptr),
68  m_Trk_nPIXhits_EA(nullptr),
69  m_Trk_nPIXhits_TA(nullptr),
70  m_Trk_nPIXhits_B(nullptr),
71  m_Trk_nPIXhits_TC(nullptr),
72  m_Trk_nPIXhits_EC(nullptr),
73  m_Trk_nPIXhits_eta(nullptr),
74  m_Trk_nPIXhits_phi(nullptr),
75  m_Trk_nPIXhits_eta_phi(nullptr),
76  m_Trk_nPixhits_SCTTRTPixFid(nullptr),
77  m_Trk_nPIXhits_fidusial(nullptr),
78  m_Trk_nPIXhits_1trk(nullptr),
79  m_Trk_nSCThits_1trk(nullptr),
80  m_Trk_nSCThits(nullptr),
81  m_Trk_nSCThits_EA(nullptr),
82  m_Trk_nSCThits_TA(nullptr),
83  m_Trk_nSCThits_B(nullptr),
84  m_Trk_nSCThits_TC(nullptr),
85  m_Trk_nSCThits_EC(nullptr),
86  m_Trk_nSCThits_eta(nullptr),
87  m_Trk_nSCThits_phi(nullptr),
88  m_Trk_nSCThits_eta_phi(nullptr),
89  m_Trk_nSCThits_pt(nullptr),
90  m_Trk_nSCThits_PixTRT(nullptr),
91  m_Trk_nSCThits_withPix(nullptr),
92  m_Trk_nTRThits(nullptr),
93  m_Trk_nTRThits_EA(nullptr),
94  m_Trk_nTRThits_TA(nullptr),
95  m_Trk_nTRThits_B(nullptr),
96  m_Trk_nTRThits_TC(nullptr),
97  m_Trk_nTRThits_EC(nullptr),
98  m_Trk_nTRThits_eta(nullptr),
99  m_Trk_nTRThits_phi(nullptr),
100  m_Trk_nTRThits_eta_phi(nullptr),
101  m_Trk_nTRThits_PixSCT(nullptr),
102  m_Trk_nTRTHLhits(nullptr),
103  m_Trk_nTRTLLhits(nullptr),
104  m_Trk_nTRThits_withSi(nullptr),
105  m_Trk_nTRTHLhits_1trk(nullptr),
106  m_Trk_nTRTLLhits_1trk(nullptr),
107  m_TRT_LL(0),
108  m_TRT_HL(0),
109  m_SCThits(0),
110  m_PIXhits(0),
111  m_PIXhits_fid(0),
112  m_pix_barrel(0),
113  m_pix_eca(0),
114  m_pix_ecc(0),
115  m_sct_barrel(0),
116  m_sct_eca(0),
117  m_sct_ecc(0),
118  m_trt_barrel(0),
119  m_trt_eca(0),
120  m_trt_ecc(0)
121 
122 {
123 
124 }
125 
127  if ( ManagedMonitorToolBase::initialize().isFailure() )
128  {
129  if ( msgLvl(MSG::DEBUG) ) msg(MSG::DEBUG) << "Could not initialize Monitor tool base!" << endmsg;
130  return StatusCode::FAILURE;
131  }
132 
133  return StatusCode::SUCCESS;
134 }
135 
136 //------------------------------------------------------------------------
138 {
139  bool status = true;
140 
141  if ( newRunFlag() ) {
142 
143  MonGroup monGr_shift(this, "InDetGlobal/Hits",run );
144  MonGroup monGr_exp(this, "InDetGlobal/Hits", run );
145  MonGroup monGr_bug(this, "InDetGlobal/Hits", run );
146 
147 
148 
149  //--- ID histograms
150  status &= registerHist( monGr_shift, m_ID_hitmap_x_y = TH2F_LW::create("m_ID_hitmap_x_y","Map of ID hits (BARREL) in x vs y (mm)",400,-1100,1100,400,-1100,1100)).isSuccess();
151  status &= registerHist( monGr_shift, m_ID_hitmap_x_y_eca = TH2F_LW::create("m_ID_hitmap_x_y_eca","Map of ID hits (ECA) in x vs y (mm)",400,-1100,1100,400,-1100,1100)).isSuccess();
152  status &= registerHist( monGr_shift, m_ID_hitmap_x_y_ecc = TH2F_LW::create("m_ID_hitmap_x_y_ecc","Map of ID hits (ECC) in x vs y (mm)",400,-1100,1100,400,-1100,1100)).isSuccess();
153  status &= registerHist( monGr_shift, m_ID_hitmap_z_x = TH2F_LW::create("m_ID_hitmap_z_x","Map of ID hits in z vs x (mm)",1000,-3100,3100,300,-1100,1100)).isSuccess();
154  status &= registerHist( monGr_shift, m_ID_hitmap_z_r = TH2F_LW::create("m_ID_hitmap_z_r","Map of ID hits in z vs r (mm)",3000,-3100,3100,1100,0,1100)).isSuccess();
155  status &= registerHist( monGr_shift, m_ID_holes = TH2I_LW::create("m_ID_holes","Number of ID holes on tracks in the subdetectors",2,0,2,3,0,3)).isSuccess();
156 
157  //--- Pixel histograms
158  status &= registerHist( monGr_shift, m_Trk_nPIXhits_nSCThits = TH2I_LW::create("m_Trk_nPIXhits_nSCThits","Number of SCT hits vs Pixel hits",13,-0.5,12.5,31,-0.5,30.5)).isSuccess();
159  status &= registerHist( monGr_shift, m_Trk_nPixhits_SCTTRTPixFid = TH1I_LW::create("m_Trk_nPixhits_SCTTRTPixFid","Number of Pixel hits per track with a least one hit in the other sub-detectors and going through the fiducial layer",11,-0.5,10.5)).isSuccess();
160  status &= registerHist( monGr_shift, m_Trk_nSihits_nTRThits = TH2I_LW::create("m_Trk_nSihits_nTRThits","Number of Silicon hits vs TRT hits",100,0.5,100.5,31,-0.5,30.5)).isSuccess();
161  status &= registerHist( monGr_shift, m_Trk_nSCThits_nTRThits = TH2I_LW::create("m_Trk_nSCThits_nTRThits","Number of SCT hits vs TRT hits",100,0.5,100.5,31,-0.5,30.5)).isSuccess();
162  status &= registerHist( monGr_shift, m_Trk_nPIXhits = TH1I_LW::create("m_Trk_nPIXhits","Number of Pixel hits per track",13,-0.5,12.5)).isSuccess();
163  status &= registerHist( monGr_shift, m_Trk_nPIXhits_EA = TH1I_LW::create("m_Trk_nPIXhits_EA","Number of Pixel hits per track (ECA)",13,-0.5,12.5)).isSuccess();
164  status &= registerHist( monGr_shift, m_Trk_nPIXhits_TA = TH1I_LW::create("m_Trk_nPIXhits_TA","Number of Pixel hits per track (Transition region A)",13,-0.5,12.5)).isSuccess();
165  status &= registerHist( monGr_shift, m_Trk_nPIXhits_B = TH1I_LW::create("m_Trk_nPIXhits_B","Number of Pixel hits per track (Barrel)",13,-0.5,12.5)).isSuccess();
166  status &= registerHist( monGr_shift, m_Trk_nPIXhits_TC = TH1I_LW::create("m_Trk_nPIXhits_TC","Number of Pixel hits per track (Transition region C)",13,-0.5,12.5)).isSuccess();
167  status &= registerHist( monGr_shift, m_Trk_nPIXhits_EC = TH1I_LW::create("m_Trk_nPIXhits_EC","Number of Pixel hits per track (ECC)",13,-0.5,12.5)).isSuccess();
168  status &= registerHist( monGr_shift, m_Trk_nPIXhits_eta = TProfile_LW::create("m_Trk_nPIXhits_eta","Number of Pixel hits per track, as a function of eta",25,-2.5,2.5)).isSuccess();
169  status &= registerHist( monGr_shift, m_Trk_nPIXhits_phi = TProfile_LW::create("m_Trk_nPIXhits_phi","Number of Pixel hits per track, as a function of phi",30,-3.2,3.2)).isSuccess();
170  status &= registerHist( monGr_shift, m_Trk_nPIXhits_eta_phi = new TProfile2D("m_Trk_nPIXhits_eta_phi","Number of Pixel hits per track, eta-phi profile",25,-2.5,2.5,30,-3.2,3.2)).isSuccess();
171  status &= registerHist( monGr_shift, m_Trk_nPIXhits_fidusial = TH1I_LW::create("m_Trk_nPIXhits_fiducial","Number of Pixel hits per track for tracks with |d0|<5cm and |z0|<1.4m",12,0.5,12.5)).isSuccess();
172  status &= registerHist( monGr_exp , m_Trk_nPIXhits_1trk = TH1I_LW::create("m_Trk_nPIXhits_1trk","Number of Pixel hits per track - only 1 track per event",12,0.5,12.5)).isSuccess();
173 
174  //--- SCT histograms
175  status &= registerHist( monGr_shift, m_Trk_nSCThits = TH1I_LW::create("m_Trk_nSCThits","Number of SCT hits per track",31,-0.5,30.5)).isSuccess();
176  status &= registerHist( monGr_shift, m_Trk_nSCThits_EA = TH1I_LW::create("m_Trk_nSCThits_EA","Number of SCT hits per track (ECA)",31,-0.5,30.5)).isSuccess();
177  status &= registerHist( monGr_shift, m_Trk_nSCThits_TA = TH1I_LW::create("m_Trk_nSCThits_TA","Number of SCT hits per track (Transition region A)",31,-0.5,30.5)).isSuccess();
178  status &= registerHist( monGr_shift, m_Trk_nSCThits_B = TH1I_LW::create("m_Trk_nSCThits_B","Number of SCT hits per track (Barrel)",31,-0.5,30.5)).isSuccess();
179  status &= registerHist( monGr_shift, m_Trk_nSCThits_TC = TH1I_LW::create("m_Trk_nSCThits_TC","Number of SCT hits per track (Transition region C)",31,-0.5,30.5)).isSuccess();
180  status &= registerHist( monGr_shift, m_Trk_nSCThits_EC = TH1I_LW::create("m_Trk_nSCThits_EC","Number of SCT hits per track (ECC)",31,-0.5,30.5)).isSuccess();
181  status &= registerHist( monGr_shift, m_Trk_nSCThits_eta = TProfile_LW::create("m_Trk_nSCThits_eta","Number of SCT hits per track, as a function of eta",25,-2.5,2.5)).isSuccess();
182  status &= registerHist( monGr_shift, m_Trk_nSCThits_phi = TProfile_LW::create("m_Trk_nSCThits_phi","Number of SCT hits per track, as a function of phi",30,-3.2,3.2)).isSuccess();
183  status &= registerHist( monGr_shift, m_Trk_nSCThits_eta_phi = new TProfile2D("m_Trk_nSCThits_eta_phi","Number of SCT hits per track, eta-phi profile",25,-2.5,2.5,30,-3.2,3.2)).isSuccess();
184  status &= registerHist( monGr_shift, m_Trk_nSCThits_pt = TH2I_LW::create("m_Trk_nSCThits_pt", "Number of SCT hits per track by vs track P_{T}",50,-0.,10,30,0.5,30.5)).isSuccess();
185  status &= registerHist( monGr_shift, m_Trk_nSCThits_PixTRT = TH1I_LW::create("m_Trk_nSCThits_PixTRT","Number of SCT hits per track, with at least one hit in the other subdetectors",31,-0.5,30.5)).isSuccess();
186  status &= registerHist( monGr_exp , m_Trk_nSCThits_1trk = TH1I_LW::create("m_Trk_nSCThits_1trk","Number of SCT hits per track - only 1 track per event",30,0.5,30.5)).isSuccess();
187  status &= registerHist( monGr_shift, m_Trk_nSCThits_withPix = TH1I_LW::create("m_Trk_nSCThits_withPix","number of SCT hits for tracks which have Pixel hit",31,-0.5,30.5)).isSuccess();
188  //--- TRT histograms
189  status &= registerHist( monGr_shift, m_Trk_nTRThits = TH1I_LW::create("m_Trk_nTRThits","Number of TRT hits per track",100,0.5,100.5)).isSuccess();
190  status &= registerHist( monGr_shift, m_Trk_nTRThits_EA = TH1I_LW::create("m_Trk_nTRThits_EA","Number of TRT hits per track (ECA)",100,0.5,100.5)).isSuccess();
191  status &= registerHist( monGr_shift, m_Trk_nTRThits_TA = TH1I_LW::create("m_Trk_nTRThits_TA","Number of TRT hits per track (Transition region A)",100,0.5,100.5)).isSuccess();
192  status &= registerHist( monGr_shift, m_Trk_nTRThits_B = TH1I_LW::create("m_Trk_nTRThits_B","Number of TRT hits per track (Barrel)",100,0.5,100.5)).isSuccess();
193  status &= registerHist( monGr_shift, m_Trk_nTRThits_TC = TH1I_LW::create("m_Trk_nTRThits_TC","Number of TRT hits per track (Transition region C)",100,0.5,100.5)).isSuccess();
194  status &= registerHist( monGr_shift, m_Trk_nTRThits_EC = TH1I_LW::create("m_Trk_nTRThits_EC","Number of TRT hits per track (ECC)",100,0.5,100.5)).isSuccess();
195  status &= registerHist( monGr_shift, m_Trk_nTRThits_eta = TProfile_LW::create("m_Trk_nTRThits_eta","Number of TRT hits per track, as a function of eta",30,-3.5,3.5)).isSuccess();
196  status &= registerHist( monGr_shift, m_Trk_nTRThits_phi = TProfile_LW::create("m_Trk_nTRThits_phi","Number of TRT hits per track, as a function of phi",30,-3.2,3.2)).isSuccess();
197  status &= registerHist( monGr_shift, m_Trk_nTRThits_eta_phi = new TProfile2D("m_Trk_nTRThits_eta_phi","Number of TRT hits per track, eta-phi profile",25,-2.5,2.5,30,-3.2,3.2)).isSuccess();
198 
199  status &= registerHist( monGr_shift, m_Trk_nTRThits_PixSCT = TH1I_LW::create("m_Trk_nTRThits_PixSCT","Number of TRT hits per track, with at least one hit in other subdetectors",100,-0.5,100.5)).isSuccess();
200  status &= registerHist( monGr_shift, m_Trk_nTRTHLhits = TH1I_LW::create("m_Trk_nTRTHLhits","Number of high level TRT hits per track",30,0.5,30.5)).isSuccess();
201  status &= registerHist( monGr_shift, m_Trk_nTRTLLhits = TH1I_LW::create("m_Trk_nTRTLLhits","Number of low level TRT hits per track",80,0.5,80.5)).isSuccess();
202  status &= registerHist( monGr_shift, m_Trk_nTRThits_withSi = TH1I_LW::create("m_Trk_nTRThits_withSi","Number of TRT hits for tracks with both Pixel and SCT hits",100,0.5,100.5)).isSuccess();
203  status &= registerHist( monGr_exp , m_Trk_nTRTHLhits_1trk = TH1I_LW::create("m_Trk_nHL_1trk","Number of high level TRT hits per track - only 1 track per event",30,0.5,30.5)).isSuccess();
204  status &= registerHist( monGr_exp , m_Trk_nTRTLLhits_1trk = TH1I_LW::create("m_Trk_nLL_1trk","Number of low level TRT hits per track - only 1 track per event",80,0.5,80.5)).isSuccess();
205 
206  // Fix the labels for the holes histogram
209  xaxis->SetBinLabel(1,"Pixel");
210  xaxis->SetBinLabel(2,"SCT");
211  yaxis->SetBinLabel(1,"ECA");
212  yaxis->SetBinLabel(2,"Barrel");
213  yaxis->SetBinLabel(3,"ECC");
214 
215  LWHist::LWHistAxis *xaxis_hitmap = m_ID_hitmap_x_y->GetXaxis();
216  LWHist::LWHistAxis *yaxis_hitmap = m_ID_hitmap_x_y->GetYaxis();
217  xaxis_hitmap->SetTitle("x [mm]");
218  yaxis_hitmap->SetTitle("y [mm]");
219 
220  LWHist::LWHistAxis *xaxis_hitmap_z = m_ID_hitmap_z_x->GetXaxis();
221  LWHist::LWHistAxis *yaxis_hitmap_z = m_ID_hitmap_z_x->GetYaxis();
222  xaxis_hitmap_z->SetTitle("z [mm]");
223  yaxis_hitmap_z->SetTitle("x [mm]");
224 
225  LWHist::LWHistAxis *xaxis_hitmap_r = m_ID_hitmap_z_r->GetXaxis();
226  LWHist::LWHistAxis *yaxis_hitmap_r = m_ID_hitmap_z_r->GetYaxis();
227  xaxis_hitmap_r->SetTitle("z [mm]");
228  yaxis_hitmap_r->SetTitle("r [mm]");
229 
232  xaxis_PS->SetTitle("Pixel hits");
233  yaxis_PS->SetTitle("SCT hits");
234 
237  xaxis_SiT->SetTitle("TRT hits");
238  yaxis_SiT->SetTitle("Silicon hits");
239 
242  xaxis_ST->SetTitle("TRT hits");
243  yaxis_ST->SetTitle("SCT hits");
244 
245  }
246 
247  if (status) return StatusCode::SUCCESS;
248  else return StatusCode::FAILURE;
249 }
250 
251 //---------------------------------------------------------
253 {
255 
256  if (m_evt%1000==0 && m_evt>0 ) m_ID_hitmap_x_y->Reset();
257 
258  if (m_tracks) {
261  for ( ; itrack!= itrack_end; ++itrack) {
262  m_TRT_LL = 0;
263  m_TRT_HL = 0;
264  m_SCThits = 0;
265  m_PIXhits = 0;
266  m_PIXhits_fid = 0;
267  m_pix_eca = 0;
268  m_pix_barrel = 0;
269  m_pix_ecc = 0;
270  m_sct_eca = 0;
271  m_sct_barrel = 0;
272  m_sct_ecc = 0;
273  m_trt_eca = 0;
274  m_trt_barrel = 0;
275  m_trt_ecc = 0;
276 
277  // Get track
278  const Trk::Track *track=(*itrack);
279  if (track == nullptr){
280  if ( msgLvl(MSG::WARNING) ) {
281  msg(MSG::WARNING) << "no pointer to track!!!" << endmsg;
282  }
283  break;
284  }
285 
286  const Trk::Perigee *measPerigee = dynamic_cast<const Trk::Perigee *>(track->perigeeParameters());
287 
288  const Trk::TrackStates*
289  trackStates=track->trackStateOnSurfaces();
290  if (trackStates == nullptr) {
291  if ( msgLvl(MSG::ERROR) ) msg(MSG::ERROR)
292  << "for current track is TrackStateOnSurfaces == Null "
293  << endmsg;
294  } else {
296  Trk::TrackStates::const_iterator it_end=trackStates->end();
297  for (;it!=it_end; ++it) {
298  const Trk::TrackStateOnSurface* trackState=(*it);
299  if ( processHit( track, trackState ) == StatusCode::FAILURE ) {}
300  }//end of loop on track surfaces
301 
302  }//trackStates ok
303 
305  if ( m_TRT_LL + m_TRT_HL ){
306  m_Trk_nTRThits_eta->Fill( measPerigee->eta(),m_TRT_LL + m_TRT_HL );
307  m_Trk_nTRThits_phi->Fill( measPerigee->parameters()[Trk::phi0],m_TRT_LL + m_TRT_HL );
308  m_Trk_nTRThits_eta_phi->Fill( measPerigee->eta(), measPerigee->parameters()[Trk::phi0],m_TRT_LL + m_TRT_HL );
309 
310  if ( measPerigee->eta() < -1.6 )
312  else if ( measPerigee->eta() < -0.8 )
314  else if ( measPerigee->eta() < 0.8 )
316  else if ( measPerigee->eta() < 1.6 )
318  else
320 
323  }
324 
325  if ( m_SCThits > 0 && m_PIXhits > 0 ){
327  }
328  if ( m_SCThits ){
329  m_Trk_nSCThits_eta->Fill( measPerigee->eta(),m_SCThits );
330  m_Trk_nSCThits_phi->Fill( measPerigee->parameters()[Trk::phi0],m_SCThits );
331  m_Trk_nSCThits_eta_phi->Fill( measPerigee->eta(), measPerigee->parameters()[Trk::phi0],m_SCThits );
332 
333  if ( measPerigee->eta() < -1.6 )
335  else if ( measPerigee->eta() < -0.8 )
337  else if ( measPerigee->eta() < 0.8 )
339  else if ( measPerigee->eta() < 1.6 )
341  else
343 
345 
346  m_Trk_nSCThits_pt->Fill( measPerigee->pT()/1000.0, m_SCThits );
347  }
348 
349  if ( m_TRT_LL + m_TRT_HL > 0 && m_PIXhits > 0 ){
351  }
352  if ( m_TRT_LL + m_TRT_HL > 0 && m_SCThits > 0 && fabs(measPerigee->parameters()[Trk::d0]) < 5 && fabs(measPerigee->parameters()[Trk::z0]) < 140 ){
354  }
355  if ( m_PIXhits ){
356  m_Trk_nPIXhits_eta->Fill( measPerigee->eta(),m_PIXhits );
357  m_Trk_nPIXhits_phi->Fill( measPerigee->parameters()[Trk::phi0],m_PIXhits );
358  m_Trk_nPIXhits_eta_phi->Fill( measPerigee->eta(), measPerigee->parameters()[Trk::phi0], m_PIXhits );
359 
361 
362  if ( measPerigee->eta() < -1.6 )
364  else if ( measPerigee->eta() < -0.8 )
366  else if ( measPerigee->eta() < 0.8 )
368  else if ( measPerigee->eta() < 1.6 )
370  else
372  }
373 
378  if (m_PIXhits > 0)
380  if (m_PIXhits > 0 && m_SCThits > 0)
382 
383  if ( itrack == m_tracks->begin()) {
388  }
389  } // end of loop on tracks
390  } // if m_tracks != 0
391 
392  m_evt++;
393 
394  return StatusCode::SUCCESS;
395 }
396 
398 {
399  return StatusCode::SUCCESS;
400 }
401 
403 {
404  if (trackState == nullptr) {
405  if ( msgLvl(MSG::WARNING) ) msg(MSG::WARNING) << "TrackStateOnSurface == Null, is the tracking OK?" << endmsg;
406  return StatusCode::FAILURE;
407  }
408  //if ( !(trackState->type() == 0) ) {
409  // return StatusCode::SUCCESS;
410  //}
411 
412  //TRT
413  const InDet::TRT_DriftCircleOnTrack *trtcircle = dynamic_cast<const InDet::TRT_DriftCircleOnTrack*>(trackState->measurementOnTrack());
414  if (trtcircle!=nullptr) {
415  //m_ID_hitmap_x_y->Fill( trtcircle->globalPosition()[0], trtcircle->globalPosition()[1] );
416  if ( trtcircle->globalPosition()[2] < -800 )
417  m_ID_hitmap_x_y_ecc->Fill( trtcircle->globalPosition()[0], trtcircle->globalPosition()[1] );
418  else if ( trtcircle->globalPosition()[2] > 800 )
419  m_ID_hitmap_x_y_eca->Fill( trtcircle->globalPosition()[0], trtcircle->globalPosition()[1] );
420  else
421  m_ID_hitmap_x_y->Fill( trtcircle->globalPosition()[0], trtcircle->globalPosition()[1] );
422 
423  m_ID_hitmap_z_x->Fill( trtcircle->globalPosition()[2], trtcircle->globalPosition()[0] );
424  m_ID_hitmap_z_r->Fill( trtcircle->globalPosition()[2], sqrt( pow( trtcircle->globalPosition()[0], 2) + pow( trtcircle->globalPosition()[1], 2) ) );
425 
426  if (trtcircle->highLevel()) m_TRT_HL++;
427  else m_TRT_LL++;
428 
429  switch ( m_trtID->barrel_ec( trtcircle->identify() ) ) {
430  case -2:
431  m_trt_ecc++;
432  break;
433  case -1:
434  m_trt_barrel++;
435  break;
436  case 1:
437  m_trt_barrel++;
438  break;
439  case 2:
440  m_trt_eca++;
441  break;
442  }
443 
444  }
445  //SILICON (SCT + Pixel)
446  const InDet::SiClusterOnTrack *clus =
447  dynamic_cast<const InDet::SiClusterOnTrack*>(trackState->measurementOnTrack());
448  if (clus) {
449  m_ID_hitmap_z_x->Fill( clus->globalPosition()[2], clus->globalPosition()[0] );
450  m_ID_hitmap_z_r->Fill( clus->globalPosition()[2], sqrt( pow( clus->globalPosition()[0], 2) + pow( clus->globalPosition()[1], 2) ) );
451  const InDet::SiCluster *RawDataClus = dynamic_cast<const InDet::SiCluster*>(clus->prepRawData());
452  if (RawDataClus==nullptr) {
453  if ( msgLvl(MSG::WARNING) ) msg(MSG::WARNING)
454  << "SiCluster WITHOUT prepRawData!!!!"
455  << endmsg;
456  } else {
457  if (RawDataClus->detectorElement()->isSCT()) {
458  switch ( m_sctID->barrel_ec( RawDataClus->identify() ) ) {
459  case -2:
460  m_sct_ecc++;
461  m_ID_hitmap_x_y_ecc->Fill( clus->globalPosition()[0], clus->globalPosition()[1] );
462  break;
463  case 0:
464  m_sct_barrel++;
465  m_ID_hitmap_x_y->Fill( clus->globalPosition()[0], clus->globalPosition()[1] );
466  break;
467  case 2:
468  m_sct_eca++;
469  m_ID_hitmap_x_y_eca->Fill( clus->globalPosition()[0], clus->globalPosition()[1] );
470  break;
471  }
472  m_SCThits++;
473  }else{
474  m_PIXhits++;
475  switch ( m_pixelID->barrel_ec( RawDataClus->identify() ) ) {
476  case -2:
477  m_pix_ecc++;
478  m_ID_hitmap_x_y_ecc->Fill( clus->globalPosition()[0], clus->globalPosition()[1] );
479  break;
480  case 0:
481  m_pix_barrel++;
482  m_ID_hitmap_x_y->Fill( clus->globalPosition()[0], clus->globalPosition()[1] );
483  break;
484  case 2:
485  m_pix_eca++;
486  m_ID_hitmap_x_y_eca->Fill( clus->globalPosition()[0], clus->globalPosition()[1] );
487  break;
488  }
489  const Trk::Perigee *measPerigee = dynamic_cast<const Trk::Perigee *>(track->perigeeParameters());
490  if (fabs(measPerigee->parameters()[Trk::d0]) < 5 && fabs(measPerigee->parameters()[Trk::z0]) < 140)
491  m_PIXhits_fid++;
492  }
493  }
494  }
495  return StatusCode::SUCCESS;
496 }
497 
TH2F_LW::Fill
virtual void Fill(const double &x, const double &y) override
Definition: TH2F_LW.cxx:329
InDetGlobalHitsMonTool::m_Trk_nTRTHLhits_1trk
TH1I_LW * m_Trk_nTRTHLhits_1trk
Number of high level TRT hits per track - only one track per event.
Definition: InDetGlobalHitsMonTool.h:189
InDetGlobalHitsMonTool::m_Trk_nPIXhits_TC
TH1I_LW * m_Trk_nPIXhits_TC
Definition: InDetGlobalHitsMonTool.h:126
InDetGlobalHitsMonTool::m_Trk_nPIXhits
TH1I_LW * m_Trk_nPIXhits
Number of PIX hits per track.
Definition: InDetGlobalHitsMonTool.h:122
TH1F_LW.h
TH2F_LW.h
InDetGlobalHitsMonTool::m_Trk_nTRTLLhits
TH1I_LW * m_Trk_nTRTLLhits
Number of low level TRT hits per track.
Definition: InDetGlobalHitsMonTool.h:183
InDetGlobalHitsMonTool::m_Trk_nTRThits_TC
TH1I_LW * m_Trk_nTRThits_TC
Definition: InDetGlobalHitsMonTool.h:172
InDetGlobalHitsMonTool::m_Trk_nPIXhits_EC
TH1I_LW * m_Trk_nPIXhits_EC
Definition: InDetGlobalHitsMonTool.h:127
DataModel_detail::const_iterator
Const iterator class for DataVector/DataList.
Definition: DVLIterator.h:82
InDetGlobalMotherMonTool::m_trtID
const TRT_ID * m_trtID
the TRT ID helper
Definition: InDetGlobalMotherMonTool.h:598
TH1I_LW::Fill
virtual void Fill(const double &x) override
Definition: TH1I_LW.cxx:246
InDetGlobalHitsMonTool::m_sct_ecc
int m_sct_ecc
Definition: InDetGlobalHitsMonTool.h:210
InDetGlobalHitsMonTool::m_Trk_nTRThits
TH1I_LW * m_Trk_nTRThits
Number of TRT hits per track.
Definition: InDetGlobalHitsMonTool.h:168
InDetGlobalHitsMonTool::m_TRT_LL
int m_TRT_LL
Definition: InDetGlobalHitsMonTool.h:197
TrackParameters.h
InDetGlobalHitsMonTool::m_Trk_nSihits_nTRThits
TH2I_LW * m_Trk_nSihits_nTRThits
Number of Silicon hits vs TRT hits.
Definition: InDetGlobalHitsMonTool.h:113
Trk::Track
The ATLAS Track class.
Definition: Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
InDetGlobalHitsMonTool::m_Trk_nSCThits_eta
TProfile_LW * m_Trk_nSCThits_eta
Definition: InDetGlobalHitsMonTool.h:153
PixelID::barrel_ec
int barrel_ec(const Identifier &id) const
Values of different levels (failure returns 0)
Definition: PixelID.h:619
Trk::ParametersT
Dummy class used to allow special convertors to be called for surfaces owned by a detector element.
Definition: EMErrorDetail.h:25
InDetGlobalMotherMonTool::registerHist
StatusCode registerHist(MonGroup &theGroup, TH1 *h1)
Register single histogram.
Definition: InDetGlobalMotherMonTool.cxx:121
InDetGlobalHitsMonTool::m_Trk_nPIXhits_TA
TH1I_LW * m_Trk_nPIXhits_TA
Definition: InDetGlobalHitsMonTool.h:124
conifer::pow
constexpr int pow(int x)
Definition: conifer.h:20
InDetGlobalHitsMonTool::m_tracks
const TrackCollection * m_tracks
The track collection.
Definition: InDetGlobalHitsMonTool.h:96
InDetGlobalMotherMonTool::m_sctID
const SCT_ID * m_sctID
the SCT ID helper
Definition: InDetGlobalMotherMonTool.h:601
skel.it
it
Definition: skel.GENtoEVGEN.py:423
InDetGlobalHitsMonTool::m_pix_barrel
int m_pix_barrel
Definition: InDetGlobalHitsMonTool.h:204
TProfile2D
Definition: rootspy.cxx:531
InDetGlobalHitsMonTool::m_Trk_nTRThits_EC
TH1I_LW * m_Trk_nTRThits_EC
Definition: InDetGlobalHitsMonTool.h:173
TH1I_LW::create
static TH1I_LW * create(const char *name, const char *title, unsigned nbinsx, const double &xlow, const double &xup)
Definition: TH1I_LW.cxx:33
TH2I_LW::Fill
virtual void Fill(const double &x, const double &y) override
Definition: TH2I_LW.cxx:329
InDetGlobalHitsMonTool::m_Trk_nTRThits_eta_phi
TProfile2D * m_Trk_nTRThits_eta_phi
Definition: InDetGlobalHitsMonTool.h:176
Trk::z0
@ z0
Definition: ParamDefs.h:70
AthCommonMsg< AlgTool >::msgLvl
bool msgLvl(const MSG::Level lvl) const
Definition: AthCommonMsg.h:30
Trk::TrackStateOnSurface::measurementOnTrack
const MeasurementBase * measurementOnTrack() const
returns MeasurementBase const overload
TProfile_LW.h
IPropagator.h
InDet::TRT_DriftCircleOnTrack::highLevel
bool highLevel() const
returns true if the high level threshold was passed
Definition: TRT_DriftCircleOnTrack.h:234
SiClusterOnTrack.h
SCT_ID::barrel_ec
int barrel_ec(const Identifier &id) const
Values of different levels (failure returns 0)
Definition: SCT_ID.h:728
InDetGlobalHitsMonTool::m_Trk_nPIXhits_B
TH1I_LW * m_Trk_nPIXhits_B
Definition: InDetGlobalHitsMonTool.h:125
InDetGlobalHitsMonTool::m_Trk_nSCThits_withPix
TH1I_LW * m_Trk_nSCThits_withPix
Number of SCT hits for tracks which have at least 1 Pixel hit.
Definition: InDetGlobalHitsMonTool.h:160
InDet::TRT_DriftCircleOnTrack
Definition: TRT_DriftCircleOnTrack.h:53
InDetGlobalHitsMonTool::m_ID_hitmap_x_y_eca
TH2F_LW * m_ID_hitmap_x_y_eca
Definition: InDetGlobalHitsMonTool.h:103
InDetGlobalHitsMonTool::m_Trk_nSCThits_pt
TH2I_LW * m_Trk_nSCThits_pt
Definition: InDetGlobalHitsMonTool.h:156
InDetGlobalHitsMonTool.h
InDetGlobalHitsMonTool::m_Trk_nPIXhits_phi
TProfile_LW * m_Trk_nPIXhits_phi
Definition: InDetGlobalHitsMonTool.h:129
InDetGlobalHitsMonTool::m_trt_barrel
int m_trt_barrel
Definition: InDetGlobalHitsMonTool.h:212
Track.h
InDetGlobalHitsMonTool::m_pix_ecc
int m_pix_ecc
Definition: InDetGlobalHitsMonTool.h:206
LWHist::GetXaxis
LWHistAxis * GetXaxis()
Definition: LWHist.cxx:309
InDetGlobalHitsMonTool::m_Trk_nPIXhits_1trk
TH1I_LW * m_Trk_nPIXhits_1trk
Number of PIX hits per track - only one track per event.
Definition: InDetGlobalHitsMonTool.h:137
InDetGlobalHitsMonTool::m_Trk_nTRTHLhits
TH1I_LW * m_Trk_nTRTHLhits
Number of high level TRT hits per track.
Definition: InDetGlobalHitsMonTool.h:180
InDetGlobalHitsMonTool::m_Trk_nPIXhits_EA
TH1I_LW * m_Trk_nPIXhits_EA
Definition: InDetGlobalHitsMonTool.h:123
InDetGlobalHitsMonTool::bookHistogramsRecurrent
virtual StatusCode bookHistogramsRecurrent()
An inheriting class should either override this function or bookHists().
Definition: InDetGlobalHitsMonTool.cxx:137
AtlasDetectorID.h
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
ManagedMonitorToolBase::MonGroup
A container of information describing a monitoring object.
Definition: ManagedMonitorToolBase.h:138
InDetGlobalHitsMonTool::m_Trk_nTRThits_eta
TProfile_LW * m_Trk_nTRThits_eta
Definition: InDetGlobalHitsMonTool.h:174
InDetGlobalMotherMonTool
This tool derives from InDetGlobalMonitorToolBase The Mother tool interfaces to all subtools.
Definition: InDetGlobalMotherMonTool.h:75
InDetGlobalHitsMonTool::m_trt_eca
int m_trt_eca
Definition: InDetGlobalHitsMonTool.h:213
InDet::SiClusterOnTrack::globalPosition
virtual const Amg::Vector3D & globalPosition() const override
returns global position (gathered through Surface constraint)
Definition: SiClusterOnTrack.h:115
InDetGlobalMotherMonTool::m_evt
int m_evt
Definition: InDetGlobalMotherMonTool.h:576
ManagedMonitorToolBase::initialize
virtual StatusCode initialize()
Definition: ManagedMonitorToolBase.cxx:669
LWHist::LWHistAxis::SetTitle
void SetTitle(const char *)
Definition: LWHist.cxx:359
InDetGlobalHitsMonTool::m_PIXhits_fid
int m_PIXhits_fid
Definition: InDetGlobalHitsMonTool.h:201
TrackTruthCollection.h
TProfile_LW::create
static TProfile_LW * create(const char *name, const char *title, unsigned nbinsx, const double &xlow, const double &xup, const char *option=" ")
Definition: TProfile_LW.cxx:32
InDetGlobalHitsMonTool::m_Trk_nSCThits_1trk
TH1I_LW * m_Trk_nSCThits_1trk
Number of SCT hits per track - only one track per event.
Definition: InDetGlobalHitsMonTool.h:144
TH2I_LW::create
static TH2I_LW * create(const char *name, const char *title, unsigned nbinsx, const double &xmin, const double &xmax, unsigned nbinsy, const double &ymin, const double &ymax)
Definition: TH2I_LW.cxx:33
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
InDetGlobalHitsMonTool::m_Trk_nTRThits_PixSCT
TH1I_LW * m_Trk_nTRThits_PixSCT
Definition: InDetGlobalHitsMonTool.h:177
InDetGlobalHitsMonTool::m_Trk_nSCThits_TC
TH1I_LW * m_Trk_nSCThits_TC
Definition: InDetGlobalHitsMonTool.h:151
InDetGlobalHitsMonTool::m_Trk_nSCThits_PixTRT
TH1I_LW * m_Trk_nSCThits_PixTRT
Definition: InDetGlobalHitsMonTool.h:157
TH1I_LW.h
TH2I_LW.h
InDetGlobalHitsMonTool::fillHistograms
virtual StatusCode fillHistograms()
An inheriting class should either override this function or fillHists().
Definition: InDetGlobalHitsMonTool.cxx:252
TrackCollection.h
InDetGlobalHitsMonTool::initialize
virtual StatusCode initialize()
Definition: InDetGlobalHitsMonTool.cxx:126
test_pyathena.parent
parent
Definition: test_pyathena.py:15
InDetGlobalHitsMonTool::m_TRT_HL
int m_TRT_HL
Definition: InDetGlobalHitsMonTool.h:198
TProfile2D::Fill
int Fill(double, double, double)
Definition: rootspy.cxx:541
InDetGlobalHitsMonTool::m_PIXhits
int m_PIXhits
Definition: InDetGlobalHitsMonTool.h:200
InDetGlobalHitsMonTool::m_Trk_nTRThits_EA
TH1I_LW * m_Trk_nTRThits_EA
Definition: InDetGlobalHitsMonTool.h:169
InDetGlobalHitsMonTool::m_Trk_nPIXhits_eta_phi
TProfile2D * m_Trk_nPIXhits_eta_phi
Definition: InDetGlobalHitsMonTool.h:130
InDetGlobalHitsMonTool::m_Trk_nTRThits_B
TH1I_LW * m_Trk_nTRThits_B
Definition: InDetGlobalHitsMonTool.h:171
run
Definition: run.py:1
TrackSummary.h
TRT_DriftCircleOnTrack.h
InDetGlobalHitsMonTool::m_SCThits
int m_SCThits
Definition: InDetGlobalHitsMonTool.h:199
TRT_ID::barrel_ec
int barrel_ec(const Identifier &id) const
Values of different levels (failure returns 0)
Definition: TRT_ID.h:866
InDetGlobalHitsMonTool::m_ID_hitmap_x_y_ecc
TH2F_LW * m_ID_hitmap_x_y_ecc
Definition: InDetGlobalHitsMonTool.h:104
DataVector< const Trk::TrackStateOnSurface >
InDet::SiCluster::detectorElement
virtual const InDetDD::SiDetectorElement * detectorElement() const override final
return the detector element corresponding to this PRD The pointer will be zero if the det el is not d...
InDetGlobalHitsMonTool::m_sct_barrel
int m_sct_barrel
Definition: InDetGlobalHitsMonTool.h:208
InDetGlobalHitsMonTool::m_ID_hitmap_z_r
TH2F_LW * m_ID_hitmap_z_r
Definition: InDetGlobalHitsMonTool.h:106
InDetGlobalHitsMonTool::m_Trk_nSCThits_B
TH1I_LW * m_Trk_nSCThits_B
Definition: InDetGlobalHitsMonTool.h:150
TProfile_LW::Fill
void Fill(const double &x, const double &y)
Definition: TProfile_LW.cxx:223
LWHist::LWHistAxis
Definition: LWHist.h:109
InDetGlobalHitsMonTool::m_ID_hitmap_z_x
TH2F_LW * m_ID_hitmap_z_x
Definition: InDetGlobalHitsMonTool.h:105
Trk::PrepRawData::identify
Identifier identify() const
return the identifier
InDetGlobalMotherMonTool::m_pixelID
const PixelID * m_pixelID
the Pixel ID helper
Definition: InDetGlobalMotherMonTool.h:604
TrackTruth.h
InDetGlobalHitsMonTool::procHistograms
virtual StatusCode procHistograms()
An inheriting class should either override this function or finalHists().
Definition: InDetGlobalHitsMonTool.cxx:397
Trk::TrackStateOnSurface
represents the track state (measurement, material, fit parameters and quality) at a surface.
Definition: TrackStateOnSurface.h:71
InDetGlobalHitsMonTool::m_Trk_nSCThits
TH1I_LW * m_Trk_nSCThits
Number of SCT hits per track.
Definition: InDetGlobalHitsMonTool.h:147
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
Trk::d0
@ d0
Definition: ParamDefs.h:69
TH2F_LW::create
static TH2F_LW * create(const char *name, const char *title, unsigned nbinsx, const double &xmin, const double &xmax, unsigned nbinsy, const double &ymin, const double &ymax)
Definition: TH2F_LW.cxx:33
LWHist::LWHistAxis::SetBinLabel
void SetBinLabel(unsigned bin, const char *label)
Definition: LWHist.cxx:411
SiCluster.h
Trk::RIO_OnTrack::prepRawData
virtual const Trk::PrepRawData * prepRawData() const =0
returns the PrepRawData (also known as RIO) object to which this RIO_OnTrack is associated.
LocalParameters.h
InDetGlobalHitsMonTool::processHit
StatusCode processHit(const Trk::Track *track, const Trk::TrackStateOnSurface *trackState)
Definition: InDetGlobalHitsMonTool.cxx:402
InDetGlobalHitsMonTool::m_Trk_nTRThits_phi
TProfile_LW * m_Trk_nTRThits_phi
Definition: InDetGlobalHitsMonTool.h:175
DataVector::end
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
InDetGlobalHitsMonTool::m_Trk_nPixhits_SCTTRTPixFid
TH1I_LW * m_Trk_nPixhits_SCTTRTPixFid
Definition: InDetGlobalHitsMonTool.h:131
TH2F_LW::Reset
virtual void Reset() override
Definition: TH2F_LW.cxx:250
InDetGlobalHitsMonTool::m_Trk_nTRThits_TA
TH1I_LW * m_Trk_nTRThits_TA
Definition: InDetGlobalHitsMonTool.h:170
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
DEBUG
#define DEBUG
Definition: page_access.h:11
AthCommonMsg< AlgTool >::msg
MsgStream & msg() const
Definition: AthCommonMsg.h:24
Trk::RIO_OnTrack::identify
virtual Identifier identify() const final
return the identifier -extends MeasurementBase
Definition: RIO_OnTrack.h:155
InDetGlobalHitsMonTool::m_Trk_nSCThits_nTRThits
TH2I_LW * m_Trk_nSCThits_nTRThits
Number of SCT hits vs TRT hits.
Definition: InDetGlobalHitsMonTool.h:119
InDetGlobalHitsMonTool::m_Trk_nSCThits_eta_phi
TProfile2D * m_Trk_nSCThits_eta_phi
Definition: InDetGlobalHitsMonTool.h:155
InDetGlobalHitsMonTool::m_ID_hitmap_x_y
TH2F_LW * m_ID_hitmap_x_y
Definition: InDetGlobalHitsMonTool.h:102
InDetGlobalHitsMonTool::m_Trk_nPIXhits_nSCThits
TH2I_LW * m_Trk_nPIXhits_nSCThits
Number of Pixel hits vs SCT hits.
Definition: InDetGlobalHitsMonTool.h:116
InDetDD::SiDetectorElement::isSCT
bool isSCT() const
merge.status
status
Definition: merge.py:17
xAOD::track
@ track
Definition: TrackingPrimitives.h:512
InDetGlobalHitsMonTool::m_Trk_nTRThits_withSi
TH1I_LW * m_Trk_nTRThits_withSi
Number of TRT hits for tracks which have at least 1 Pixel hit and 1 SCT hit.
Definition: InDetGlobalHitsMonTool.h:186
InDet::TRT_DriftCircleOnTrack::globalPosition
virtual const Amg::Vector3D & globalPosition() const override final
return the global position of this RIO_OnTrack
Definition: TRT_DriftCircleOnTrack.cxx:160
InDetGlobalHitsMonTool::m_sct_eca
int m_sct_eca
Definition: InDetGlobalHitsMonTool.h:209
InDetGlobalHitsMonTool::m_Trk_nSCThits_phi
TProfile_LW * m_Trk_nSCThits_phi
Definition: InDetGlobalHitsMonTool.h:154
FitQuality.h
InDetGlobalHitsMonTool::InDetGlobalHitsMonTool
InDetGlobalHitsMonTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
Definition: InDetGlobalHitsMonTool.cxx:55
InDetGlobalHitsMonTool::m_Trk_nSCThits_EA
TH1I_LW * m_Trk_nSCThits_EA
Definition: InDetGlobalHitsMonTool.h:148
InDetGlobalHitsMonTool::m_trt_ecc
int m_trt_ecc
Definition: InDetGlobalHitsMonTool.h:214
InDetGlobalMotherMonTool::m_combined_tracks
const TrackCollection * m_combined_tracks
Definition: InDetGlobalMotherMonTool.h:590
InDetGlobalHitsMonTool::m_Trk_nTRTLLhits_1trk
TH1I_LW * m_Trk_nTRTLLhits_1trk
Number of low level TRT hits per track - only one track per event.
Definition: InDetGlobalHitsMonTool.h:192
LWHist::GetYaxis
LWHistAxis * GetYaxis()
Definition: LWHist.cxx:319
InDetGlobalHitsMonTool::m_Trk_nPIXhits_eta
TProfile_LW * m_Trk_nPIXhits_eta
Definition: InDetGlobalHitsMonTool.h:128
InDet::SiCluster
Definition: InnerDetector/InDetRecEvent/InDetPrepRawData/InDetPrepRawData/SiCluster.h:40
Trk::phi0
@ phi0
Definition: ParamDefs.h:71
TrackStateOnSurface.h
InDetGlobalHitsMonTool::m_Trk_nSCThits_EC
TH1I_LW * m_Trk_nSCThits_EC
Definition: InDetGlobalHitsMonTool.h:152
DataVector::begin
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
InDetGlobalHitsMonTool::m_Trk_nSCThits_TA
TH1I_LW * m_Trk_nSCThits_TA
Definition: InDetGlobalHitsMonTool.h:149
InDet::SiClusterOnTrack
Definition: SiClusterOnTrack.h:39
InDetGlobalHitsMonTool::m_Trk_nPIXhits_fidusial
TH1I_LW * m_Trk_nPIXhits_fidusial
Number of PIX hits per track for d0<5 and z0<140 tracks.
Definition: InDetGlobalHitsMonTool.h:134
InDetGlobalHitsMonTool::m_ID_holes
TH2I_LW * m_ID_holes
Definition: InDetGlobalHitsMonTool.h:107
InDetGlobalHitsMonTool::m_pix_eca
int m_pix_eca
Definition: InDetGlobalHitsMonTool.h:205
ManagedMonitorToolBase::newRunFlag
bool newRunFlag() const
Definition: ManagedMonitorToolBase.h:854