11 #ifndef ROOT_RDFHISTOMODELS
12 #define ROOT_RDFHISTOMODELS
33 std::vector<double> fBinXEdges;
35 TH1DModel() =
default;
36 TH1DModel(
const TH1DModel &) =
default;
38 TH1DModel(const ::TH1D &h);
39 TH1DModel(
const char *name,
const char *title,
int nbinsx,
double xlow,
double xup);
40 TH1DModel(
const char *name,
const char *title,
int nbinsx,
const float *xbins);
41 TH1DModel(
const char *name,
const char *title,
int nbinsx,
const double *xbins);
42 std::shared_ptr<::TH1D> GetHistogram()
const;
54 std::vector<double> fBinXEdges;
55 std::vector<double> fBinYEdges;
57 TH2DModel() =
default;
58 TH2DModel(
const TH2DModel &) =
default;
60 TH2DModel(const ::TH2D &h);
61 TH2DModel(
const char *name,
const char *title,
int nbinsx,
double xlow,
double xup,
int nbinsy,
double ylow,
63 TH2DModel(
const char *name,
const char *title,
int nbinsx,
const double *xbins,
int nbinsy,
double ylow,
double yup);
64 TH2DModel(
const char *name,
const char *title,
int nbinsx,
double xlow,
double xup,
int nbinsy,
const double *ybins);
65 TH2DModel(
const char *name,
const char *title,
int nbinsx,
const double *xbins,
int nbinsy,
const double *ybins);
66 TH2DModel(
const char *name,
const char *title,
int nbinsx,
const float *xbins,
int nbinsy,
const float *ybins);
67 std::shared_ptr<::TH2D> GetHistogram()
const;
82 std::vector<double> fBinXEdges;
83 std::vector<double> fBinYEdges;
84 std::vector<double> fBinZEdges;
86 TH3DModel() =
default;
87 TH3DModel(
const TH3DModel &) =
default;
89 TH3DModel(const ::TH3D &h);
90 TH3DModel(
const char *name,
const char *title,
int nbinsx,
double xlow,
double xup,
int nbinsy,
double ylow,
91 double yup,
int nbinsz,
double zlow,
double zup);
92 TH3DModel(
const char *name,
const char *title,
int nbinsx,
const float *xbins,
int nbinsy,
const float *ybins,
93 int nbinsz,
const float *zbins);
94 TH3DModel(
const char *name,
const char *title,
int nbinsx,
const double *xbins,
int nbinsy,
const double *ybins,
95 int nbinsz,
const double *zbins);
96 std::shared_ptr<::TH3D> GetHistogram()
const;
99 struct TProfile1DModel {
108 std::vector<double> fBinXEdges;
110 TProfile1DModel() =
default;
111 TProfile1DModel(
const TProfile1DModel &) =
default;
113 TProfile1DModel(const ::TProfile &h);
114 TProfile1DModel(
const char *name,
const char *title,
int nbinsx,
double xlow,
double xup,
const char *option =
"");
115 TProfile1DModel(
const char *name,
const char *title,
int nbinsx,
double xlow,
double xup,
double ylow,
double yup,
116 const char *option =
"");
117 TProfile1DModel(
const char *name,
const char *title,
int nbinsx,
const float *xbins,
const char *option =
"");
118 TProfile1DModel(
const char *name,
const char *title,
int nbinsx,
const double *xbins,
const char *option =
"");
119 TProfile1DModel(
const char *name,
const char *title,
int nbinsx,
const double *xbins,
double ylow,
double yup,
120 const char *option =
"");
121 std::shared_ptr<::TProfile> GetProfile()
const;
124 struct TProfile2DModel {
136 std::vector<double> fBinXEdges;
137 std::vector<double> fBinYEdges;
139 TProfile2DModel() =
default;
140 TProfile2DModel(
const TProfile2DModel &) =
default;
142 TProfile2DModel(const ::TProfile2D &h);
143 TProfile2DModel(
const char *name,
const char *title,
int nbinsx,
double xlow,
double xup,
int nbinsy,
double ylow,
144 double yup,
const char *option =
"");
145 TProfile2DModel(
const char *name,
const char *title,
int nbinsx,
double xlow,
double xup,
int nbinsy,
double ylow,
146 double yup,
double zlow,
double zup,
const char *option =
"");
147 TProfile2DModel(
const char *name,
const char *title,
int nbinsx,
const double *xbins,
int nbinsy,
double ylow,
148 double yup,
const char *option =
"");
149 TProfile2DModel(
const char *name,
const char *title,
int nbinsx,
double xlow,
double xup,
int nbinsy,
150 const double *ybins,
const char *option =
"");
151 TProfile2DModel(
const char *name,
const char *title,
int nbinsx,
const double *xbins,
int nbinsy,
152 const double *ybins,
const char *option =
"");
153 std::shared_ptr<::TProfile2D> GetProfile()
const;
160 #endif // ROOT_RDFHISTOMODELS