Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::Math::ParamFunctorTempl< T > Class Template Reference

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 274 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 279 of file ParamFunctor.h.

◆ FreeFunc

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

Definition at line 310 of file ParamFunctor.h.

◆ Impl

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

Definition at line 280 of file ParamFunctor.h.

Constructor & Destructor Documentation

◆ ParamFunctorTempl() [1/6]

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

Default constructor.

Definition at line 286 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 293 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 303 of file ParamFunctor.h.

◆ ParamFunctorTempl() [4/6]

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

Definition at line 311 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 317 of file ParamFunctor.h.

◆ ~ParamFunctorTempl()

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

Destructor (no operations)

Definition at line 325 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 332 of file ParamFunctor.h.

Member Function Documentation

◆ Empty()

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

Definition at line 371 of file ParamFunctor.h.

◆ GetImpl()

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

Definition at line 359 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 366 of file ParamFunctor.h.

◆ operator()() [2/2]

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

Definition at line 362 of file ParamFunctor.h.

◆ operator=()

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

Assignment operator.

Definition at line 343 of file ParamFunctor.h.

◆ SetFunction()

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

Definition at line 374 of file ParamFunctor.h.

Member Data Documentation

◆ fImpl

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

Definition at line 382 of file ParamFunctor.h.

  • math/mathcore/inc/Math/ParamFunctor.h