Jpp 20.0.0-27-g39925593c-D
the software that should make you happy
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
JTOOLS::JFunctional< JArgument_t, JResult_t > Class Template Referenceabstract

Template definition of function object interface. More...

#include <JFunctional.hh>

Inheritance diagram for JTOOLS::JFunctional< JArgument_t, JResult_t >:
JTOOLS::JFunction< JElement_t::abscissa_type, JOrdinate_t > JTOOLS::JFunction< JElement_t::abscissa_type, typename JElement_t::ordinate_type > JTOOLS::JFunction< JElement_t::abscissa_type, JResult_t > JTOOLS::JFunction< JElement_t::abscissa_type, JDistance< typename JElement_t::abscissa_type > > JTOOLS::JFunction< JElement_t::abscissa_type, double > JTOOLS::JFunction< JElement_t::abscissa_type, JResultDerivative< double > > JTOOLS::JFunction< JElement_t::abscissa_type, JResultPDF< double > > JTOOLS::JFunction< JElement2D< JKey_t, JValue_t >::abscissa_type, JResultHesse< JResultType< JValue_t >::result_type > > JTOOLS::JFunction< JKey_t, JResult_t > JTOOLS::JFunction< JElement2D< JAbscissa_t, JContents_t >::abscissa_type, JResultHesse< JResultType< JContents_t >::result_type > > JTOOLS::JFunction< JElement2D< JArgument_t, JResult_t >::abscissa_type, JResult_t > JTOOLS::JFunction< JElement2D< JKey_t, JValue_t >::abscissa_type, JResultType< JValue_t >::result_type > JTOOLS::JFunction< JElement2D< JKey_t, JValue_t >::abscissa_type, JResultDerivative< JResultType< JValue_t >::result_type > > JTOOLS::JFunction< JElement2D< JKey_t, JValue_t >::abscissa_type, JResult_t > JTOOLS::JFunction< JKey_t, JResultType< JValue_t >::result_type > JTOOLS::JFunction< JElement_t::abscissa_type, result_type > JTOOLS::JFunction< JKey_t, JResultDerivative< JResultType< JValue_t >::result_type > > JTOOLS::JFunction< JElement_t::abscissa_type, JTDC_t > JPHYSICS::JCDFTable< JFunction1D_t, JMaplist_t, JDistance_t > JTOOLS::JFunction< JArgument_t, JResult_t >

Classes

struct  JDefaultResult
 Exception handler for functional object using default result. More...
 
struct  JExceptionHandler
 Exception handler for functional object. More...
 

Public Types

typedef JArgument_t argument_type
 
typedef JResult_t result_type
 
typedef JFunctional< argument_type, result_typefunctional_type
 

Public Member Functions

virtual result_type evaluate (const argument_type *pX) const =0
 Recursive function value evaluation.
 
virtual const JExceptionHandlergetExceptionHandler () const =0
 Get exception handler.
 

Static Public Member Functions

static result_type getValue (const JFunctional &function, const argument_type *pX)
 Recursive function value evaluation.
 
static JClass< result_type >::argument_type getValue (typename JClass< result_type >::argument_type value, const argument_type *pX)
 Termination of recursive function value evaluation.
 

Protected Member Functions

 JFunctional ()
 Default constructor.
 

Detailed Description

template<class JArgument_t, class JResult_t>
class JTOOLS::JFunctional< JArgument_t, JResult_t >

Template definition of function object interface.

Template definition of recursive function value evaluation.

Definition at line 70 of file JFunctional.hh.

Member Typedef Documentation

◆ argument_type

template<class JArgument_t , class JResult_t >
typedef JArgument_t JTOOLS::JFunctional< JArgument_t, JResult_t >::argument_type

Definition at line 83 of file JFunctional.hh.

◆ result_type

template<class JArgument_t , class JResult_t >
typedef JResult_t JTOOLS::JFunctional< JArgument_t, JResult_t >::result_type

Definition at line 84 of file JFunctional.hh.

◆ functional_type

template<class JArgument_t , class JResult_t >
typedef JFunctional<argument_type, result_type> JTOOLS::JFunctional< JArgument_t, JResult_t >::functional_type

Definition at line 85 of file JFunctional.hh.

Constructor & Destructor Documentation

◆ JFunctional()

template<class JArgument_t , class JResult_t >
JTOOLS::JFunctional< JArgument_t, JResult_t >::JFunctional ( )
inlineprotected

Default constructor.

Definition at line 77 of file JFunctional.hh.

Member Function Documentation

◆ evaluate()

template<class JArgument_t , class JResult_t >
virtual result_type JTOOLS::JFunctional< JArgument_t, JResult_t >::evaluate ( const argument_type * pX) const
pure virtual

◆ getValue() [1/2]

template<class JArgument_t , class JResult_t >
static result_type JTOOLS::JFunctional< JArgument_t, JResult_t >::getValue ( const JFunctional< JArgument_t, JResult_t > & function,
const argument_type * pX )
inlinestatic

Recursive function value evaluation.

Parameters
functionfunction
pXpointer to abscissa values

Definition at line 103 of file JFunctional.hh.

105 {
106 return function.evaluate(pX);
107 }

◆ getValue() [2/2]

template<class JArgument_t , class JResult_t >
static JClass< result_type >::argument_type JTOOLS::JFunctional< JArgument_t, JResult_t >::getValue ( typename JClass< result_type >::argument_type value,
const argument_type * pX )
inlinestatic

Termination of recursive function value evaluation.

Parameters
valueresult
pXpointer to abscissa values

Definition at line 117 of file JFunctional.hh.

119 {
120 return value;
121 }

◆ getExceptionHandler()

template<class JArgument_t , class JResult_t >
virtual const JExceptionHandler & JTOOLS::JFunctional< JArgument_t, JResult_t >::getExceptionHandler ( ) const
pure virtual

Get exception handler.

Returns
exception handler

Implemented in JTOOLS::JFunction< JArgument_t, JResult_t >, JTOOLS::JFunction< JElement2D< JAbscissa_t, JContents_t >::abscissa_type, JResultHesse< JResultType< JContents_t >::result_type > >, JTOOLS::JFunction< JElement2D< JArgument_t, JResult_t >::abscissa_type, JResult_t >, JTOOLS::JFunction< JElement2D< JKey_t, JValue_t >::abscissa_type, JResult_t >, JTOOLS::JFunction< JElement2D< JKey_t, JValue_t >::abscissa_type, JResultDerivative< JResultType< JValue_t >::result_type > >, JTOOLS::JFunction< JElement2D< JKey_t, JValue_t >::abscissa_type, JResultHesse< JResultType< JValue_t >::result_type > >, JTOOLS::JFunction< JElement2D< JKey_t, JValue_t >::abscissa_type, JResultType< JValue_t >::result_type >, JTOOLS::JFunction< JElement_t::abscissa_type, double >, JTOOLS::JFunction< JElement_t::abscissa_type, JDistance< typename JElement_t::abscissa_type > >, JTOOLS::JFunction< JElement_t::abscissa_type, JOrdinate_t >, JTOOLS::JFunction< JElement_t::abscissa_type, JResult_t >, JTOOLS::JFunction< JElement_t::abscissa_type, JResultDerivative< double > >, JTOOLS::JFunction< JElement_t::abscissa_type, JResultPDF< double > >, JTOOLS::JFunction< JElement_t::abscissa_type, JTDC_t >, JTOOLS::JFunction< JElement_t::abscissa_type, result_type >, JTOOLS::JFunction< JElement_t::abscissa_type, typename JElement_t::ordinate_type >, JTOOLS::JFunction< JKey_t, JResult_t >, JTOOLS::JFunction< JKey_t, JResultDerivative< JResultType< JValue_t >::result_type > >, and JTOOLS::JFunction< JKey_t, JResultType< JValue_t >::result_type >.


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