Jpp 19.3.0-rc.1
the software that should make you happy
Loading...
Searching...
No Matches
JTOOLS::JFunction1D< JArgument_t, JResult_t > Struct Template Referenceabstract

Template definition of function object interface in one dimension. More...

#include <JFunctional.hh>

Inheritance diagram for JTOOLS::JFunction1D< JArgument_t, JResult_t >:
JTOOLS::JFunction< JArgument_t, JResult_t > JTOOLS::JFunctional< JArgument_t, JResult_t > JTOOLS::JConstantFunction1D< JArgument_t, JResult_t > JTOOLS::JExternalFunction1D< JArgument_t, JResult_t > JTOOLS::JFunctionObject1D< JArgument_t, JResult_t >

Public Types

enum  { NUMBER_OF_DIMENSIONS = 1 }
 
typedef JFunctional< JArgument_t, JResult_t > functional_type
 
typedef functional_type::argument_type argument_type
 
typedef functional_type::result_type result_type
 
typedef functional_type::JExceptionHandler JExceptionHandler
 
typedef JSupervisor supervisor_type
 

Public Member Functions

result_type operator() (const argument_type x) const
 Function value evaluation.
 
const JSupervisorgetSupervisor () const
 Get supervisor.
 
const JExceptionHandlergetExceptionHandler () const override
 Get exception handler.
 
void setExceptionHandler (const JSupervisor &supervisor)
 Set the supervisor for handling of exceptions.
 
virtual result_type evaluate (const argument_type *pX) const =0
 Recursive function value evaluation.
 

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 Attributes

JSupervisor __supervisor
 

Detailed Description

template<class JArgument_t, class JResult_t>
struct JTOOLS::JFunction1D< JArgument_t, JResult_t >

Template definition of function object interface in one dimension.

This class provides for the standard function operator ().

Definition at line 327 of file JFunctional.hh.

Member Typedef Documentation

◆ functional_type

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

Definition at line 332 of file JFunctional.hh.

◆ argument_type

template<class JArgument_t , class JResult_t >
functional_type::argument_type JTOOLS::JFunction1D< JArgument_t, JResult_t >::argument_type

Definition at line 333 of file JFunctional.hh.

◆ result_type

template<class JArgument_t , class JResult_t >
functional_type::result_type JTOOLS::JFunction1D< JArgument_t, JResult_t >::result_type

Definition at line 334 of file JFunctional.hh.

◆ JExceptionHandler

template<class JArgument_t , class JResult_t >
functional_type::JExceptionHandler JTOOLS::JFunction< JArgument_t, JResult_t >::JExceptionHandler
inherited

Definition at line 235 of file JFunctional.hh.

◆ supervisor_type

template<class JArgument_t , class JResult_t >
JSupervisor JTOOLS::JFunction< JArgument_t, JResult_t >::supervisor_type
inherited

Definition at line 237 of file JFunctional.hh.

Member Enumeration Documentation

◆ anonymous enum

template<class JArgument_t , class JResult_t >
anonymous enum
Enumerator
NUMBER_OF_DIMENSIONS 

Definition at line 330 of file JFunctional.hh.

Member Function Documentation

◆ operator()()

template<class JArgument_t , class JResult_t >
result_type JTOOLS::JFunction1D< JArgument_t, JResult_t >::operator() ( const argument_type x) const
inline

Function value evaluation.

Parameters
xargument value
Returns
function value

Definition at line 343 of file JFunctional.hh.

344 {
345 return this->evaluate(&x);
346 }
virtual result_type evaluate(const argument_type *pX) const =0
Recursive function value evaluation.

◆ getSupervisor()

template<class JArgument_t , class JResult_t >
const JSupervisor & JTOOLS::JFunction< JArgument_t, JResult_t >::getSupervisor ( ) const
inlineinherited

Get supervisor.

Returns
supervisor

Definition at line 290 of file JFunctional.hh.

291 {
292 return __supervisor;
293 }
JSupervisor __supervisor

◆ getExceptionHandler()

template<class JArgument_t , class JResult_t >
const JExceptionHandler & JTOOLS::JFunction< JArgument_t, JResult_t >::getExceptionHandler ( ) const
inlineoverridevirtualinherited

Get exception handler.

Returns
exception handler

Implements JTOOLS::JFunctional< JArgument_t, JResult_t >.

Definition at line 301 of file JFunctional.hh.

302 {
303 return *__supervisor.handler;
304 }
std::shared_ptr< JExceptionHandler > handler

◆ setExceptionHandler()

template<class JArgument_t , class JResult_t >
void JTOOLS::JFunction< JArgument_t, JResult_t >::setExceptionHandler ( const JSupervisor & supervisor)
inlineinherited

Set the supervisor for handling of exceptions.

Parameters
supervisorsupervisor

Definition at line 312 of file JFunctional.hh.

313 {
314 this->__supervisor = supervisor;
315 }

◆ evaluate()

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

Recursive function value evaluation.

Parameters
pXpointer to abscissa values
Returns
function value

Implemented in JTOOLS::JConstantFunction1D< JArgument_t, JResult_t >, JTOOLS::JExternalFunction1D< JArgument_t, JResult_t >, JTOOLS::JFunctionObject1D< JArgument_t, JResult_t >, JTOOLS::JHermiteSplineFunction< JElement_t, JCollection_t, JResultDerivative< typename JResultType< typename JElement_t::ordinate_type >::result_type >, JDistance_t >, JTOOLS::JHermiteSplineFunction< JElement_t, JCollection_t, JResultPDF< typename JResultType< typename JElement_t::ordinate_type >::result_type >, JDistance_t >, JTOOLS::JHermiteSplineFunction< JElement_t, JCollection_t, typename JResultType< typename JElement_t::ordinate_type >::result_type, JDistance_t >, JTOOLS::JHermiteSplineMap< JKey_t, JValue_t, JMap_t, JResult_t, JDistance_t >, JTOOLS::JSplineFunction< JElement_t, JCollection_t, JResultDerivative< typename JResultType< typename JElement_t::ordinate_type >::result_type >, JDistance_t >, JTOOLS::JSplineFunction< JElement_t, JCollection_t, JResultPDF< typename JResultType< typename JElement_t::ordinate_type >::result_type >, JDistance_t >, JTOOLS::JSplineFunction< JElement_t, JCollection_t, typename JResultType< typename JElement_t::ordinate_type >::result_type, JDistance_t >, JTOOLS::JSplineMap< JKey_t, JValue_t, JMap_t, JResult_t, JDistance_t >, JTOOLS::JSplineMap< JKey_t, JValue_t, JGridMap, JResultDerivative< JResultType< JValue_t >::result_type >, JDistance< JKey_t > >, and JTOOLS::JSplineMap< JKey_t, JValue_t, JMap, JResultDerivative< JResultType< JValue_t >::result_type >, JDistance< JKey_t > >.

◆ 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 )
inlinestaticinherited

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 )
inlinestaticinherited

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 }

Member Data Documentation

◆ __supervisor

template<class JArgument_t , class JResult_t >
JSupervisor JTOOLS::JFunction< JArgument_t, JResult_t >::__supervisor
protectedinherited

Definition at line 318 of file JFunctional.hh.


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