27 int anonymCounter = {0};
35 void RemoveNan(TH1* h, Double_t fill = 0, Double_t fill_e = 1);
42 void CopyAxisProp(
const TAxis* from, TAxis* to, TString opt =
"");
49 void CopyHistProp(
const TH1& from, TH1& to, TString opt =
"");
61 TH1D* GetDiagonalProjection1D(TH3* h, TString dir, Double_t start, Double_t start2 = 0.);
77 TH1D* GetProjection1D(
const TH2* histo, Double_t min, Double_t max, Option_t* opt);
93 TH1D* GetProjection1D(
const TH3* histo, Double_t min1, Double_t max1, Double_t min2, Double_t max2, Option_t* opt);
108 TH1D* SmearHistogram(TH1D* input_histogram, TH2D* smear_matrix, Option_t* opt =
"");
121 TH2D* GetProjection2D(
const TH3* histo, Double_t min, Double_t max, Option_t* opt);
132 void HistogramEdges(TH1* h, TString option =
"x+uv", Double_t value = 0);
139 void HistogramExtend(TH1* h, Char_t axis =
'x', Double_t factor = 1);
147 Bool_t AreSimilar(
const TH1* x,
const TH1* y, Bool_t classes = kTRUE);
156 void GetAxisPar(
const TH1& obj, Int_t& nbins, Double_t& min, Double_t& xmax, Option_t* opt =
"x");
163 std::vector<double> GetAxisCenters(
const TH1& obj, Option_t* opt =
"x");
172 TH1* MakeHisto1D(TString name, TString title, TVector3 Xaxis, Char_t type =
'D');
182 TH2* MakeHisto2D(TString name, TString title, TVector3 Xaxis, TVector3 Yaxis, Char_t type =
'D');
193 TH3* MakeHisto3D(TString name, TString title, TVector3 Xaxis, TVector3 Yaxis, TVector3 Zaxis, Char_t type =
'D');
197 void MakeBeautiful();
207 void Fold1D(Double_t val, TH1& h);
214 void Fold2D(Double_t val, TH2& h, TString opt =
"x");
221 void Fold3D(Double_t val, TH3& h, TString opt =
"x");
227 void SetColor(TH1& h, Color_t color);
235 void SetColorAndMarker(TH1& h, Color_t color, Marker_t m, Size_t s = 1);
244 void SetRainbow(TH2& h, Double_t x1, Double_t y1, Double_t x2, Double_t y2);
250 Int_t GetAntiColor(Int_t col);
256 Int_t GetListOfSubPads(TVirtualPad* pad);
265 TH1D* Crop1D(
const TH1& h, Double_t min, Double_t max, TString opt =
"vals");
276 TH2D* Crop2D(
const TH2& h, Double_t minX, Double_t maxX, Double_t minY, Double_t maxY, TString opt =
"vals");
289 TH3D* Crop3D(
const TH3& h,
296 TString opt =
"vals");
297 std::vector<TObject*> GetPadChildren(TString objName, TString className =
"", TVirtualPad* pad =
nullptr);
309 Bool_t CheckHistogramData(
const TH1& h1,
const TH1& h2, Double_t thres = 0, Option_t* opt =
"");