Class DStarRunner
- java.lang.Object
-
- org.apache.poi.ss.formula.functions.DStarRunner
-
- All Implemented Interfaces:
Function
,Function3Arg
@Internal public final class DStarRunner extends Object implements Function3Arg
This class performs a D* calculation. It takes anIDStarAlgorithm
object and uses it for calculating the result value. Iterating a database and checking the entries against the set of conditions is done here. TODO: - functions as conditions
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
DStarRunner.DStarAlgorithmEnum
Enum for convenience to identify and source implementations of the D* functions
-
Constructor Summary
Constructors Constructor Description DStarRunner(DStarRunner.DStarAlgorithmEnum algorithm)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ValueEval
evaluate(int srcRowIndex, int srcColumnIndex, ValueEval database, ValueEval filterColumn, ValueEval conditionDatabase)
ValueEval
evaluate(ValueEval[] args, int srcRowIndex, int srcColumnIndex)
-
-
-
Constructor Detail
-
DStarRunner
public DStarRunner(DStarRunner.DStarAlgorithmEnum algorithm)
- Parameters:
algorithm
- to implement
-
-
Method Detail
-
evaluate
public ValueEval evaluate(ValueEval[] args, int srcRowIndex, int srcColumnIndex)
- Specified by:
evaluate
in interfaceFunction
- Parameters:
args
- the evaluated function arguments. Empty values are represented withBlankEval
orMissingArgEval
, nevernull
.srcRowIndex
- row index of the cell containing the formula under evaluationsrcColumnIndex
- column index of the cell containing the formula under evaluation- Returns:
- The evaluated result, possibly an
ErrorEval
, nevernull
. Note - Excel uses the error code #NUM! instead of IEEE NaN, so when numeric functions evaluate toDouble.NaN
be sure to translate the result toErrorEval.NUM_ERROR
.
-
evaluate
public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval database, ValueEval filterColumn, ValueEval conditionDatabase)
Description copied from interface:Function3Arg
- Specified by:
evaluate
in interfaceFunction3Arg
-
-