14#ifndef ROOT_Math_WrappedFunction
15#define ROOT_Math_WrappedFunction
44template<
typename Func = FreeFunctionPtr >
94template<
typename FuncObj,
typename MemFuncPtr >
142template<
typename Func = FreeMultiFunctionPtr >
163 unsigned int NDim()
const override {
return fDim; }
169 double DoEval (
const double *
x)
const override {
181template<
typename FuncObj,
typename MemFuncPtr >
204 unsigned int NDim()
const override {
return fDim; }
208 double DoEval (
const double *
x)
const override {
double DoEval(double x) const override
implementation of the evaluation function. Must be implemented by derived classes
WrappedFunction * Clone() const override
clone (required by the interface)
WrappedFunction(Func f)
construct from the pointer to the object and the member function
double DoEval(double x) const override
implementation of the evaluation function. Must be implemented by derived classes
WrappedMemFunction(FuncObj &obj, MemFuncPtr memFn)
construct from the pointer to the object and the member function
WrappedMemFunction * Clone() const override
clone (required by the interface)
WrappedMemMultiFunction * Clone() const override
clone (required by the interface)
WrappedMemMultiFunction(FuncObj &obj, MemFuncPtr memFn, unsigned int dim=1)
construct from the pointer to the object and the member function
double DoEval(const double *x) const override
Implementation of the evaluation function. Must be implemented by derived classes.
unsigned int NDim() const override
Retrieve the dimension of the function.
WrappedMultiFunction(Func f, unsigned int dim=1)
construct from the pointer to the object and the member function
WrappedMultiFunction * Clone() const override
clone (required by the interface)
double DoEval(const double *x) const override
Implementation of the evaluation function. Must be implemented by derived classes.
unsigned int NDim() const override
Retrieve the dimension of the function.
IMultiGenFunctionTempl< double > IMultiGenFunction
double(* FreeMultiFunctionPtr)(const double *)
double(* FreeFunctionPtr)(double)
IBaseFunctionOneDim IGenFunction