Logo ROOT  
Reference Guide
Loading...
Searching...
No Matches

template<class T>
class ROOT::Math::ParamFunctorTempl< T >

Param Functor class for Multidimensional functions.

It is used to wrap in a very simple and convenient way any other C++ callable object (implementation double operator( const double *, const double * ) ) or a member function with the correct signature, like Foo::EvalPar(const double *, const double *)

Definition at line 275 of file ParamFunctor.h.

Public Types

typedef T EvalType
typedef T(* FreeFunc) (T *, double *)
typedef ParamFunctionBase< T > Impl

Public Member Functions

 ParamFunctorTempl ()
 Default constructor.
template<typename Func>
 ParamFunctorTempl (const Func &f)
 construct from another generic Functor of multi-dimension
 ParamFunctorTempl (const ParamFunctorTempl &rhs)
 Copy constructor.
template<class PtrObj, typename MemFn>
 ParamFunctorTempl (const PtrObj &p, MemFn memFn)
 construct from a pointer to member function (multi-dim type)
 ParamFunctorTempl (const std::function< T(const T *f, const Double_t *param)> &func)
 ParamFunctorTempl (FreeFunc f)
virtual ~ParamFunctorTempl ()
 Destructor (no operations).
bool Empty () const
void * GetImpl ()
operator() (const T *x, const double *p)
operator() (T *x, double *p)
ParamFunctorTemploperator= (const ParamFunctorTempl &rhs)
 Assignment operator.
void SetFunction (Impl *f)

Private Attributes

ImplfImpl

#include <Math/ParamFunctor.h>

Member Typedef Documentation

◆ EvalType

template<class T>
typedef T ROOT::Math::ParamFunctorTempl< T >::EvalType

Definition at line 280 of file ParamFunctor.h.

◆ FreeFunc

template<class T>
typedef T(* ROOT::Math::ParamFunctorTempl< T >::FreeFunc) (T *, double *)

Definition at line 311 of file ParamFunctor.h.

◆ Impl

template<class T>
typedef ParamFunctionBase<T> ROOT::Math::ParamFunctorTempl< T >::Impl

Definition at line 281 of file ParamFunctor.h.

Constructor & Destructor Documentation

◆ ParamFunctorTempl() [1/6]

template<class T>
ROOT::Math::ParamFunctorTempl< T >::ParamFunctorTempl ( )
inline

Default constructor.

Definition at line 287 of file ParamFunctor.h.

◆ ParamFunctorTempl() [2/6]

template<class T>
template<class PtrObj, typename MemFn>
ROOT::Math::ParamFunctorTempl< T >::ParamFunctorTempl ( const PtrObj & p,
MemFn memFn )
inline

construct from a pointer to member function (multi-dim type)

Definition at line 294 of file ParamFunctor.h.

◆ ParamFunctorTempl() [3/6]

template<class T>
template<typename Func>
ROOT::Math::ParamFunctorTempl< T >::ParamFunctorTempl ( const Func & f)
inlineexplicit

construct from another generic Functor of multi-dimension

Definition at line 304 of file ParamFunctor.h.

◆ ParamFunctorTempl() [4/6]

template<class T>
ROOT::Math::ParamFunctorTempl< T >::ParamFunctorTempl ( FreeFunc f)
inline

Definition at line 312 of file ParamFunctor.h.

◆ ParamFunctorTempl() [5/6]

template<class T>
ROOT::Math::ParamFunctorTempl< T >::ParamFunctorTempl ( const std::function< T(const T *f, const Double_t *param)> & func)
inline

Definition at line 318 of file ParamFunctor.h.

◆ ~ParamFunctorTempl()

template<class T>
virtual ROOT::Math::ParamFunctorTempl< T >::~ParamFunctorTempl ( )
inlinevirtual

Destructor (no operations).

Definition at line 326 of file ParamFunctor.h.

◆ ParamFunctorTempl() [6/6]

template<class T>
ROOT::Math::ParamFunctorTempl< T >::ParamFunctorTempl ( const ParamFunctorTempl< T > & rhs)
inline

Copy constructor.

Definition at line 333 of file ParamFunctor.h.

Member Function Documentation

◆ Empty()

template<class T>
bool ROOT::Math::ParamFunctorTempl< T >::Empty ( ) const
inline

Definition at line 372 of file ParamFunctor.h.

◆ GetImpl()

template<class T>
void * ROOT::Math::ParamFunctorTempl< T >::GetImpl ( )
inline

Definition at line 360 of file ParamFunctor.h.

◆ operator()() [1/2]

template<class T>
T ROOT::Math::ParamFunctorTempl< T >::operator() ( const T * x,
const double * p )
inline

Definition at line 367 of file ParamFunctor.h.

◆ operator()() [2/2]

template<class T>
T ROOT::Math::ParamFunctorTempl< T >::operator() ( T * x,
double * p )
inline

Definition at line 363 of file ParamFunctor.h.

◆ operator=()

template<class T>
ParamFunctorTempl & ROOT::Math::ParamFunctorTempl< T >::operator= ( const ParamFunctorTempl< T > & rhs)
inline

Assignment operator.

Definition at line 344 of file ParamFunctor.h.

◆ SetFunction()

template<class T>
void ROOT::Math::ParamFunctorTempl< T >::SetFunction ( Impl * f)
inline

Definition at line 375 of file ParamFunctor.h.

Member Data Documentation

◆ fImpl

template<class T>
Impl* ROOT::Math::ParamFunctorTempl< T >::fImpl
private

Definition at line 383 of file ParamFunctor.h.


The documentation for this class was generated from the following file: