ATLAS Offline Software
TilePaterMonTool.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 // ********************************************************************
6 //
7 // NAME: TilePaterMonTool.cxx
8 // PACKAGE: TileMonitoring
9 //
10 // AUTHOR: Luca Fiorini (Luca.Fiorini@cern.ch)
11 //
12 // July 2006
13 // ********************************************************************
14 
15 #include "TilePaterMonTool.h"
16 
17 #include "CaloIdentifier/TileID.h"
21 
22 #include "TH1C.h"
23 #include "TH2C.h"
24 #include "TH1S.h"
25 #include "TH2S.h"
26 #include "TH1F.h"
27 #include "TH2F.h"
28 #include "TH1D.h"
29 #include "TH2D.h"
30 #include "TTree.h"
31 #include "TGraph.h"
32 #include "TGraphErrors.h"
33 #include "TGraphAsymmErrors.h"
34 #include "TMultiGraph.h"
35 #include "TProfile.h"
36 #include "TProfile2D.h"
37 #include "TString.h"
38 #include "TDirectory.h"
39 
40 #include <sstream>
41 #include <algorithm>
42 
43 /*---------------------------------------------------------*/
44 // Methods registering historgrams
45 // Ownership passed to Gaudi
46 template <typename T>
47 void TilePaterMonTool::regHist(const std::string& subDir, T* hist, Interval_t interval, MgmtAttr_t attribute, const std::string & trigChain, const std::string & mergeAlgo)
48 {
49 
50  std::string path(m_path);
51  if (!subDir.empty()) path += ("/" + subDir);
52 
53  if(ManagedMonitorToolBase::regHist(hist, path, interval, attribute, trigChain, mergeAlgo).isFailure()) {
54  ATH_MSG_WARNING( "Could not register histogram : " << path + "/" + hist->GetName() );
55  }
56 
57 }
58 
59 template <typename T>
60 void TilePaterMonTool::regGraph(const std::string& subDir, T* graph, Interval_t interval, MgmtAttr_t attribute, const std::string & trigChain, const std::string & mergeAlgo)
61 {
62 
63  std::string path(m_path);
64  if (!subDir.empty()) path += ("/" + subDir);
65 
66  if(ManagedMonitorToolBase::regGraph(graph, path, interval, attribute, trigChain, mergeAlgo).isFailure()) {
67  ATH_MSG_WARNING( "Could not register Graph : " << path + "/" + graph->GetName() );
68  }
69 }
70 
71 
72 /*---------------------------------------------------------*/
73 TilePaterMonTool::TilePaterMonTool(const std::string & type, const std::string & name, const IInterface* parent)
75  , m_tileID(0)
76  , m_tileHWID(0)
77  , m_tileTBID(0)
78  , m_cabling(0)
79 /*---------------------------------------------------------*/
80 {
81  declareInterface<IMonitorToolBase>(this);
82 
83  declareProperty("savePng",m_savePng=false);
84  declareProperty("savePs",m_savePs=false);
85  declareProperty("saveSvg",m_saveSvg=false);
86 
87  declareProperty("FragIDsToIgnoreDMUErrors", m_fragIDsToIgnoreDMUerrors, "List of Tile frag IDs for which ignore DMU errors");
88  declareProperty("FragIDsDemonstrators", m_fragIDsDemonstrators, "List of Tile frag IDs of demonstrators, which have different CIS circuits than the legacy ones");
89 
90  m_path = "/Tile";
91 
92 }
93 
94 /*---------------------------------------------------------*/
96 /*---------------------------------------------------------*/
97 {
98 }
99 
100 /*---------------------------------------------------------*/
102 /*---------------------------------------------------------*/
103 {
104 
108 
110  int runPeriod = m_cabling->runPeriod();
111 
112  if (runPeriod==3) {
113  std::vector<int> v = { 0x10d }; // LBA14 is demonstrator in RUN3
114 
115  if ( m_fragIDsToIgnoreDMUerrors.size() == 0) {
117  }
118 
119  if ( m_fragIDsDemonstrators.size() == 0) {
121  }
122  }
123 
124  if ( m_fragIDsToIgnoreDMUerrors.size() != 0) {
125 
127 
128  std::ostringstream os;
129  for (int fragID : m_fragIDsToIgnoreDMUerrors) {
130  os << " 0x" << std::hex << fragID << std::dec;
131  }
132 
133  ATH_MSG_INFO("Tile DMU errors will be ignored in drawers (frag IDs):" << os.str());
134  }
135 
136  if ( m_fragIDsDemonstrators.size() != 0) {
137 
138  std::sort(m_fragIDsDemonstrators.begin(),m_fragIDsDemonstrators.end());
139 
140  std::ostringstream os;
141  for (int fragID : m_fragIDsDemonstrators) {
142  os << " 0x" << std::hex << fragID << std::dec;
143  }
144 
145  ATH_MSG_INFO("Special settings in histograms for demonstrator modules (frag IDs):" << os.str());
146  }
147 
148  //ToolRootHistSvc();
149  //SetBookStatus(false);
151 
152 
153  return StatusCode::SUCCESS;
154 }
155 
156 /*---------------------------------------------------------*/
157 // Method booking 1D Histograms and storing them in THistSvc
158 // The method return the pointer to the new histogram
159 TH1D * TilePaterMonTool::book1D(const std::string & subdir, const std::string & nam, const std::string & tit,
160  int nx, double xmin, double xmax,
161  Interval_t interval, MgmtAttr_t attribute,
162  const std::string & trigChain, const std::string & mergeAlgo)
163 {
164 
165  TH1D* hist = new TH1D(TString(nam), TString(tit), nx, xmin, xmax);
166  regHist(subdir, hist, interval, attribute, trigChain, mergeAlgo);
167  return hist;
168 }
169 
170 TH1F * TilePaterMonTool::book1F(const std::string & subdir, const std::string & nam, const std::string & tit,
171  int nx, double xmin, double xmax,
172  Interval_t interval, MgmtAttr_t attribute,
173  const std::string & trigChain, const std::string & mergeAlgo)
174 {
175 
176  TH1F* hist = new TH1F(TString(nam), TString(tit), nx, xmin, xmax);
177  regHist(subdir, hist, interval, attribute, trigChain, mergeAlgo);
178  return hist;
179 }
180 
181 TH1C* TilePaterMonTool::book1C(const std::string & subdir, const std::string & nam, const std::string & tit,
182  int nx, double xmin, double xmax,
183  Interval_t interval, MgmtAttr_t attribute,
184  const std::string & trigChain, const std::string & mergeAlgo)
185 {
186 
187  TH1C* hist = new TH1C(TString(nam), TString(tit), nx, xmin, xmax);
188  regHist(subdir, hist, interval, attribute, trigChain, mergeAlgo);
189  return hist;
190 }
191 
192 TH1S * TilePaterMonTool::book1S(const std::string & subdir, const std::string & nam, const std::string & tit,
193  int nx, double xmin, double xmax,
194  Interval_t interval, MgmtAttr_t attribute,
195  const std::string & trigChain, const std::string & mergeAlgo)
196 {
197 
198  TH1S* hist = new TH1S(TString(nam), TString(tit), nx, xmin, xmax);
199  regHist(subdir, hist, interval, attribute, trigChain, mergeAlgo);
200  return hist;
201 }
202 
203 TH1S * TilePaterMonTool::book1Sx(const std::string & subdir, const std::string & nam, const std::string & tit,
204  int nx, const Double_t *xlgbins,
205  Interval_t interval, MgmtAttr_t attribute,
206  const std::string & trigChain, const std::string & mergeAlgo)
207 {
208 
209  TH1S* hist = new TH1S(TString(nam), TString(tit), nx, xlgbins);
210  regHist(subdir, hist, interval, attribute, trigChain, mergeAlgo);
211  return hist;
212 }
213 
214 TH1I* TilePaterMonTool::book1I(const std::string & subdir, const std::string & nam, const std::string & tit,
215  int nx, double xmin, double xmax,
216  Interval_t interval, MgmtAttr_t attribute,
217  const std::string & trigChain, const std::string & mergeAlgo)
218 {
219 
220  TH1I* hist = new TH1I(TString(nam), TString(tit), nx, xmin, xmax);
221  regHist(subdir, hist, interval, attribute, trigChain, mergeAlgo);
222  return hist;
223 }
224 
225 /*---------------------------------------------------------*/
226 // Method booking 2D Histograms and storing them in THistSvc
227 // The method return the pointer to the new histogram
228 TH2D* TilePaterMonTool::book2D(const std::string & subdir, const std::string & nam, const std::string & tit,
229  int nx, double xmin, double xmax,
230  int ny, double ymin, double ymax,
231  Interval_t interval, MgmtAttr_t attribute,
232  const std::string & trigChain, const std::string & mergeAlgo)
233 {
234  TH2D* hist = new TH2D(TString(nam), TString(tit), nx, xmin, xmax, ny, ymin, ymax);
235  regHist(subdir, hist, interval, attribute, trigChain, mergeAlgo);
236  return hist;
237 }
238 
239 TH2F* TilePaterMonTool::book2F(const std::string & subdir, const std::string & nam, const std::string & tit,
240  int nx, double xmin, double xmax,
241  int ny, double ymin, double ymax,
242  Interval_t interval, MgmtAttr_t attribute,
243  const std::string & trigChain, const std::string & mergeAlgo)
244 {
245  TH2F* hist = new TH2F(TString(nam), TString(tit), nx, xmin, xmax, ny, ymin, ymax);
246  regHist(subdir, hist, interval, attribute, trigChain, mergeAlgo);
247  return hist;
248 }
249 
250 TH2F* TilePaterMonTool::book2F(const std::string & subdir, const std::string & nam, const std::string & tit,
251  int nx, double xmin, double xmax,
252  int ny, const double* ybins,
253  Interval_t interval, MgmtAttr_t attribute,
254  const std::string & trigChain, const std::string & mergeAlgo)
255 {
256  TH2F* hist = new TH2F(TString(nam), TString(tit), nx, xmin, xmax, ny, ybins);
257  regHist(subdir, hist, interval, attribute, trigChain, mergeAlgo);
258  return hist;
259 }
260 
261 
262 TH2I* TilePaterMonTool::book2I(const std::string & subdir, const std::string & nam, const std::string & tit,
263  int nx, double xmin, double xmax,
264  int ny, double ymin, double ymax,
265  Interval_t interval, MgmtAttr_t attribute,
266  const std::string & trigChain, const std::string & mergeAlgo)
267 {
268  TH2I* hist = new TH2I(TString(nam), TString(tit), nx, xmin, xmax, ny, ymin, ymax);
269  regHist(subdir, hist, interval, attribute, trigChain, mergeAlgo);
270  return hist;
271 }
272 
273 
274 TH2S * TilePaterMonTool::book2S(const std::string & subdir, const std::string & nam, const std::string & tit,
275  int nx, double xmin, double xmax,
276  int ny, double ymin, double ymax,
277  Interval_t interval, MgmtAttr_t attribute,
278  const std::string & trigChain, const std::string & mergeAlgo)
279 {
280  TH2S *hist = new TH2S(TString(nam), TString(tit), nx, xmin, xmax, ny, ymin, ymax);
281  regHist(subdir, hist, interval, attribute, trigChain, mergeAlgo);
282  return hist;
283 }
284 
285 TH2C* TilePaterMonTool::book2C(const std::string & subdir, const std::string & nam, const std::string & tit,
286  int nx, double xmin, double xmax,
287  int ny, double ymin, double ymax,
288  Interval_t interval, MgmtAttr_t attribute,
289  const std::string & trigChain, const std::string & mergeAlgo)
290 {
291  TH2C* hist = new TH2C(TString(nam), TString(tit), nx, xmin, xmax, ny, ymin, ymax);
292  regHist(subdir, hist, interval, attribute, trigChain, mergeAlgo);
293  return hist;
294 }
295 
296 TProfile* TilePaterMonTool::bookProfile(const std::string & subdir, const std::string & nam, const std::string & tit,
297  int nx, double xmin, double xmax,
298  Interval_t interval, MgmtAttr_t attribute,
299  const std::string & trigChain, const std::string & mergeAlgo)
300 {
301  TProfile* hist = new TProfile(TString(nam), TString(tit), nx, xmin, xmax);
302  regHist(subdir, hist, interval, attribute, trigChain, mergeAlgo);
303  return hist;
304 }
305 
306 TProfile* TilePaterMonTool::bookProfile(const std::string & subdir, const std::string & nam, const std::string & tit,
307  int nx, double xmin, double xmax,
308  double ymin, double ymax,
309  Interval_t interval, MgmtAttr_t attribute,
310  const std::string & trigChain, const std::string & mergeAlgo)
311 {
312  TProfile* hist = new TProfile(TString(nam), TString(tit), nx, xmin, xmax, ymin, ymax);
313  regHist(subdir, hist, interval, attribute, trigChain, mergeAlgo);
314  return hist;
315 }
316 
317 TProfile* TilePaterMonTool::bookProfile(const std::string & subdir, const std::string & nam, const std::string & tit,
318  int nx, const float* xbins,
319  Interval_t interval, MgmtAttr_t attribute,
320  const std::string & trigChain, const std::string & mergeAlgo)
321 {
322  TProfile* hist = new TProfile(TString(nam), TString(tit), nx, xbins);
323  regHist(subdir, hist, interval, attribute, trigChain, mergeAlgo);
324  return hist;
325 }
326 
327 TProfile2D* TilePaterMonTool::bookProfile2D(const std::string & subdir, const std::string & nam, const std::string & tit,
328  int nx, double xmin, double xmax,
329  int ny, double ymin, double ymax,
330  double zmin, double zmax,
331  Interval_t interval, MgmtAttr_t attribute,
332  const std::string & trigChain, const std::string & mergeAlgo)
333 {
334 
335  TProfile2D* hist = new TProfile2D(TString(nam), TString(tit), nx, xmin, xmax, ny, ymin, ymax, zmin, zmax);
336  regHist(subdir, hist, interval, attribute, trigChain, mergeAlgo);
337  return hist;
338 }
339 
340 
341 /*-----------------------------------------------------------*/
342 // Method booking TTree and TGraph and storing them in THistSvc
343 // The method return the pointer to the new histogram
344 
345 /*
346 TTree* TilePaterMonTool::bookTree(const std::string & subdir, const std::string & nam, std::string tit) {
347  TTree* hist = new TTree(TString(nam), TString(tit));
348  if (m_THistSvc_streamname.size() > 0) {
349  if (m_THistSvc->regTree(m_stem + subdir + "/" + nam, hist).isFailure()) {
350  ATH_MSG_WARNING( "Could not register object : " << m_stem + subdir + "/" + nam );
351  }
352  }
353  return hist;
354 }
355 
356 */
357 
358 
359 //
360 // Terrible hack to register TGraph in THistSvc
361 //
362 
363 //#define private public
364 //#define GAUDISVC_THISTSVC_ICC
365 //#include "THistSvc/THistSvc.h"
366 //#undef GAUDISVC_THISTSVC_ICC
367 //#include "THistSvc/THistSvc.icc"
368 //#undef private
369 
370 class TGraph1: public TGraph {
371  public:
372  TGraph1(int N, float * X, float * Y)
373  : TGraph(N, X, Y), fDirectory(0) {
374  }
375 
376  TDirectory * GetDirectory() { return fDirectory; }
377 
378  void SetDirectory(TDirectory *dir) {
379  if (fDirectory == dir) return;
380  if (fDirectory) fDirectory->GetList()->Remove(this);
381  fDirectory = dir;
382  if (fDirectory) fDirectory->GetList()->Add(this);
383  }
384 
385  private:
386  TDirectory* fDirectory;
387 };
388 
389 TGraph* TilePaterMonTool::bookGraph(const std::string& subdir, const std::string& nam, const std::string& tit, int N, float * X, float * Y) {
390 
391  TGraph1 *hist = new TGraph1(N, X, Y);
392  hist->SetName(TString(nam));
393  hist->SetTitle(TString(tit));
394 
395  regGraph(subdir, hist);
396 
397  return (TGraph*) hist;
398 }
399 
400 class TGraphErrors1: public TGraphErrors {
401  public:
402  TGraphErrors1(int N, float * X, float * Y, float * X_errors, float * Y_errors)
403  : TGraphErrors(N, X, Y, X_errors, Y_errors), fDirectory(0) {
404  }
405 
406  TDirectory * GetDirectory() { return fDirectory; }
407 
408  void SetDirectory(TDirectory *dir) {
409  if (fDirectory == dir) return;
410  if (fDirectory) fDirectory->GetList()->Remove(this);
411  fDirectory = dir;
412  if (fDirectory) fDirectory->GetList()->Add(this);
413  }
414 
415  private:
416  TDirectory * fDirectory;
417 };
418 
419 TGraphErrors * TilePaterMonTool::bookGraphErrors(const std::string& subdir, const std::string& nam, const std::string& tit, int N, float * X, float * Y, float * X_errors, float * Y_errors) {
420 
421  TGraphErrors *hist = new TGraphErrors(N, X, Y, X_errors, Y_errors);
422  hist->SetName(TString(nam));
423  hist->SetTitle(TString(tit));
424 
425  regGraph(subdir, hist);
426  return (TGraphErrors *) hist;
427 }
428 
430  if (obj != 0) {
431  if (obj->IsA()->InheritsFrom("TH1")) {
432  if (deregHist((TH1*) obj).isFailure()) {
433  ATH_MSG_WARNING( "Could not dereg Histogram : " << obj->GetName() );
434  return StatusCode::FAILURE;
435  } else {
436  delete obj;
437  }
438  } else if (obj->IsA()->InheritsFrom("TGraph")) {
439  if (deregGraph((TGraph*) obj) != StatusCode::SUCCESS) {
440  ATH_MSG_WARNING( "Could not dereg Graph : " << obj->GetName() );
441  return StatusCode::FAILURE;
442  } else {
443  delete obj;
444  }
445  } else {
446  ATH_MSG_WARNING( "Asked to remove object " << obj->GetName() << "of unsupported type " << obj->IsA() );
447  return StatusCode::FAILURE;
448  }
449  } else {
450  ATH_MSG_WARNING( "Asked to remove NULL pointer" );
451  return StatusCode::FAILURE;
452  }
453  return StatusCode::SUCCESS;
454 }
455 
456 
457 class TGraphAsymmErrors1: public TGraphAsymmErrors {
458  public:
459  TGraphAsymmErrors1(int N, float * X, float * Y, float * X_errors1, float * X_errors2, float * Y_errors1, float * Y_errors2)
460  : TGraphAsymmErrors(N, X, Y, X_errors1, X_errors2, Y_errors1, Y_errors2), fDirectory(0) {
461  }
462 
463  TDirectory * GetDirectory() { return fDirectory; }
464 
465  void SetDirectory(TDirectory *dir) {
466  if (fDirectory == dir) return;
467  if (fDirectory) fDirectory->GetList()->Remove(this);
468  fDirectory = dir;
469  if (fDirectory) fDirectory->GetList()->Add(this);
470  }
471 
472  private:
473  TDirectory* fDirectory;
474 };
475 
476 TGraphAsymmErrors* TilePaterMonTool::bookGraphAsymmErrors(const std::string& subdir, const std::string& nam, const std::string& tit, int N,
477  float* X, float* Y, float* X_errors1, float* X_errors2,
478  float* Y_errors1, float* Y_errors2)
479 {
480 
481  TGraphAsymmErrors *hist = new TGraphAsymmErrors(N, X, Y, X_errors1, X_errors2, Y_errors1, Y_errors2);
482  hist->SetName(TString(nam));
483  hist->SetTitle(TString(tit));
484 
485  regGraph(subdir, hist);
486  return (TGraphAsymmErrors*) hist;
487 }
488 
489 class TMultiGraph1: public TMultiGraph {
490  public:
492  : TMultiGraph(), fDirectory(0) {
493  }
494 
495  TDirectory* GetDirectory() { return fDirectory; }
496 
497  void SetDirectory(TDirectory *dir) {
498  if (fDirectory == dir) return;
499  if (fDirectory) fDirectory->GetList()->Remove(this);
500  fDirectory = dir;
501  if (fDirectory) fDirectory->GetList()->Add(this);
502  }
503 
504  private:
505  TDirectory* fDirectory;
506 };
507 
508 TMultiGraph* TilePaterMonTool::bookMultiGraph(const std::string& subdir, const std::string& nam, const std::string& tit) {
509 
510  TMultiGraph1* hist = new TMultiGraph1();
511  hist->SetName(TString(nam));
512  hist->SetTitle(TString(tit));
513 
514  regGraph(subdir, (TGraph*) hist);
515  return (TMultiGraph*) hist;
516 }
517 
518 
519 
python.PyKernel.retrieve
def retrieve(aClass, aKey=None)
Definition: PyKernel.py:110
TGraph1::TGraph1
TGraph1(int N, float *X, float *Y)
Definition: TilePaterMonTool.cxx:372
TilePaterMonTool::book1I
TH1I * book1I(const std::string &dir, const std::string &nam, const std::string &tit, int nx, double xmin, double xmax, Interval_t interval=run, MgmtAttr_t attribute=ATTRIB_MANAGED, const std::string &trigChain="", const std::string &mergeAlgo="")
Definition: TilePaterMonTool.cxx:214
RunTileTBMonitoring.fragID
fragID
Definition: RunTileTBMonitoring.py:212
TilePaterMonTool::removeTObj
StatusCode removeTObj(TObject *obj)
Definition: TilePaterMonTool.cxx:429
TilePaterMonTool::bookGraph
TGraph * bookGraph(const std::string &dir, const std::string &nam, const std::string &tit, int N, float *X, float *Y)
Definition: TilePaterMonTool.cxx:389
TGraphAsymmErrors1::GetDirectory
TDirectory * GetDirectory()
Definition: TilePaterMonTool.cxx:463
ManagedMonitorToolBase::Interval_t
Interval_t
An enumeration describing how detailed a particular monitoring object is.
Definition: ManagedMonitorToolBase.h:113
TMultiGraph1::TMultiGraph1
TMultiGraph1()
Definition: TilePaterMonTool.cxx:491
ManagedMonitorToolBase::m_path
std::string m_path
Definition: ManagedMonitorToolBase.h:852
ymin
double ymin
Definition: listroot.cxx:63
athena.path
path
python interpreter configuration --------------------------------------—
Definition: athena.py:128
TilePaterMonTool::initialize
virtual StatusCode initialize() override
Definition: TilePaterMonTool.cxx:101
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
TilePaterMonTool::TilePaterMonTool
TilePaterMonTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: TilePaterMonTool.cxx:73
ManagedMonitorToolBase::MgmtAttr_t
MgmtAttr_t
An enumeration describing how the class handles the histogram.
Definition: ManagedMonitorToolBase.h:130
TileCablingService::getInstance
static const TileCablingService * getInstance()
get pointer to service instance
Definition: TileCablingService.cxx:24
TilePaterMonTool::bookGraphAsymmErrors
TGraphAsymmErrors * bookGraphAsymmErrors(const std::string &dir, const std::string &nam, const std::string &tit, int N, float *X, float *Y, float *X_errors1, float *X_errors2, float *Y_errors1, float *Y_errors2)
Definition: TilePaterMonTool.cxx:476
TGraphErrors1::fDirectory
TDirectory * fDirectory
Definition: TilePaterMonTool.cxx:416
ManagedMonitorToolBase
Provides functionality for users to implement and save histograms, ntuples, and summary data,...
Definition: ManagedMonitorToolBase.h:73
PixelAthClusterMonAlgCfg.zmin
zmin
Definition: PixelAthClusterMonAlgCfg.py:169
TilePaterMonTool::m_fragIDsDemonstrators
std::vector< int > m_fragIDsDemonstrators
Definition: TilePaterMonTool.h:211
AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
TilePaterMonTool::m_savePng
bool m_savePng
Definition: TilePaterMonTool.h:206
TilePaterMonTool::regHist
void regHist(const std::string &subDir, T *hist, Interval_t interval=run, MgmtAttr_t attribute=ATTRIB_MANAGED, const std::string &trigChain="", const std::string &mergeAlgo="")
Definition: TilePaterMonTool.cxx:47
plotmaker.hist
hist
Definition: plotmaker.py:148
TilePaterMonTool::m_savePs
bool m_savePs
Definition: TilePaterMonTool.h:207
PixelAthClusterMonAlgCfg.ybins
ybins
Definition: PixelAthClusterMonAlgCfg.py:169
ManagedMonitorToolBase::regGraph
virtual StatusCode regGraph(TGraph *g, const std::string &system, Interval_t interval, MgmtAttr_t histo_mgmt=ATTRIB_MANAGED, const std::string &chain="", const std::string &merge="")
Registers a TGraph to be included in the output stream using logical parameters that describe the gra...
Definition: ManagedMonitorToolBase.cxx:1491
JetTiledMap::N
@ N
Definition: TiledEtaPhiMap.h:44
python.TrigEgammaMonitorHelper.TH2F
def TH2F(name, title, nxbins, bins_par2, bins_par3, bins_par4, bins_par5=None, bins_par6=None, path='', **kwargs)
Definition: TrigEgammaMonitorHelper.py:45
TileID.h
ManagedMonitorToolBase::deregHist
virtual StatusCode deregHist(TH1 *h)
De-registers a TH1 from the THistSvc, but does NOT delete the object.
Definition: ManagedMonitorToolBase.cxx:1618
TGraphAsymmErrors1::TGraphAsymmErrors1
TGraphAsymmErrors1(int N, float *X, float *Y, float *X_errors1, float *X_errors2, float *Y_errors1, float *Y_errors2)
Definition: TilePaterMonTool.cxx:459
Monitored::X
@ X
Definition: HistogramFillerUtils.h:24
AthCommonDataStore< AthCommonMsg< AlgTool > >::detStore
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:95
TilePaterMonTool.h
TGraph1::GetDirectory
TDirectory * GetDirectory()
Definition: TilePaterMonTool.cxx:376
TilePaterMonTool::m_saveSvg
bool m_saveSvg
Definition: TilePaterMonTool.h:208
TilePaterMonTool::book1Sx
TH1S * book1Sx(const std::string &dir, const std::string &nam, const std::string &tit, int nx, const Double_t *xlgbins, Interval_t interval=run, MgmtAttr_t attribute=ATTRIB_MANAGED, const std::string &trigChain="", const std::string &mergeAlgo="")
Definition: TilePaterMonTool.cxx:203
TileDCSDataPlotter.tit
tit
Definition: TileDCSDataPlotter.py:890
TileTBID.h
TilePaterMonTool::book1F
TH1F * book1F(const std::string &dir, const std::string &nam, const std::string &tit, int nx, double xmin, double xmax, Interval_t interval=run, MgmtAttr_t attribute=ATTRIB_MANAGED, const std::string &trigChain="", const std::string &mergeAlgo="")
Definition: TilePaterMonTool.cxx:170
TileHWID.h
ManagedMonitorToolBase::initialize
virtual StatusCode initialize()
Definition: ManagedMonitorToolBase.cxx:617
ManagedMonitorToolBase::deregGraph
virtual StatusCode deregGraph(TGraph *g)
De-registers a TGraph from the THistSvc, but does NOT delete the object.
Definition: ManagedMonitorToolBase.cxx:1626
TileCablingService.h
TGraphErrors1::GetDirectory
TDirectory * GetDirectory()
Definition: TilePaterMonTool.cxx:406
xmin
double xmin
Definition: listroot.cxx:60
python.TrigEgammaMonitorHelper.TProfile
def TProfile(*args, **kwargs)
Definition: TrigEgammaMonitorHelper.py:81
TMultiGraph1::SetDirectory
void SetDirectory(TDirectory *dir)
Definition: TilePaterMonTool.cxx:497
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TGraph1
Definition: TilePaterMonTool.cxx:370
TilePaterMonTool::book2S
TH2S * book2S(const std::string &dir, const std::string &nam, const std::string &tit, int nx, double xmin, double xmax, int ny, double ymin, double ymax, Interval_t interval=run, MgmtAttr_t attribute=ATTRIB_MANAGED, const std::string &trigChain="", const std::string &mergeAlgo="")
Definition: TilePaterMonTool.cxx:274
TGraph1::fDirectory
TDirectory * fDirectory
Definition: TilePaterMonTool.cxx:386
TilePaterMonTool::book2I
TH2I * book2I(const std::string &dir, const std::string &nam, const std::string &tit, int nx, double xmin, double xmax, int ny, double ymin, double ymax, Interval_t interval=run, MgmtAttr_t attribute=ATTRIB_MANAGED, const std::string &trigChain="", const std::string &mergeAlgo="")
Definition: TilePaterMonTool.cxx:262
TGraph1::SetDirectory
void SetDirectory(TDirectory *dir)
Definition: TilePaterMonTool.cxx:378
getLatestRuns.interval
interval
Definition: getLatestRuns.py:24
PixelAthClusterMonAlgCfg.zmax
zmax
Definition: PixelAthClusterMonAlgCfg.py:169
test_pyathena.parent
parent
Definition: test_pyathena.py:15
TMultiGraph1::GetDirectory
TDirectory * GetDirectory()
Definition: TilePaterMonTool.cxx:495
TGraphErrors1
Definition: TilePaterMonTool.cxx:400
CHECK
#define CHECK(...)
Evaluate an expression and check for errors.
Definition: Control/AthenaKernel/AthenaKernel/errorcheck.h:422
TilePaterMonTool::~TilePaterMonTool
virtual ~TilePaterMonTool()
Definition: TilePaterMonTool.cxx:95
TGraphErrors1::TGraphErrors1
TGraphErrors1(int N, float *X, float *Y, float *X_errors, float *Y_errors)
Definition: TilePaterMonTool.cxx:402
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
beamspotman.dir
string dir
Definition: beamspotman.py:623
TilePaterMonTool::regGraph
void regGraph(const std::string &subDir, T *graph, Interval_t interval=run, MgmtAttr_t attribute=ATTRIB_MANAGED, const std::string &trigChain="", const std::string &mergeAlgo="")
Definition: TilePaterMonTool.cxx:60
TilePaterMonTool::book2F
TH2F * book2F(const std::string &dir, const std::string &nam, const std::string &tit, int nx, double xmin, double xmax, int ny, double ymin, double ymax, Interval_t interval=run, MgmtAttr_t attribute=ATTRIB_MANAGED, const std::string &trigChain="", const std::string &mergeAlgo="")
Definition: TilePaterMonTool.cxx:239
Monitored::Y
@ Y
Definition: HistogramFillerUtils.h:24
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
TMultiGraph1::fDirectory
TDirectory * fDirectory
Definition: TilePaterMonTool.cxx:505
TilePaterMonTool::bookProfile2D
TProfile2D * bookProfile2D(const std::string &dir, const std::string &nam, const std::string &tit, int nx, double xmin, double xmax, int ny, double ymin, double ymax, double zmin, double zmax, Interval_t interval=run, MgmtAttr_t attribute=ATTRIB_MANAGED, const std::string &trigChain="", const std::string &mergeAlgo="")
Definition: TilePaterMonTool.cxx:327
TilePaterMonTool::m_fragIDsToIgnoreDMUerrors
std::vector< int > m_fragIDsToIgnoreDMUerrors
Definition: TilePaterMonTool.h:210
TGraphAsymmErrors1
Definition: TilePaterMonTool.cxx:457
TilePaterMonTool::bookMultiGraph
TMultiGraph * bookMultiGraph(const std::string &dir, const std::string &nam, const std::string &tit)
Definition: TilePaterMonTool.cxx:508
TilePaterMonTool::book2D
TH2D * book2D(const std::string &nam, const std::string &tit, int nx, double xmin, double xmax, int ny, double ymin, double ymax)
Implicit version of book2D.
Definition: TilePaterMonTool.h:73
LArCellBinning.xbins
int xbins
Definition: LArCellBinning.py:163
python.PyAthena.v
v
Definition: PyAthena.py:154
TilePaterMonTool::m_cabling
const TileCablingService * m_cabling
Definition: TilePaterMonTool.h:204
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
TilePaterMonTool::book1D
TH1D * book1D(const std::string &nam, const std::string &tit, int nx, double xmin, double xmax)
Implicit version of book1D.
Definition: TilePaterMonTool.h:66
xmax
double xmax
Definition: listroot.cxx:61
TilePaterMonTool::bookGraphErrors
TGraphErrors * bookGraphErrors(const std::string &dir, const std::string &nam, const std::string &tit, int N, float *X, float *Y, float *X_errors, float *Y_errors)
Definition: TilePaterMonTool.cxx:419
TilePaterMonTool::m_tileTBID
const TileTBID * m_tileTBID
Definition: TilePaterMonTool.h:203
python.TrigEgammaMonitorHelper.TH1F
def TH1F(name, title, nxbins, bins_par2, bins_par3=None, path='', **kwargs)
Definition: TrigEgammaMonitorHelper.py:24
TGraphAsymmErrors1::fDirectory
TDirectory * fDirectory
Definition: TilePaterMonTool.cxx:473
python.LumiCalcRecover.subdir
subdir
Definition: LumiCalcRecover.py:25
TilePaterMonTool::bookProfile
TProfile * bookProfile(const std::string &dir, const std::string &nam, const std::string &tit, int nx, double xmin, double xmax, Interval_t interval=run, MgmtAttr_t attribute=ATTRIB_MANAGED, const std::string &trigChain="", const std::string &mergeAlgo="")
Definition: TilePaterMonTool.cxx:296
TilePaterMonTool::m_tileHWID
const TileHWID * m_tileHWID
Definition: TilePaterMonTool.h:202
TileCablingService::runPeriod
int runPeriod() const
Definition: TileCablingService.h:280
python.PyAthena.obj
obj
Definition: PyAthena.py:132
TMultiGraph1
Definition: TilePaterMonTool.cxx:489
TGraphAsymmErrors1::SetDirectory
void SetDirectory(TDirectory *dir)
Definition: TilePaterMonTool.cxx:465
TGraphErrors1::SetDirectory
void SetDirectory(TDirectory *dir)
Definition: TilePaterMonTool.cxx:408
TilePaterMonTool::m_tileID
const TileID * m_tileID
Definition: TilePaterMonTool.h:201
TilePaterMonTool::book1C
TH1C * book1C(const std::string &dir, const std::string &nam, const std::string &tit, int nx, double xmin, double xmax, Interval_t interval=run, MgmtAttr_t attribute=ATTRIB_MANAGED, const std::string &trigChain="", const std::string &mergeAlgo="")
Definition: TilePaterMonTool.cxx:181
ManagedMonitorToolBase::regHist
virtual StatusCode regHist(TH1 *h, const std::string &system, Interval_t interval, MgmtAttr_t histo_mgmt=ATTRIB_MANAGED, const std::string &chain="", const std::string &merge="")
Registers a TH1 (including TH2, TH3, and TProfile) to be included in the output stream using logical ...
Definition: ManagedMonitorToolBase.cxx:1346
TilePaterMonTool::book1S
TH1S * book1S(const std::string &dir, const std::string &nam, const std::string &tit, int nx, double xmin, double xmax, Interval_t interval=run, MgmtAttr_t attribute=ATTRIB_MANAGED, const std::string &trigChain="", const std::string &mergeAlgo="")
Definition: TilePaterMonTool.cxx:192
TSU::T
unsigned long long T
Definition: L1TopoDataTypes.h:35
TilePaterMonTool::book2C
TH2C * book2C(const std::string &dir, const std::string &nam, const std::string &tit, int nx, double xmin, double xmax, int ny, double ymin, double ymax, Interval_t interval=run, MgmtAttr_t attribute=ATTRIB_MANAGED, const std::string &trigChain="", const std::string &mergeAlgo="")
Definition: TilePaterMonTool.cxx:285
ymax
double ymax
Definition: listroot.cxx:64