12#ifndef ROOT_TFoamSampler
13#define ROOT_TFoamSampler
51 using DistSampler::SetFunction;
66 bool Init(
const char * =
"")
override;
84 void SetSeed(
unsigned int seed)
override;
97 bool Sample(
double *
x)
override;
105 bool SampleBin(
double prob,
double & value,
double *error =
nullptr)
override;
Class describing the binned data sets : vectors of x coordinates, y values and optionally error on y ...
class describing the range in the coordinates it supports multiple range in a coordinate.
Class describing the un-binned data sets (just x coordinates values) of any dimensions.
DistSampler options class.
Interface class for generic sampling of a distribution, i.e.
const double * Sample()
Sample one event and return an array x with sample coordinates values.
Abstract class representing n-dimensional real positive integrand function.
void SetFunction(const ROOT::Math::IGenFunction &func) override
set the parent function distribution to use for random sampling (one dim case)
const ROOT::Math::IGenFunction * fFunc1D
bool Init(const char *="") override
initialize the generators with the default options
void SetSeed(unsigned int seed) override
Set the random seed for the TRandom instances used by the sampler classes Needs to be called before I...
TFoamSampler()
default constructor
bool SampleBin(double prob, double &value, double *error=nullptr) override
sample one bin given an estimated of the pdf in the bin (this can be function value at the center or ...
TFoamIntegrand * fFoamDist
TRandom * GetRandom() override
Get the random engine used by the sampler.
~TFoamSampler() override
virtual destructor
void SetRandom(TRandom *r) override
Set the random engine to be used Needs to be called before Init to have effect.
This is the base class for the ROOT Random number generators.
Namespace for the fitting classes.
IBaseFunctionOneDim IGenFunction