39 if (ibin == 0 )
return 0;
48 if (ibin == 0 )
return 0;
123 template <
class TProfileType>
int Int_t
Signed integer 4 bytes (int).
unsigned int UInt_t
Unsigned integer 4 bytes (unsigned int).
bool Bool_t
Boolean (0=false, 1=true) (bool).
const char Option_t
Option string (const char).
Class to manage histogram axis.
virtual Double_t GetBinCenter(Int_t bin) const
Return center of bin.
virtual Int_t FindBin(Double_t x)
Find bin number corresponding to abscissa x.
virtual Int_t FindFixBin(Double_t x) const
Find bin number corresponding to abscissa x.
TClass instances represent classes, structs and namespaces in the ROOT type system.
Collection abstract base class.
Bool_t AutoP2BufferMerge()
static Bool_t AxesHaveLimits(const TH1 *h)
static Int_t CheckForDuplicateLabels(const TH1 *hist)
Check if histogram has duplicate labels Return an integer with bit set correponding on the axis that ...
Bool_t AutoP2BuildAxes(TH1 *)
Determine final boundaries and number of bins for histograms created in power-of-2 autobin mode.
TH1Merger(TH1 &h, TCollection &l, Option_t *opt="")
static Int_t FindBinNumber(Int_t ibin, const TAxis &inAxis, TAxis &outAxis)
Bool_t DifferentAxesMerge()
Merged histogram when axis can be different.
void MergeBin(const TProfile *hist, Int_t inbin, Int_t outbin)
static Int_t FindFixBinNumber(Int_t ibin, const TAxis &inAxis, const TAxis &outAxis)
TH1 * fH0
! histogram on which the list is merged
void CopyBuffer(TH1 *hsrc, TH1 *hdes)
Bool_t LabelMerge(bool newLimits=false)
Merge histograms with labels and if newLimits is set support the case that one of the axis can set ne...
void MergeBin(const TProfile3D *hist, Int_t inbin, Int_t outbin)
void MergeBin(const TProfile2D *hist, Int_t inbin, Int_t outbin)
EMergerType ExamineHistograms()
Examine the list of histograms to find out which type of Merge we need to do Pass the input list cont...
static Bool_t HasDuplicateLabels(const THashList *labels)
Find a duplicate labels in an axis label list.
void MergeBin(const TH1 *hist, Int_t inbin, Int_t outbin)
Bool_t operator()()
Function performing the actual merge.
void DefineNewAxes()
Function to define new histogram axis when merging It is call only in case of merging with different ...
static Bool_t IsBinEmpty(const TH1 *hist, Int_t bin, Int_t profileDim=0)
helper function for merging
TH1 * fHClone
! copy of fH0 - managed by this class
void MergeProfileBin(const TProfileType *p, Int_t ibin, Int_t outbin)
TH1 is the base class of all histogram classes in ROOT.
THashList implements a hybrid collection class consisting of a hash table and a list to store TObject...
Profile2D histograms are used to display the mean value of Z and its error for each cell in X,...
Profile3D histograms are used to display the mean value of T and its RMS for each cell in X,...
void ToUpper()
Change string to upper case.
Bool_t Contains(const char *pat, ECaseCompare cmp=kExact) const