Package mondrian.rolap
Interface RolapCalculation
-
- All Known Subinterfaces:
RolapMember
,RolapMemberInCube
- All Known Implementing Classes:
DelegatingRolapMember
,RestrictedMemberReader.MultiCardinalityDefaultMember
,RolapAllCubeMember
,RolapBaseCubeMeasure
,RolapCalculatedMember
,RolapCubeMember
,RolapHierarchy.LimitedRollupMember
,RolapHierarchy.RolapCalculatedMeasure
,RolapHierarchy.RolapNullMember
,RolapMemberBase
,RolapMemberCalculation
,RolapResult.CompoundSlicerRolapMember
,RolapTupleCalculation
,RolapVirtualCubeMeasure
,VisualTotalsFunDef.VisualTotalMember
interface RolapCalculation
Entry in the evaluation context that indicates a calculation that needs to be performed before we get to the atomic stored cells.Most of the time it's just members that are calculated, but calculated tuples arise when the slicer is a set of tuples.
The evaluator uses this interface to efficiently expand a member or tuple from the evaluation context. When evaluated, a calculation will change one or more elements of the context (calculated members just change one, but tuple sets in the slicer can change more than one).
- Since:
- May 15, 2009
- Author:
- jhyde
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
containsAggregateFunction()
Returns whether this calculation contains an aggregate function.Calc
getCompiledExpression(RolapEvaluatorRoot root)
Returns the compiled expression to evaluate the scalar value of the current cell.int
getHierarchyOrdinal()
Returns the ordinal of this calculation; to resolve ties.int
getSolveOrder()
Returns the solve order of this calculation.boolean
isCalculatedInQuery()
Returns whether this calculation is a member is computed from aWITH MEMBER
clause in an MDX query.void
setContextIn(RolapEvaluator evaluator)
Pushes this calculated member or tuple onto the stack of evaluation contexts, and sets the context to the default member of the hierarchy.
-
-
-
Method Detail
-
setContextIn
void setContextIn(RolapEvaluator evaluator)
Pushes this calculated member or tuple onto the stack of evaluation contexts, and sets the context to the default member of the hierarchy.- Parameters:
evaluator
- Evaluator
-
getSolveOrder
int getSolveOrder()
Returns the solve order of this calculation. Identifies which order calculations are expanded.- Returns:
- Solve order
-
getHierarchyOrdinal
int getHierarchyOrdinal()
Returns the ordinal of this calculation; to resolve ties.- Returns:
- Ordinal or calculation
-
isCalculatedInQuery
boolean isCalculatedInQuery()
Returns whether this calculation is a member is computed from aWITH MEMBER
clause in an MDX query.- Returns:
- whether this calculation is computed in an MDX query
-
getCompiledExpression
Calc getCompiledExpression(RolapEvaluatorRoot root)
Returns the compiled expression to evaluate the scalar value of the current cell. This method will be called frequently, so the implementation should probably compile once and cache the result.- Parameters:
root
- Root evaluation context- Returns:
- Compiled scalar expression
-
containsAggregateFunction
boolean containsAggregateFunction()
Returns whether this calculation contains an aggregate function.- Returns:
- Whether this calculation contains an aggregate function.
-
-