80 v.assign(
a,
a + (
size_t)(
size + 1));
104TH1DModel::TH1DModel(const ::TH1D &
h) : fName(
h.GetName()), fTitle(
h.GetTitle()), fNbinsX(
h.GetNbinsX())
108TH1DModel::TH1DModel(
const char *
name,
const char *title,
int nbinsx,
double xlow,
double xup)
109 : fName(
name), fTitle(title), fNbinsX(
nbinsx), fXLow(xlow), fXUp(xup)
112TH1DModel::TH1DModel(
const char *
name,
const char *title,
int nbinsx,
const float *xbins)
117TH1DModel::TH1DModel(
const char *
name,
const char *title,
int nbinsx,
const double *xbins)
122std::shared_ptr<::TH1D> TH1DModel::GetHistogram()
const
124 std::shared_ptr<::TH1D>
h;
130 h->SetDirectory(
nullptr);
133TH1DModel::~TH1DModel()
137TH2DModel::TH2DModel(const ::TH2D &
h)
138 : fName(
h.GetName()), fTitle(
h.GetTitle()), fNbinsX(
h.GetNbinsX()), fNbinsY(
h.GetNbinsY())
143TH2DModel::TH2DModel(
const char *
name,
const char *title,
int nbinsx,
double xlow,
double xup,
int nbinsy,
double ylow,
145 : fName(
name), fTitle(title), fNbinsX(
nbinsx), fXLow(xlow), fXUp(xup), fNbinsY(
nbinsy), fYLow(ylow), fYUp(yup)
148TH2DModel::TH2DModel(
const char *
name,
const char *title,
int nbinsx,
const double *xbins,
int nbinsy,
double ylow,
150 : fName(
name), fTitle(title), fNbinsX(
nbinsx), fNbinsY(
nbinsy), fYLow(ylow), fYUp(yup)
154TH2DModel::TH2DModel(
const char *
name,
const char *title,
int nbinsx,
double xlow,
double xup,
int nbinsy,
156 : fName(
name), fTitle(title), fNbinsX(
nbinsx), fXLow(xlow), fXUp(xup), fNbinsY(
nbinsy)
160TH2DModel::TH2DModel(
const char *
name,
const char *title,
int nbinsx,
const double *xbins,
int nbinsy,
167TH2DModel::TH2DModel(
const char *
name,
const char *title,
int nbinsx,
const float *xbins,
int nbinsy,
174std::shared_ptr<::TH2D> TH2DModel::GetHistogram()
const
178 std::shared_ptr<::TH2D>
h;
188 h->SetDirectory(
nullptr);
191TH2DModel::~TH2DModel()
195TH3DModel::TH3DModel(const ::TH3D &
h)
196 : fName(
h.GetName()), fTitle(
h.GetTitle()), fNbinsX(
h.GetNbinsX()), fNbinsY(
h.GetNbinsY()), fNbinsZ(
h.GetNbinsZ())
202TH3DModel::TH3DModel(
const char *
name,
const char *title,
int nbinsx,
double xlow,
double xup,
int nbinsy,
double ylow,
204 : fName(
name), fTitle(title), fNbinsX(
nbinsx), fXLow(xlow), fXUp(xup), fNbinsY(
nbinsy), fYLow(ylow), fYUp(yup),
208TH3DModel::TH3DModel(
const char *
name,
const char *title,
int nbinsx,
const double *xbins,
int nbinsy,
216TH3DModel::TH3DModel(
const char *
name,
const char *title,
int nbinsx,
const float *xbins,
int nbinsy,
224std::shared_ptr<::TH3D> TH3DModel::GetHistogram()
const
226 std::shared_ptr<::TH3D>
h;
228 h = std::make_shared<::TH3D>(
fName,
fTitle,
fNbinsX,
fXLow,
fXUp,
fNbinsY,
fYLow,
fYUp,
fNbinsZ,
fZLow,
fZUp);
233 h->SetDirectory(
nullptr);
236TH3DModel::~TH3DModel()
240THnDModel::THnDModel(const ::THnD &
h)
241 : fName(
h.GetName()), fTitle(
h.GetTitle()), fDim(
h.GetNdimensions()), fNbins(fDim), fXmin(fDim), fXmax(fDim),
250THnDModel::THnDModel(
const char *
name,
const char *title,
int dim,
const int *nbins,
const double *
xmin,
252 : fName(
name), fTitle(title), fDim(dim), fBinEdges(dim)
264THnDModel::THnDModel(
const char *
name,
const char *title,
int dim,
const std::vector<int> &nbins,
265 const std::vector<double> &
xmin,
const std::vector<double> &
xmax)
266 : fName(
name), fTitle(title), fDim(dim), fNbins(nbins), fXmin(
xmin), fXmax(
xmax), fBinEdges(dim)
270THnDModel::THnDModel(
const char *
name,
const char *title,
int dim,
const int *nbins,
271 const std::vector<std::vector<double>> &xbins)
272 : fName(
name), fTitle(title), fDim(dim), fXmin(dim, 0.), fXmax(dim, 64.), fBinEdges(xbins)
280THnDModel::THnDModel(
const char *
name,
const char *title,
int dim,
const std::vector<int> &nbins,
281 const std::vector<std::vector<double>> &xbins)
282 : fName(
name), fTitle(title), fDim(dim), fNbins(nbins), fXmin(dim, 0.), fXmax(dim, 64.), fBinEdges(xbins)
286std::shared_ptr<::THnD> THnDModel::GetHistogram()
const
295 std::shared_ptr<::THnD>
h;
303THnDModel::~THnDModel() {}
305THnSparseDModel::THnSparseDModel(const ::THnSparseD &
h)
306 : fName(
h.GetName()),
307 fTitle(
h.GetTitle()),
308 fDim(
h.GetNdimensions()),
313 fChunkSize(
h.GetChunkSize())
321THnSparseDModel::THnSparseDModel(
const char *
name,
const char *title,
int dim,
const int *nbins,
const double *
xmin,
323 : fName(
name), fTitle(title), fDim(dim), fBinEdges(dim), fChunkSize(
chunksize)
335THnSparseDModel::THnSparseDModel(
const char *
name,
const char *title,
int dim,
const std::vector<int> &nbins,
348THnSparseDModel::THnSparseDModel(
const char *
name,
const char *title,
int dim,
const int *nbins,
350 : fName(
name), fTitle(title), fDim(dim), fXmin(dim, 0.), fXmax(dim, 64.), fBinEdges(xbins), fChunkSize(
chunksize)
358THnSparseDModel::THnSparseDModel(
const char *
name,
const char *title,
int dim,
const std::vector<int> &nbins,
371std::shared_ptr<::THnSparseD> THnSparseDModel::GetHistogram()
const
380 std::shared_ptr<::THnSparseD>
h;
382 std::vector<TAxis> axes(
fDim);
392THnSparseDModel::~THnSparseDModel() {}
396TProfile1DModel::TProfile1DModel(const ::TProfile &
h)
397 : fName(
h.GetName()), fTitle(
h.GetTitle()), fNbinsX(
h.GetNbinsX()), fXLow(
h.GetXaxis()->GetXmin()),
398 fXUp(
h.GetXaxis()->GetXmax()), fYLow(
h.GetYmin()), fYUp(
h.GetYmax()), fOption(
h.GetErrorOption())
402TProfile1DModel::TProfile1DModel(
const char *
name,
const char *title,
int nbinsx,
double xlow,
double xup,
404 : fName(
name), fTitle(title), fNbinsX(
nbinsx), fXLow(xlow), fXUp(xup), fOption(
option)
408TProfile1DModel::TProfile1DModel(
const char *
name,
const char *title,
int nbinsx,
double xlow,
double xup,
double ylow,
409 double yup,
const char *option)
410 : fName(
name), fTitle(title), fNbinsX(
nbinsx), fXLow(xlow), fXUp(xup), fYLow(ylow), fYUp(yup), fOption(
option)
414TProfile1DModel::TProfile1DModel(
const char *
name,
const char *title,
int nbinsx,
const float *xbins,
420TProfile1DModel::TProfile1DModel(
const char *
name,
const char *title,
int nbinsx,
const double *xbins,
426TProfile1DModel::TProfile1DModel(
const char *
name,
const char *title,
int nbinsx,
const double *xbins,
double ylow,
427 double yup,
const char *option)
428 : fName(
name), fTitle(title), fNbinsX(
nbinsx), fYLow(ylow), fYUp(yup), fOption(
option)
432std::shared_ptr<::TProfile> TProfile1DModel::GetProfile()
const
434 std::shared_ptr<::TProfile>
prof;
441 prof->SetDirectory(
nullptr);
444TProfile1DModel::~TProfile1DModel()
448TProfile2DModel::TProfile2DModel(const ::TProfile2D &
h)
449 : fName(
h.GetName()), fTitle(
h.GetTitle()), fNbinsX(
h.GetNbinsX()), fXLow(
h.GetXaxis()->GetXmin()),
450 fXUp(
h.GetXaxis()->GetXmax()), fNbinsY(
h.GetNbinsY()), fYLow(
h.GetYaxis()->GetXmin()),
451 fYUp(
h.GetYaxis()->GetXmax()), fZLow(
h.GetZmin()), fZUp(
h.GetZmax()), fOption(
h.GetErrorOption())
456TProfile2DModel::TProfile2DModel(
const char *
name,
const char *title,
int nbinsx,
double xlow,
double xup,
int nbinsy,
457 double ylow,
double yup,
const char *option)
458 : fName(
name), fTitle(title), fNbinsX(
nbinsx), fXLow(xlow), fXUp(xup), fNbinsY(
nbinsy), fYLow(ylow), fYUp(yup),
463TProfile2DModel::TProfile2DModel(
const char *
name,
const char *title,
int nbinsx,
double xlow,
double xup,
int nbinsy,
464 double ylow,
double yup,
double zlow,
double zup,
const char *option)
465 : fName(
name), fTitle(title), fNbinsX(
nbinsx), fXLow(xlow), fXUp(xup), fNbinsY(
nbinsy), fYLow(ylow), fYUp(yup),
470TProfile2DModel::TProfile2DModel(
const char *
name,
const char *title,
int nbinsx,
const double *xbins,
int nbinsy,
471 double ylow,
double yup,
const char *option)
477TProfile2DModel::TProfile2DModel(
const char *
name,
const char *title,
int nbinsx,
double xlow,
double xup,
int nbinsy,
478 const double *
ybins,
const char *option)
484TProfile2DModel::TProfile2DModel(
const char *
name,
const char *title,
int nbinsx,
const double *xbins,
int nbinsy,
485 const double *
ybins,
const char *option)
492std::shared_ptr<::TProfile2D> TProfile2DModel::GetProfile()
const
501 std::shared_ptr<::TProfile2D>
prof;
503 prof = std::make_shared<::TProfile2D>(
fName,
fTitle,
fNbinsX,
fXLow,
fXUp,
fNbinsY,
fYLow,
fYUp,
fZLow,
fZUp,
519TProfile2DModel::~TProfile2DModel()
void FillVector< double >(std::vector< double > &v, int size, double *a)
void FillVector(std::vector< double > &v, int size, T *a)
void SetAxisProperties(const TAxis *axis, double &low, double &up, std::vector< double > &edges)
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void data
A pseudo container class which is a generator of indices.
Class to manage histogram axis.
const TArrayD * GetXbins() const
virtual Double_t GetBinLowEdge(Int_t bin) const
Return low edge of bin.
virtual Double_t GetBinUpEdge(Int_t bin) const
Return up edge of bin.
std::vector< double > fBinXEdges
std::vector< double > fBinYEdges
std::vector< double > fBinXEdges
std::vector< double > fBinZEdges
std::vector< double > fBinYEdges
std::vector< double > fBinXEdges
std::vector< double > fXmax
std::vector< std::vector< double > > fBinEdges
std::vector< double > fXmin
std::vector< int > fNbins
std::vector< std::vector< double > > fBinEdges
std::vector< double > fXmin
std::vector< int > fNbins
std::vector< double > fXmax
std::vector< double > fBinXEdges
std::vector< double > fBinXEdges
std::vector< double > fBinYEdges