![]() |
ATLAS Offline Software
|
#include <PlotMgr.h>
Inherits PlotBase, and AthMessaging.
Inherited by IDTPM::DuplicateRatePlots, IDTPM::EfficiencyPlots, IDTPM::FakeRatePlots, IDTPM::HitsOnTracksPlots, IDTPM::NtracksPlots, IDTPM::OfflineElectronPlots, IDTPM::ResolutionPlots, IDTPM::SummaryPlots, IDTPM::TrackAnalysisPlotsMgr, IDTPM::TrackParametersPlots, and IDTPM::VertexParametersPlots.
Public Member Functions | |
| PlotMgr (const std::string &dirName, const std::string &anaTag, PlotMgr *pParent=nullptr) | |
| Constructor taking parent node and directory name for plots pParent = nullptr by default to book plots in top directory. | |
| virtual | ~PlotMgr ()=default |
| Destructor. | |
| StatusCode | initialize () |
| initialize | |
| SinglePlotDefinition | retrieveDefinition (const std::string &identifier, const std::string &folderOverride="", const std::string &nameOverride="") const |
| Retrieve a single histogram definition, given the unique string identifier. | |
| template<class P> | |
| StatusCode | retrieveAndBook (P *&pHisto, const std::string &identifier, const std::string &folderOverride="", const std::string &nameOverride="") |
| StatusCode | book (TH1 *&pHisto, const SinglePlotDefinition &def) |
| Book a TH1 histogram. | |
| StatusCode | book (TH2 *&pHisto, const SinglePlotDefinition &def) |
| Book a TH2 histogram. | |
| StatusCode | book (TH3 *&pHisto, const SinglePlotDefinition &def) |
| Book a TH3 histogram. | |
| StatusCode | book (TProfile *&pHisto, const SinglePlotDefinition &def) |
| Book a TProfile histogram. | |
| StatusCode | book (TProfile2D *&pHisto, const SinglePlotDefinition &def) |
| Book a TProfile2D histogram. | |
| StatusCode | book (TEfficiency *&pHisto, const SinglePlotDefinition &def) |
| Book a (1D or 2D) TEfficiency histogram. | |
| StatusCode | fill (TH1 *pTh1, float value, float weight=1.) const |
| StatusCode | fill (TH2 *pTh2, float xval, float yval, float weight=1.) const |
| Fill a TH2 histogram. | |
| StatusCode | fill (TH3 *pTh3, float xval, float yval, float zval, float weight=1.) const |
| Fill a TH3 histogram. | |
| StatusCode | fill (TProfile *pTprofile, float xval, float yval, float weight=1.) const |
| Fill a TProfile histogram weight allows weighted-averaging in the profile. | |
| StatusCode | fill (TProfile2D *pTprofile, float xval, float yval, float zval, float weight=1.) const |
| Fill a TProfile2D histogram weight allows weighted-averaging in the profile. | |
| StatusCode | fill (TEfficiency *pTeff, float value, bool accepted, float weight=1.) const |
| Fill a (1D) TEfficiency histogram. | |
| StatusCode | fill (TEfficiency *pTeff2d, float xvalue, float yvalue, bool accepted, float weight=1.) const |
| Fill a (2D) TEfficiency histogram. | |
| void | finalize () |
| void | setDetailLevel (int iDetailLevel) |
| void | RegisterSubPlot (PlotBase *pPlotBase) |
| std::vector< HistData > | retrieveBookedHistograms () |
| Retrieve all booked histograms. | |
| std::vector< TreeData > | retrieveBookedTrees () |
| Retrieve all booked trees. | |
| std::vector< EfficiencyData > | retrieveBookedEfficiencies () |
| Retrieve all booked efficiency objects. | |
| TTree * | BookTree (const std::string &name, bool prependDir=true) |
| Book a TTree. | |
| const std::string & | getDirectory () |
| bool | msgLvl (const MSG::Level lvl) const |
| Test the output level. | |
| MsgStream & | msg () const |
| The standard message stream. | |
| MsgStream & | msg (const MSG::Level lvl) const |
| The standard message stream. | |
| void | setLevel (MSG::Level lvl) |
| Change the current logging level. | |
Methods to book monitoring histograms | |
Note: methods starting with capitals should be deprecated in favour of camel-cased methods | |
| TH1D * | Book1D (const std::string &name, const std::string &labels, int nBins, float start, float end, bool prependDir=true) |
| Book a TH1D histogram. | |
| TH1D * | Book1D (const std::string &name, TH1 *refHist, const std::string &labels, bool prependDir=true) |
| Book a TH1D histogram using refHist as reference for number of bins and axis range. | |
| TH2F * | Book2D (const std::string &name, const std::string &labels, int nBinsX, float startX, float endX, int nBinsY, float startY, float endY, bool prependDir=true) |
| Book a TH2F histogram. | |
| TH2F * | Book2D (const std::string &name, TH2 *refHist, const std::string &labels, bool prependDir=true) |
| Book a TH2D histogram using refHist as reference for number of bins and axis range. | |
| TH2F * | Book2D (const std::string &name, const std::string &labels, int nBinsX, Double_t *binsX, int nBinsY, Double_t startY, Double_t endY, bool prependDir=true) |
| Book a TH2F histogram with variable x axis binning. | |
| TH3F * | Book3D (const std::string &name, const std::string &labels, int nBinsX, float startX, float endX, int nBinsY, float startY, float endY, int nBinsZ, float startZ, float endZ, bool prependDir=true) |
| Book a TH3F histogram. | |
| TH3F * | Book3D (const std::string &name, TH3 *refHist, const std::string &labels, bool prependDir=true) |
| Book a TH3F histogram using refHist as reference for number of bins and axis range. | |
| TProfile * | BookTProfile (const std::string &name, const std::string &labels, int nBinsX, float startX, float endX, float startY=-1, float endY=-1, bool prependDir=true, bool useRMS=false) |
| Book a TProfile histogram. | |
| TProfile * | BookTProfile (const std::string &name, const std::string &labels, int nBinsX, float *binsX, bool prependDir=true) |
| Book a TProfile histogram with variable binning in x-axis. | |
| TProfile * | BookTProfileRangeY (const std::string &name, const std::string &labels, int nBinsX, double *binsX, double startY, double endY, bool prependDir=true) |
| Book a TProfile histogram with variable binning in x-axis and limits in y-values. | |
| TProfile2D * | BookTProfile2D (const std::string &name, const std::string &labels, const int nBinsX, const double xlo, const double xhi, const int nBinsY, const double ylo, const double yhi, bool prependDir=true, bool useRMS=false) |
| Book a TProfile 2D histogram with variable binning in x-axis and limits in y-values. | |
| TProfile2D * | BookTProfile2D (const std::string &name, const std::string &labels, const int nBinsX, double *binsX, const int nBinsY, double *binsY, bool prependDir=true, bool useRMS=false) |
| Book a TProfile 2D histogram with variable binning in x-axis and limits in y-values. | |
| TEfficiency * | BookTEfficiency (const std::string &name, const std::string &labels, const int nBinsX, const float xlo, const float xhi, const bool prependDir=true) |
| Book a (1-D) TEfficiency histogram. | |
| TEfficiency * | BookTEfficiency (const std::string &name, const std::string &labels, const int nBinsX, const float xlo, const float xhi, const int nBinsy, const float ylo, const float yhi, const bool prependDir=true) |
| Book a (2-D) TEfficiency histogram. | |
Protected Member Functions | |
| template<class P> | |
| StatusCode | setVariableBins (P *&pHisto, const std::vector< float > &binning, char axis) |
| SetVariableBins. | |
| template<class P> | |
| StatusCode | setVariableBinsEff (P *&pHisto, const std::vector< float > &binning, char axis) |
| SetVariableBins (for Efficiencies) | |
| template<class P> | |
| StatusCode | setLogLinearBins (P *&pHisto, unsigned int nBins, float absMin, float absMax, char axis) |
| Set Log-Linear axis. | |
| template<class P> | |
| StatusCode | setLogLinearBinsEff (P *&pHisto, unsigned int nBins, float absMin, float absMax, char axis) |
| Set Log-Linear axis (for Efficiencies) | |
| std::vector< float > | getLogLinearBins (unsigned int nBins, float absMin, float absMax, bool symmetriseAroundZero=false) |
| Get Log-Linear binning vector inherited from InDetPhysValMonitoring/src/logLinearBinning.h. | |
| template<class P> | |
| StatusCode | setBinLabels (P *&pHisto, const std::vector< std::string > &binLabels, char axis) |
| SetBinLabels (for TH* and TProfile* only) | |
Protected Attributes | |
| std::string | m_anaTag |
| std::vector< PlotBase * > | m_vSubNodes |
| std::vector< HistData > | m_vBookedHistograms |
| std::vector< TreeData > | m_vBookedTrees |
| std::vector< EfficiencyData > | m_vBookedEfficiencies |
| std::string | m_sDirectory |
| int | m_iDetailLevel |
Private Member Functions | |
| virtual void | initializePlots () |
| virtual void | finalizePlots () |
| void | initMessaging () const |
| Initialize our message level and MessageSvc. | |
Static Private Member Functions | |
| static std::string | constructPrefix (std::string dir, bool prependDir) |
Private Attributes | |
| std::string | m_nm |
| Message source name. | |
| boost::thread_specific_ptr< MsgStream > | m_msg_tls |
| MsgStream instance (a std::cout like with print-out levels) | |
| std::atomic< IMessageSvc * > | m_imsg { nullptr } |
| MessageSvc pointer. | |
| std::atomic< MSG::Level > | m_lvl { MSG::NIL } |
| Current logging level. | |
| std::atomic_flag m_initialized | ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT |
| Messaging initialized (initMessaging) | |
| IDTPM::PlotMgr::PlotMgr | ( | const std::string & | dirName, |
| const std::string & | anaTag, | ||
| PlotMgr * | pParent = nullptr ) |
Constructor taking parent node and directory name for plots pParent = nullptr by default to book plots in top directory.
local include(s)
Gaudi include(s) STD include(s)
Definition at line 25 of file PlotMgr.cxx.
|
virtualdefault |
Destructor.
| StatusCode IDTPM::PlotMgr::book | ( | TEfficiency *& | pHisto, |
| const SinglePlotDefinition & | def ) |
Book a (1D or 2D) TEfficiency histogram.
Definition at line 276 of file PlotMgr.cxx.
| StatusCode IDTPM::PlotMgr::book | ( | TH1 *& | pHisto, |
| const SinglePlotDefinition & | def ) |
Book a TH1 histogram.
Book a TH1 histogram
Definition at line 78 of file PlotMgr.cxx.
| StatusCode IDTPM::PlotMgr::book | ( | TH2 *& | pHisto, |
| const SinglePlotDefinition & | def ) |
Book a TH2 histogram.
Definition at line 107 of file PlotMgr.cxx.
| StatusCode IDTPM::PlotMgr::book | ( | TH3 *& | pHisto, |
| const SinglePlotDefinition & | def ) |
Book a TH3 histogram.
Definition at line 149 of file PlotMgr.cxx.
| StatusCode IDTPM::PlotMgr::book | ( | TProfile *& | pHisto, |
| const SinglePlotDefinition & | def ) |
Book a TProfile histogram.
Definition at line 204 of file PlotMgr.cxx.
| StatusCode IDTPM::PlotMgr::book | ( | TProfile2D *& | pHisto, |
| const SinglePlotDefinition & | def ) |
Book a TProfile2D histogram.
Definition at line 234 of file PlotMgr.cxx.
|
inherited |
Book a TH1D histogram.
Definition at line 94 of file PlotBase.cxx.
|
inherited |
Book a TH1D histogram using refHist as reference for number of bins and axis range.
Definition at line 108 of file PlotBase.cxx.
|
inherited |
Book a TH2F histogram with variable x axis binning.
Definition at line 144 of file PlotBase.cxx.
|
inherited |
Book a TH2F histogram.
Definition at line 123 of file PlotBase.cxx.
|
inherited |
Book a TH2D histogram using refHist as reference for number of bins and axis range.
Definition at line 138 of file PlotBase.cxx.
|
inherited |
Book a TH3F histogram.
Definition at line 157 of file PlotBase.cxx.
|
inherited |
Book a TH3F histogram using refHist as reference for number of bins and axis range.
Definition at line 171 of file PlotBase.cxx.
|
inherited |
Book a (1-D) TEfficiency histogram.
Definition at line 257 of file PlotBase.cxx.
|
inherited |
Book a (2-D) TEfficiency histogram.
Definition at line 270 of file PlotBase.cxx.
|
inherited |
Book a TProfile histogram with variable binning in x-axis.
Definition at line 204 of file PlotBase.cxx.
|
inherited |
Book a TProfile histogram.
Definition at line 186 of file PlotBase.cxx.
|
inherited |
Book a TProfile 2D histogram with variable binning in x-axis and limits in y-values.
Definition at line 231 of file PlotBase.cxx.
|
inherited |
Book a TProfile 2D histogram with variable binning in x-axis and limits in y-values.
Definition at line 245 of file PlotBase.cxx.
|
inherited |
Book a TProfile histogram with variable binning in x-axis and limits in y-values.
Definition at line 217 of file PlotBase.cxx.
|
inherited |
Book a TTree.
Definition at line 281 of file PlotBase.cxx.
|
staticprivateinherited |
Definition at line 293 of file PlotBase.cxx.
| StatusCode IDTPM::PlotMgr::fill | ( | TEfficiency * | pTeff, |
| float | value, | ||
| bool | accepted, | ||
| float | weight = 1. ) const |
Fill a (1D) TEfficiency histogram.
fill the plot To get proper error estimate when possible
Definition at line 420 of file PlotMgr.cxx.
| StatusCode IDTPM::PlotMgr::fill | ( | TEfficiency * | pTeff2d, |
| float | xvalue, | ||
| float | yvalue, | ||
| bool | accepted, | ||
| float | weight = 1. ) const |
Fill a (2D) TEfficiency histogram.
fill the plot To get proper error estimate when possible
Definition at line 442 of file PlotMgr.cxx.
| StatusCode IDTPM::PlotMgr::fill | ( | TH1 * | pTh1, |
| float | value, | ||
| float | weight = 1. ) const |
Fill a TH1 histogram
Fill a TH1 histogram
fill the plot
Definition at line 317 of file PlotMgr.cxx.
| StatusCode IDTPM::PlotMgr::fill | ( | TH2 * | pTh2, |
| float | xval, | ||
| float | yval, | ||
| float | weight = 1. ) const |
Fill a TH2 histogram.
fill the plot
Definition at line 337 of file PlotMgr.cxx.
| StatusCode IDTPM::PlotMgr::fill | ( | TH3 * | pTh3, |
| float | xval, | ||
| float | yval, | ||
| float | zval, | ||
| float | weight = 1. ) const |
Fill a TH3 histogram.
fill the plot
Definition at line 357 of file PlotMgr.cxx.
| StatusCode IDTPM::PlotMgr::fill | ( | TProfile * | pTprofile, |
| float | xval, | ||
| float | yval, | ||
| float | weight = 1. ) const |
Fill a TProfile histogram weight allows weighted-averaging in the profile.
Fill a TProfile histogram.
fill the plot
Definition at line 379 of file PlotMgr.cxx.
| StatusCode IDTPM::PlotMgr::fill | ( | TProfile2D * | pTprofile, |
| float | xval, | ||
| float | yval, | ||
| float | zval, | ||
| float | weight = 1. ) const |
Fill a TProfile2D histogram weight allows weighted-averaging in the profile.
Fill a TProfile2D histogram.
fill the plot
Definition at line 399 of file PlotMgr.cxx.
|
inherited |
Definition at line 47 of file PlotBase.cxx.
|
inlineprivatevirtualinherited |
Reimplemented in IDTPM::DuplicateRatePlots, IDTPM::EfficiencyPlots, IDTPM::FakeRatePlots, IDTPM::HitsOnTracksPlots, IDTPM::NtracksPlots, IDTPM::OfflineElectronPlots, IDTPM::ResolutionPlots, IDTPM::SummaryPlots, IDTPM::TrackParametersPlots, IDTPM::VertexParametersPlots, InDetBasicPlot, InDetPerfPlot_Duplicate, InDetPerfPlot_Efficiency, InDetPerfPlot_FakeRate, InDetPerfPlot_Resolution, InDetPerfPlot_TrackParameters, InDetPerfPlot_TRTExtension, InDetPerfPlot_VertexTruthMatching, JetTagDQA::BTaggingValidationPlots, TCCPlots, Trk::EfficiencyPlots, ZeeValidation::ReconElectronsPlots, ZeeValidation::TrueElectronsPlots, and ZeeValidation::TrueFwdElectronsPlots.
Definition at line 92 of file PlotBase.h.
|
inlineinherited |
Definition at line 88 of file PlotBase.h.
|
protected |
Get Log-Linear binning vector inherited from InDetPhysValMonitoring/src/logLinearBinning.h.
Get Log-Linear binning vector.
some checks to ensure the user is requesting something sensible
reserve the vector space
define our starting bin edge and step size in log space
then populate the bin array
FIXME: currently disabled
Definition at line 464 of file PlotMgr.cxx.
| StatusCode IDTPM::PlotMgr::initialize | ( | ) |
initialize
intialize PlotBase
Definition at line 37 of file PlotMgr.cxx.
|
inlineprivatevirtualinherited |
Reimplemented in DiTau::CorePlots, DiTau::ResolutionPlots, Egamma::ClusMomentumPlots, Egamma::ElectronFrwdPlots, Egamma::ElectronPlots, Egamma::IsolationPlots, Egamma::KinematicsPlots, Egamma::LRTElectronPlots, Egamma::PhotonAmbPlots, Egamma::PhotonCnvPlots, Egamma::PhotonConversionPlots, Egamma::PhotonPlots, Egamma::ShowerShapesPlots, Egamma::TrackPlots, ElectronValidationPlots, IDTPM::DuplicateRatePlots, IDTPM::EfficiencyPlots, IDTPM::FakeRatePlots, IDTPM::HitsOnTracksPlots, IDTPM::NtracksPlots, IDTPM::OfflineElectronPlots, IDTPM::ResolutionPlots, IDTPM::SummaryPlots, IDTPM::TrackParametersPlots, IDTPM::VertexParametersPlots, InDetBasicPlot, InDetPerfNtuple, InDetPerfPlot_Duplicate, InDetPerfPlot_Efficiency, InDetPerfPlot_FakeRate, InDetPerfPlot_HitEfficiency, InDetPerfPlot_HitResidual, InDetPerfPlot_Hits, InDetPerfPlot_nTracks, InDetPerfPlot_Resolution, InDetPerfPlot_TrackParameters, InDetPerfPlot_TrkInJet, InDetPerfPlot_TRTExtension, InDetPerfPlot_Vertex, InDetPerfPlot_VertexTruthMatching, InDetPerfPlot_VerticesVsMu, JetTagDQA::BTaggingValidationPlots, LRTElectronValidationPlots, Muon::BetaPlots, Muon::ChargeDepParamPlots, Muon::HitFracTypePlots, Muon::IsoCorrPlots, Muon::IsoPlots, Muon::MomentumPullPlots, Muon::MomentumTruthPullPlots, Muon::MuonParamElossPlots, Muon::MuonParamPlots, Muon::MuonTree, Muon::RecoInfoPlots, Muon::SlowMuonParamPlots, PFO::ClusterMomentPlots, PFO::ClusterPlots, PFO::FlowElement_LinkerPlots, PFO::LeptonFELinkerPlots, PFO::PFOAlgPropertyPlots, PFO::PFOAttributePlots, PFO::PFOCalibHitClusterMomentPlots, PFO::PFOClusterMomentPlots, PFO::PFOPlots, PFO::PFOPVMatchedPlots, PhotonValidationPlots, PhysVal::BTagPlots, PhysVal::EventInfoPlots, PhysVal::KinematicsPlots, PhysVal::METPlots, PhysVal::TrkAndVtxPlots, RecoLumiPlots, RecoMuonIDTrackPlots, RecoMuonPlots, RecoMuonSegmentPlots, RecoMuonTrackPlots, RecoPhysPlots, RecoVertexPlots, Tau::CorePlots, Tau::DecayModeMigration, Tau::EfficiencyPlots, Tau::EVetoPlots, Tau::GeneralTauPlots, Tau::ResolutionPlots, Tau::TauIDVariablesPlots, Tau::TauKinematicPlots, Tau::TauParticleFlowPlots, TCCPlots, Trk::DefParamPullPlots, Trk::EfficiencyPlots, Trk::ExtrLayerPlots, Trk::ExtrRegionPlots, Trk::HitResidualPlots, Trk::HitTypePlots, Trk::IDHitPlots, Trk::ImpactPlots, Trk::ParamPlots, Trk::RecoInfoPlots, Trk::ResolutionPlots, Trk::TruthInfoPlots, ZeeValidation::FWDZeePlots, ZeeValidation::ReconElectronsPlots, ZeeValidation::TrueElectronsPlots, ZeeValidation::TrueFwdElectronsPlots, and ZeeValidation::ZeePlots.
Definition at line 91 of file PlotBase.h.
|
privateinherited |
Initialize our message level and MessageSvc.
This method should only be called once.
Definition at line 39 of file AthMessaging.cxx.
|
inlineinherited |
The standard message stream.
Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.
Definition at line 163 of file AthMessaging.h.
|
inlineinherited |
The standard message stream.
Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.
Definition at line 178 of file AthMessaging.h.
|
inlineinherited |
Test the output level.
| lvl | The message level to test against |
| true | Messages at level "lvl" will be printed |
Definition at line 151 of file AthMessaging.h.
|
inlineinherited |
Definition at line 41 of file PlotBase.h.
|
inline |
Helper method to book plots using an identifier string
| pHisto | Pointer to the histogram to be booked (assumed to be initialized to nullptr) |
| histoIdentifier | string identifier of the plot (looked up from PlotsDefinitionSvc) |
| nameOverride | Allows to override the histo name |
| folderOverride | Allows to override the folder of the histo |
Definition at line 64 of file PlotMgr.h.
|
inherited |
Retrieve all booked efficiency objects.
Definition at line 83 of file PlotBase.cxx.
|
inherited |
Retrieve all booked histograms.
Definition at line 63 of file PlotBase.cxx.
|
inherited |
Retrieve all booked trees.
Definition at line 73 of file PlotBase.cxx.
| IDTPM::SinglePlotDefinition IDTPM::PlotMgr::retrieveDefinition | ( | const std::string & | identifier, |
| const std::string & | folderOverride = "", | ||
| const std::string & | nameOverride = "" ) const |
Retrieve a single histogram definition, given the unique string identifier.
Loading PlotsDefinitionSvc
retrieve a copy of the plot definition
Check if definition is empty or non-valid
Override directory?
Override name?
Definition at line 48 of file PlotMgr.cxx.
|
inlineprotected |
SetBinLabels (for TH* and TProfile* only)
Definition at line 196 of file PlotMgr.h.
|
inherited |
Definition at line 55 of file PlotBase.cxx.
|
inherited |
Change the current logging level.
Use this rather than msg().setLevel() for proper operation with MT.
Definition at line 28 of file AthMessaging.cxx.
|
inlineprotected |
Set Log-Linear axis.
Definition at line 170 of file PlotMgr.h.
|
inlineprotected |
Set Log-Linear axis (for Efficiencies)
Definition at line 180 of file PlotMgr.h.
|
inlineprotected |
|
inlineprotected |
SetVariableBins (for Efficiencies)
Definition at line 150 of file PlotMgr.h.
|
mutableprivateinherited |
Messaging initialized (initMessaging)
Definition at line 141 of file AthMessaging.h.
|
protectedinherited |
Definition at line 101 of file PlotBase.h.
|
mutableprivateinherited |
|
mutableprivateinherited |
|
mutableprivateinherited |
MsgStream instance (a std::cout like with print-out levels)
Definition at line 132 of file AthMessaging.h.
|
privateinherited |
Message source name.
Definition at line 129 of file AthMessaging.h.
|
protectedinherited |
Definition at line 100 of file PlotBase.h.
|
protectedinherited |
Definition at line 99 of file PlotBase.h.
|
protectedinherited |
Definition at line 97 of file PlotBase.h.
|
protectedinherited |
Definition at line 98 of file PlotBase.h.
|
protectedinherited |
Definition at line 96 of file PlotBase.h.