21 TUnuranEmpDist::TUnuranEmpDist (
const TH1 * h1,
bool useBuffer) :
33 fDim = h1->GetDimension();
35 bool unbin = useBuffer && h1->GetBufferLength() > 0 ;
39 int nbins = h1->GetNbinsX();
41 for (
int i =0; i < nbins; ++i)
42 fData.push_back( h1->GetBinContent(i+1) );
44 fMin = h1->GetXaxis()->GetXmin();
45 fMax = h1->GetXaxis()->GetXmax();
50 int n = h1->GetBufferLength();
51 const double * bf = h1->GetBuffer();
56 for (
int i = 0; i < n; ++i) {
57 int index = (fDim+1)*i + fDim + 1;
58 fData.push_back( bf[index] );
63 TUnuranEmpDist::TUnuranEmpDist (
unsigned int n,
double * x) :
64 fData(std::vector<double>(x,x+n) ),
72 TUnuranEmpDist::TUnuranEmpDist (
unsigned int n,
double * x,
double * y) :
73 fData(std::vector<double>(2*n) ),
79 for (
unsigned int i = 0; i < n; ++i) {
85 TUnuranEmpDist::TUnuranEmpDist (
unsigned int n,
double * x,
double * y,
double *z) :
86 fData(std::vector<double>(3*n) ),
92 for (
unsigned int i = 0; i < n; ++i) {
101 TUnuranEmpDist::TUnuranEmpDist(
const TUnuranEmpDist & rhs) :
108 TUnuranEmpDist & TUnuranEmpDist::operator = (
const TUnuranEmpDist &rhs)
111 if (
this == &rhs)
return *
this;
116 fBinned = rhs.fBinned;