BALL::ParsedFunction< arg > Class Template Reference
[Function classes]

#include <BALL/MATHS/parsedFunction.h>

Inheritance diagram for BALL::ParsedFunction< arg >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

template<>
BALL_EXPORT double operator() (float argument) throw(Exception::ParseError)
template<>
BALL_EXPORT double operator() (double argument) throw(Exception::ParseError)
Constructors and Destructors

 ParsedFunction ()
 Default constructor.
 ParsedFunction (const String &expression)
 Detailed constructor.
 ParsedFunction (const ParsedFunction &func)
 Copy constructor.
 ~ParsedFunction ()
 Destructor.
Accessors

double operator() (arg p) throw (Exception::ParseError)
Parsing

void initTable ()

Public Attributes

StringHashMap< double * > constants_
StringHashMap< double(*)(double)> functions_

Protected Attributes

String expression_

Detailed Description

template<typename arg>
class BALL::ParsedFunction< arg >

ParsedFunction. This function type contains a double - valued function string like $var1=atan(.5); sin(cos(atan(asin(exp(X+var1)))))$. When the operator () is called, $X$ is replaced with the argument of the operator call and the function string is parsed and evaluated.

Definition at line 39 of file parsedFunction.h.


Member Function Documentation

template<>
BALL_EXPORT double BALL::ParsedFunction< double >::operator() ( double  argument  )  throw(Exception::ParseError) [inline]
template<>
BALL_EXPORT double BALL::ParsedFunction< float >::operator() ( float  argument  )  throw(Exception::ParseError) [inline]

Member Data Documentation

template<typename arg >
StringHashMap<double*> BALL::ParsedFunction< arg >::constants_

The table of constants

Definition at line 80 of file parsedFunction.h.

template<typename arg >
String BALL::ParsedFunction< arg >::expression_ [protected]

Definition at line 87 of file parsedFunction.h.

template<typename arg >
StringHashMap<double (*)(double)> BALL::ParsedFunction< arg >::functions_

The table of functions

Definition at line 84 of file parsedFunction.h.

Generated by  doxygen 1.6.3