8#ifndef BMNHISTMANAGER_H_
9#define BMNHISTMANAGER_H_
59 void Add(
const TString& name, TNamed*
object) {
60 std::pair<TString, TNamed*> newpair = std::make_pair(name,
object);
80 T* h =
new T(name.Data(), title.Data(), nofBins, minBin, maxBin);
106 T* h =
new T(name.Data(), title.Data(), nofBinsX, minBinX, maxBinX, nofBinsY, minBinY, maxBinY);
115 TH1*
H1(
const TString& name)
const {
116 if (fMap.count(name) == 0) {
117 std::cout <<
"Error: BmnHistManager::H1(name): name=" << name << std::endl;
119 assert(fMap.count(name) != 0);
120 return (TH1*) fMap.find(name)->second;
128 TH2*
H2(
const TString& name)
const {
129 if (fMap.count(name) == 0) {
130 std::cout <<
"Error: BmnHistManager::H2(name): name=" << name << std::endl;
132 assert(fMap.count(name) != 0);
133 return (TH2*) fMap.find(name)->second;
141 Bool_t
Exists(
const TString& name)
const {
142 return (fMap.count(name) == 0) ? false :
true;
186 void Scale(
const TString& histName, Double_t scale);
199 void Rebin(
const TString& histName, Int_t ngroup);
219 map<TString, TNamed*> fMap;
friend std::ostream & operator<<(std::ostream &strm, const BmnHistManager &histManager)
Operator << for convenient output to std::ostream.
virtual ~BmnHistManager()
Destructor.
void Add(const TString &name, TNamed *object)
Add new named object to manager.
void ResetHists()
Reset all histograms.
void ShrinkEmptyBinsH2(const TString &histName)
Shrink empty bins in H2.
BmnHistManager()
Constructor.
void Rebin(const TString &histName, Int_t ngroup)
Rebin histogram.
void Scale(const TString &histName, Double_t scale)
Scale histogram.
Bool_t Exists(const TString &name) const
Check existence of histogram in manager.
TH2 * H2(const TString &name) const
Return pointer to TH2 histogram.
void WriteToFile()
Write all histograms to current opened file.
void Create2(const TString &name, const TString &title, Int_t nofBinsX, Double_t minBinX, Double_t maxBinX, Int_t nofBinsY, Double_t minBinY, Double_t maxBinY)
Helper function for creation of 2-dimensional histograms and profiles. Template argument is a real ob...
void Clear()
Clear memory. Remove all histograms.
TString ToString() const
Return string representation of class.
void NormalizeToIntegral(const TString &histName)
Normalize histogram to integral.
void Create1(const TString &name, const TString &title, Int_t nofBins, Double_t minBin, Double_t maxBin)
Helper function for creation of 1-dimensional histograms and profiles. Template argument is a real ob...
TH1 * H1(const TString &name) const
Return pointer to TH1 histogram.
void ReadFromFile(TFile *file)
Read histograms from file.
void ShrinkEmptyBinsH1(const TString &histName)
Shrink empty bins in H1.