ATLAS Offline Software
HistValProfile.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 
7 // //
8 // Header file for class HistValProfile //
9 // //
10 // Author: Thomas H. Kittelmann (Thomas.Kittelmann@cern.ch) //
11 // Initial version: July 2009 //
12 // //
14 
15 #ifndef HISTVALPROFILE_H
16 #define HISTVALPROFILE_H
17 
18 #include "HistValBase.h"
19 #include "TProfile.h"
20 #include "LWHists/TProfile_LW.h"
21 
22 class HistValProfile : public HistValBase {
23 public:
24 
25  HistValProfile( bool trigger_conversion_all,
26  const std::string& name, const std::string& title,
27  int nbins, const double& xmin, const double& xmax,
28  const double& profparmin=0, const double& profparmax=0);
29  template <class TFloat>
30  HistValProfile( bool trigger_conversion_all,
31  const std::string& name, const std::string& title,
32  int nbins, const TFloat* xbins );
33 
34  virtual ~HistValProfile();
35 
36  virtual unsigned getXAxis_NBins() const override;
37  virtual unsigned getYAxis_NBins() const override;
38 
39  virtual void setXAxis_BinLabel(unsigned bin, const char* label) override;
40  virtual void setYAxis_BinLabel(unsigned bin, const char* label) override;
41 
42  virtual void setXAxis_LabelSize(float) override;
43  virtual void setYAxis_LabelSize(float) override;
44  virtual void setXAxis_Title(const std::string&) override;
45  virtual void setYAxis_Title(const std::string&) override;
46  void setZAxis_Title(const std::string&);
47 
48  virtual void SetMarkerColor( short c) override;
49  virtual void SetMarkerStyle( short s ) override;
50  virtual void SetMarkerSize( float sz) override;
51 
52  virtual void setName(const std::string& name) override;
53  virtual void setTitle(const std::string& title) override;
54  virtual void setNameTitle(const std::string& name,
55  const std::string& title) override;
56 
57  virtual void setMinimum(const double& m = -1111) override;
58  virtual void setMaximum(const double& m = -1111) override;
59 
60  //Test various way to fill the histogram:
61  void fill(const double& x, const double& y);
62  void fill(const double& x, const double& y, const double& w);
63  void setBinEntries(unsigned, const double& entries);
64  void setBinContent(unsigned, const double& content);
65  void setBinError(unsigned, const double& error);
66  void setBinInfo(unsigned, const double& entries, const double& content,const double& error);
67 
68  virtual void compareBinContents() const override;
69  virtual void compareMetaData() override;
70  virtual void compareTH1s() override;
71  virtual void compareFastLoop() override;
72 
73  // cppcheck-suppress virtualCallInConstructor
74  virtual void triggerConversionToROOTHist() override
75  {
78  m_h1->SetName(convertedRootName(m_h1->GetName()).c_str());
79  m_h2->getROOTHist();
80  }
81  }
82 
83 private:
86 };
87 
88 #include "HistValProfile.icc"
89 
90 #endif
HistValProfile::HistValProfile
HistValProfile(bool trigger_conversion_all, const std::string &name, const std::string &title, int nbins, const double &xmin, const double &xmax, const double &profparmin=0, const double &profparmax=0)
HistValProfile::compareMetaData
virtual void compareMetaData() override
python.SystemOfUnits.s
int s
Definition: SystemOfUnits.py:131
fitman.sz
sz
Definition: fitman.py:527
python.SystemOfUnits.m
int m
Definition: SystemOfUnits.py:91
HistValProfile::HistValProfile
HistValProfile(bool trigger_conversion_all, const std::string &name, const std::string &title, int nbins, const TFloat *xbins)
HistValProfile.icc
HistValProfile::fill
void fill(const double &x, const double &y)
HistValProfile::setYAxis_BinLabel
virtual void setYAxis_BinLabel(unsigned bin, const char *label) override
PlotCalibFromCool.label
label
Definition: PlotCalibFromCool.py:78
HistValProfile::getXAxis_NBins
virtual unsigned getXAxis_NBins() const override
bin
Definition: BinsDiffFromStripMedian.h:43
HistValProfile::setZAxis_Title
void setZAxis_Title(const std::string &)
TProfile_LW.h
TProfile_LW::getROOTHist
TProfile * getROOTHist()
Definition: TProfile_LW.cxx:140
HistValProfile::compareFastLoop
virtual void compareFastLoop() override
HistValProfile::SetMarkerSize
virtual void SetMarkerSize(float sz) override
TProfile_LW
Definition: TProfile_LW.h:24
x
#define x
HistValProfile::compareBinContents
virtual void compareBinContents() const override
HistValProfile::m_h2
TProfile_LW * m_h2
Definition: HistValProfile.h:85
SCT_CalibAlgs::nbins
@ nbins
Definition: SCT_CalibNumbers.h:10
grepfile.content
string content
Definition: grepfile.py:56
HistValProfile::getYAxis_NBins
virtual unsigned getYAxis_NBins() const override
HistValProfile::setTitle
virtual void setTitle(const std::string &title) override
xmin
double xmin
Definition: listroot.cxx:60
HistValProfile::fill
void fill(const double &x, const double &y, const double &w)
HistValProfile::setBinContent
void setBinContent(unsigned, const double &content)
covarianceTool.title
title
Definition: covarianceTool.py:542
HistValProfile::setYAxis_Title
virtual void setYAxis_Title(const std::string &) override
HistValBase.h
HistValProfile::setBinEntries
void setBinEntries(unsigned, const double &entries)
HistValProfile::setNameTitle
virtual void setNameTitle(const std::string &name, const std::string &title) override
HistValBase::convertedRootName
std::string convertedRootName(const std::string &n)
Definition: HistValBase.h:89
HistValProfile::setXAxis_BinLabel
virtual void setXAxis_BinLabel(unsigned bin, const char *label) override
HistValProfile::~HistValProfile
virtual ~HistValProfile()
HistValProfile::setYAxis_LabelSize
virtual void setYAxis_LabelSize(float) override
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TProfile
Definition: rootspy.cxx:515
HistValProfile::setBinInfo
void setBinInfo(unsigned, const double &entries, const double &content, const double &error)
LArCellBinning.xbins
int xbins
Definition: LArCellBinning.py:163
HistValProfile::SetMarkerColor
virtual void SetMarkerColor(short c) override
HistValProfile::setName
virtual void setName(const std::string &name) override
HistValProfile::m_h1
TProfile * m_h1
Definition: HistValProfile.h:84
HistValProfile::SetMarkerStyle
virtual void SetMarkerStyle(short s) override
y
#define y
HistValProfile::setMaximum
virtual void setMaximum(const double &m=-1111) override
xmax
double xmax
Definition: listroot.cxx:61
entries
double entries
Definition: listroot.cxx:49
HistValBase::m_triggeredConversionToROOTHist
bool m_triggeredConversionToROOTHist
Definition: HistValBase.h:87
HistValProfile::setXAxis_Title
virtual void setXAxis_Title(const std::string &) override
HistValProfile::setBinError
void setBinError(unsigned, const double &error)
HistValProfile::compareTH1s
virtual void compareTH1s() override
python.IoTestsLib.w
def w
Definition: IoTestsLib.py:200
error
Definition: IImpactPoint3dEstimator.h:70
python.compressB64.c
def c
Definition: compressB64.py:93
HistValProfile::setMinimum
virtual void setMinimum(const double &m=-1111) override
HistValProfile
Definition: HistValProfile.h:22
HistValBase
Definition: HistValBase.h:26
HistValProfile::setXAxis_LabelSize
virtual void setXAxis_LabelSize(float) override
HistValProfile::triggerConversionToROOTHist
virtual void triggerConversionToROOTHist() override
Definition: HistValProfile.h:74