An expression plan is used to evaluate an expression (i
![]() | Accumulate (const XxxRecord* Rec[], const XxxRecordSchema* Schema[], XxxAggrOpHandle *Handle, const XxxValueEnv* Env = NULL) / Accumulate into handle |
![]() | Evaluate (const XxxRecord* Rec, const XxxRecordSchema* Schema, XxxADTValue *Result, const XxxValueEnv* Env = NULL) / evaluate, when there is a single input |
![]() | GetDependencies (XxxBitMap& Dependendency) / Similar method for XxxExpression as well |
![]() | Init (XxxAggrOpHandle *Handle) / Initialize handle |
![]() | MakeOpHandle (XxxAggrOpHandle*& Handle) / Make a handle to hold ongoing aggregation |
![]() | RedirectDependencies (const VarRemapping& Remap, int CorrelationHeight = 0) |
![]() | Replicate () Replication |
![]() | Terminate (XxxAggrOpHandle *Handle, const XxxRecord* Rec[], const XxxRecordSchema* Schema[], XxxADTValue *FinalVal, const XxxValueEnv* Env = NULL) / Terminates the aggregation and performs any postprocessing |
![]() | UsageOfPlan (PlanUsage& Usage) / member of XxxGenericPlan |
![]() | XxxValueExprPlan (XxxExpression * Exp, XxxValueExprPlan* Children[]) this is the most commonly used constructor |
![]() | XxxValueExprPlan (const XxxValueExprPlan &Plan) Copy constructor |
![]() | XxxValueExprPlan (int Arity, XxxBool Constant, XxxValueExprPlan* Children[]) |
![]() | / Gets input stream dependencies. |
![]() | / 4 methods to evaluate an aggregate expression |
![]() | changeDependency (const VarRemapping& Remap) this method will be called from RedirectDependencies |
![]() | sourceExpr / a copy of the source expression (needed for index expressions) |
An expression plan is used to evaluate an expression (i.e ValueExpression) All plans must be subclasses of XxxGenericPlan, which defines a cost for the expression.
class VarRemapping
XxxErrCode changeDependency(const VarRemapping& Remap)
XxxValueExprPlan(XxxExpression * Exp, XxxValueExprPlan* Children[])
XxxValueExprPlan(const XxxValueExprPlan &Plan)
XxxValueExprPlan(int Arity, XxxBool Constant, XxxValueExprPlan* Children[])
virtual XxxGenericPlan* Replicate()
XxxErrCode Evaluate(const XxxRecord* Rec, const XxxRecordSchema* Schema, XxxADTValue *Result, const XxxValueEnv* Env = NULL)
virtual XxxErrCode MakeOpHandle(XxxAggrOpHandle*& Handle)
virtual XxxErrCode Init(XxxAggrOpHandle *Handle)
virtual XxxErrCode Accumulate(const XxxRecord* Rec[], const XxxRecordSchema* Schema[], XxxAggrOpHandle *Handle, const XxxValueEnv* Env = NULL)
virtual XxxErrCode Terminate(XxxAggrOpHandle *Handle, const XxxRecord* Rec[], const XxxRecordSchema* Schema[], XxxADTValue *FinalVal, const XxxValueEnv* Env = NULL)
virtual XxxErrCode UsageOfPlan(PlanUsage& Usage)
virtual XxxErrCode GetDependencies(XxxBitMap& Dependendency)
virtual XxxErrCode RedirectDependencies(const VarRemapping& Remap, int CorrelationHeight = 0)
this page has been generated automatically by doc++
(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de