Jpp  18.3.1
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
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::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 JSupervisor supervisor_type
 

Public Member Functions

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

Static Public Member Functions

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

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 332 of file JFunctional.hh.

Member Typedef Documentation

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

Definition at line 337 of file JFunctional.hh.

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

Definition at line 338 of file JFunctional.hh.

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

Definition at line 339 of file JFunctional.hh.

template<class JArgument_t = JNullType, class JResult_t = JNullType>
typedef JSupervisor JTOOLS::JFunctional< JArgument_t, JResult_t >::supervisor_type
inherited

Definition at line 89 of file JFunctional.hh.

Member Enumeration Documentation

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

Definition at line 335 of file JFunctional.hh.

Member Function Documentation

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 348 of file JFunctional.hh.

349  {
350  return this->evaluate(&x);
351  }
virtual result_type evaluate(const argument_type *pX) const =0
Recursive function value evaluation.
template<class JArgument_t = JNullType, class JResult_t = JNullType>
virtual result_type JTOOLS::JFunctional< JArgument_t, JResult_t >::evaluate ( const argument_type pX) const
pure virtualinherited
template<class JArgument_t = JNullType, class JResult_t = JNullType>
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 107 of file JFunctional.hh.

109  {
110  return function.evaluate(pX);
111  }
template<class JArgument_t = JNullType, class JResult_t = JNullType>
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 121 of file JFunctional.hh.

123  {
124  return value;
125  }
template<class JArgument_t = JNullType, class JResult_t = JNullType>
JSupervisor JTOOLS::JFunctional< JArgument_t, JResult_t >::getSupervisor ( ) const
inlineinherited

Get supervisor.

Returns
supervisor

Definition at line 281 of file JFunctional.hh.

282  {
283  return supervisor;
284  }
JSupervisor supervisor
Definition: JFunctional.hh:310
template<class JArgument_t = JNullType, class JResult_t = JNullType>
const JExceptionHandler& JTOOLS::JFunctional< JArgument_t, JResult_t >::getExceptionHandler ( ) const
inlineinherited

Get exception handler.

Returns
exception handler

Definition at line 292 of file JFunctional.hh.

293  {
294  return *supervisor;
295  }
JSupervisor supervisor
Definition: JFunctional.hh:310
template<class JArgument_t = JNullType, class JResult_t = JNullType>
void JTOOLS::JFunctional< JArgument_t, JResult_t >::setExceptionHandler ( const JSupervisor supervisor)
inlineinherited

Set the supervisor for handling of exceptions.

Parameters
supervisorsupervisor

Definition at line 303 of file JFunctional.hh.

304  {
305  this->supervisor = supervisor;
306  }
JSupervisor supervisor
Definition: JFunctional.hh:310

Member Data Documentation

template<class JArgument_t = JNullType, class JResult_t = JNullType>
JSupervisor JTOOLS::JFunctional< JArgument_t, JResult_t >::supervisor
protectedinherited

Definition at line 310 of file JFunctional.hh.


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