KSeExpr  4.0.4.0
Classes | Public Member Functions | Static Private Member Functions | List of all members
KSeExpr::ExprFuncSimple Class Referenceabstract

#include <ExprFuncX.h>

Inheritance diagram for KSeExpr::ExprFuncSimple:
KSeExpr::ExprFuncX BasicExpression::DummyFuncX KSeExpr::CCurveFuncX KSeExpr::CachedVoronoiFunc KSeExpr::CurveFuncX KSeExpr::GetVar KSeExpr::MapFuncX KSeExpr::PrintFuncX KSeExpr::RandFuncX KSeExpr::SPrintFuncX KSeExpr::TriplanarFuncX

Classes

class  ArgHandle
 

Public Member Functions

 ExprFuncSimple (const bool threadSafe)
 
int buildInterpreter (const ExprFuncNode *node, Interpreter *interpreter) const override
 Build an interpreter to evaluate the expression. More...
 
ExprType prep (ExprFuncNode *node, bool scalarWanted, ExprVarEnvBuilder &envBuilder) const override=0
 
virtual ExprFuncNode::DataevalConstant (const ExprFuncNode *node, ArgHandle args) const =0
 
virtual void eval (ArgHandle args)=0
 
- Public Member Functions inherited from KSeExpr::ExprFuncX
 ExprFuncX (const bool threadSafe)
 
 ExprFuncX (const ExprFuncX &)=default
 
 ExprFuncX (ExprFuncX &&)=default
 
ExprFuncXoperator= (const ExprFuncX &)=default
 
ExprFuncXoperator= (ExprFuncX &&)=default
 
virtual ExprType type () const
 
virtual ~ExprFuncX ()=default
 
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...
 

Static Private Member Functions

static int EvalOp (int *opData, double *fp, char **c, std::vector< int > &callStack)
 

Additional Inherited Members

- Protected Attributes inherited from KSeExpr::ExprFuncX
bool _isScalar {}
 
ExprType _type
 

Detailed Description

Definition at line 64 of file ExprFuncX.h.

Constructor & Destructor Documentation

◆ ExprFuncSimple()

KSeExpr::ExprFuncSimple::ExprFuncSimple ( const bool  threadSafe)
inline

Definition at line 66 of file ExprFuncX.h.

Member Function Documentation

◆ buildInterpreter()

int KSeExpr::ExprFuncSimple::buildInterpreter ( const ExprFuncNode node,
Interpreter interpreter 
) const
overridevirtual

◆ eval()

virtual void KSeExpr::ExprFuncSimple::eval ( ArgHandle  args)
pure virtual

◆ evalConstant()

virtual ExprFuncNode::Data* KSeExpr::ExprFuncSimple::evalConstant ( const ExprFuncNode node,
ArgHandle  args 
) const
pure virtual

◆ EvalOp()

int KSeExpr::ExprFuncSimple::EvalOp ( int *  opData,
double *  fp,
char **  c,
std::vector< int > &  callStack 
)
staticprivate

Definition at line 14 of file ExprFuncX.cpp.

Referenced by buildInterpreter().

◆ prep()

ExprType KSeExpr::ExprFuncSimple::prep ( ExprFuncNode node,
bool  scalarWanted,
ExprVarEnvBuilder env 
) const
overridepure virtual

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