SeExpr
Public Types | Public Member Functions | Private Attributes | List of all members
SeExpr2::ExprFuncStandard Class Reference

#include <ExprFuncStandard.h>

Inheritance diagram for SeExpr2::ExprFuncStandard:
SeExpr2::ExprFuncX

Public Types

enum  FuncType {
  NONE = 0, FUNC0, FUNC1, FUNC2,
  FUNC3, FUNC4, FUNC5, FUNC6,
  FUNCN, VEC, FUNC1V = VEC, FUNC2V,
  FUNCNV, VECVEC, FUNC1VV = VECVEC, FUNC2VV,
  FUNCNVV
}
 
typedef double Func0 ()
 
typedef double Func1 (double)
 
typedef double Func2 (double, double)
 
typedef double Func3 (double, double, double)
 
typedef double Func4 (double, double, double, double)
 
typedef double Func5 (double, double, double, double, double)
 
typedef double Func6 (double, double, double, double, double, double)
 
typedef double Func1v (const Vec3d &)
 
typedef double Func2v (const Vec3d &, const Vec3d &)
 
typedef Vec3d Func1vv (const Vec3d &)
 
typedef Vec3d Func2vv (const Vec3d &, const Vec3d &)
 
typedef double Funcn (int n, double *params)
 
typedef double Funcnv (int n, const Vec3d *params)
 
typedef Vec3d Funcnvv (int n, const Vec3d *params)
 

Public Member Functions

 ExprFuncStandard (FuncType funcType, void *f)
 No argument function. More...
 
 ExprFuncStandard ()
 
virtual ExprType prep (ExprFuncNode *node, bool scalarWanted, ExprVarEnvBuilder &envBuilder) const
 
virtual int buildInterpreter (const ExprFuncNode *node, Interpreter *interpreter) const
 Build an interpreter to evaluate the expression. More...
 
void * getFuncPointer () const
 
FuncType getFuncType () const
 
- Public Member Functions inherited from SeExpr2::ExprFuncX
 ExprFuncX (const bool threadSafe)
 
virtual ExprType type () const
 
virtual ~ExprFuncX ()
 
bool isThreadSafe () const
 
virtual size_t sizeInBytes () const
 Return memory usage of a funcX in bytes. More...
 
virtual void statistics (Statistics &) const
 Give this function a chance to populate its statistics. More...
 

Private Attributes

FuncType _funcType
 
void * _func
 

Additional Inherited Members

- Protected Attributes inherited from SeExpr2::ExprFuncX
bool _isScalar
 
ExprType _type
 

Detailed Description

Definition at line 25 of file ExprFuncStandard.h.

Member Typedef Documentation

typedef double SeExpr2::ExprFuncStandard::Func0()

Definition at line 50 of file ExprFuncStandard.h.

typedef double SeExpr2::ExprFuncStandard::Func1(double)

Definition at line 51 of file ExprFuncStandard.h.

typedef double SeExpr2::ExprFuncStandard::Func1v(const Vec3d &)

Definition at line 57 of file ExprFuncStandard.h.

typedef Vec3d SeExpr2::ExprFuncStandard::Func1vv(const Vec3d &)

Definition at line 59 of file ExprFuncStandard.h.

typedef double SeExpr2::ExprFuncStandard::Func2(double, double)

Definition at line 52 of file ExprFuncStandard.h.

typedef double SeExpr2::ExprFuncStandard::Func2v(const Vec3d &, const Vec3d &)

Definition at line 58 of file ExprFuncStandard.h.

typedef Vec3d SeExpr2::ExprFuncStandard::Func2vv(const Vec3d &, const Vec3d &)

Definition at line 60 of file ExprFuncStandard.h.

typedef double SeExpr2::ExprFuncStandard::Func3(double, double, double)

Definition at line 53 of file ExprFuncStandard.h.

typedef double SeExpr2::ExprFuncStandard::Func4(double, double, double, double)

Definition at line 54 of file ExprFuncStandard.h.

typedef double SeExpr2::ExprFuncStandard::Func5(double, double, double, double, double)

Definition at line 55 of file ExprFuncStandard.h.

typedef double SeExpr2::ExprFuncStandard::Func6(double, double, double, double, double, double)

Definition at line 56 of file ExprFuncStandard.h.

typedef double SeExpr2::ExprFuncStandard::Funcn(int n, double *params)

Definition at line 61 of file ExprFuncStandard.h.

typedef double SeExpr2::ExprFuncStandard::Funcnv(int n, const Vec3d *params)

Definition at line 62 of file ExprFuncStandard.h.

typedef Vec3d SeExpr2::ExprFuncStandard::Funcnvv(int n, const Vec3d *params)

Definition at line 63 of file ExprFuncStandard.h.

Member Enumeration Documentation

Enumerator
NONE 
FUNC0 
FUNC1 
FUNC2 
FUNC3 
FUNC4 
FUNC5 
FUNC6 
FUNCN 
VEC 
FUNC1V 
FUNC2V 
FUNCNV 
VECVEC 
FUNC1VV 
FUNC2VV 
FUNCNVV 

Definition at line 27 of file ExprFuncStandard.h.

Constructor & Destructor Documentation

SeExpr2::ExprFuncStandard::ExprFuncStandard ( FuncType  funcType,
void *  f 
)
inline

No argument function.

Definition at line 83 of file ExprFuncStandard.h.

SeExpr2::ExprFuncStandard::ExprFuncStandard ( )
inline

Definition at line 140 of file ExprFuncStandard.h.

Member Function Documentation

int SeExpr2::ExprFuncStandard::buildInterpreter ( const ExprFuncNode node,
Interpreter interpreter 
) const
virtual
void* SeExpr2::ExprFuncStandard::getFuncPointer ( ) const
inline

Definition at line 144 of file ExprFuncStandard.h.

References _func.

FuncType SeExpr2::ExprFuncStandard::getFuncType ( ) const
inline

Definition at line 145 of file ExprFuncStandard.h.

References _funcType.

ExprType SeExpr2::ExprFuncStandard::prep ( ExprFuncNode node,
bool  scalarWanted,
ExprVarEnvBuilder env 
) const
virtual

Member Data Documentation

void* SeExpr2::ExprFuncStandard::_func
private

Definition at line 149 of file ExprFuncStandard.h.

Referenced by buildInterpreter(), and getFuncPointer().

FuncType SeExpr2::ExprFuncStandard::_funcType
private

Definition at line 148 of file ExprFuncStandard.h.

Referenced by buildInterpreter(), getFuncType(), and prep().


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