SeExpr
Classes | Public Member Functions | Private Attributes | List of all members
SeExpr2::VarBlockCreator Class Reference

A class that lets you register for the variables used by one or more expressions. More...

#include <VarBlock.h>

Classes

class  Ref
 Internally implemented var ref used by SeExpr. More...
 

Public Member Functions

int registerVariable (const std::string &name, const ExprType type)
 Register a variable and return a handle. More...
 
VarBlock create ()
 Get an evaluation handle (one needed per thread) More...
 
ExprVarRefresolveVar (const std::string &name) const
 Resolve the variable using anything in the data block (call from resolveVar in Expr subclass) More...
 

Private Attributes

int _nextOffset = 0
 
std::map< std::string, Ref_vars
 

Detailed Description

A class that lets you register for the variables used by one or more expressions.

Definition at line 71 of file VarBlock.h.

Member Function Documentation

VarBlock SeExpr2::VarBlockCreator::create ( )
inline

Get an evaluation handle (one needed per thread)

Definition at line 100 of file VarBlock.h.

References _nextOffset.

Referenced by f().

int SeExpr2::VarBlockCreator::registerVariable ( const std::string &  name,
const ExprType  type 
)
inline

Register a variable and return a handle.

Definition at line 88 of file VarBlock.h.

References _nextOffset, _vars, and SeExpr2::ExprType::dim().

Referenced by f().

ExprVarRef* SeExpr2::VarBlockCreator::resolveVar ( const std::string &  name) const
inline

Resolve the variable using anything in the data block (call from resolveVar in Expr subclass)

Definition at line 103 of file VarBlock.h.

References _vars, and it.

Member Data Documentation

int SeExpr2::VarBlockCreator::_nextOffset = 0
private

Definition at line 110 of file VarBlock.h.

Referenced by create(), and registerVariable().

std::map<std::string, Ref> SeExpr2::VarBlockCreator::_vars
private

Definition at line 111 of file VarBlock.h.

Referenced by registerVariable(), and resolveVar().


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