Class AggregatorAvgBig
java.lang.Object
com.espertech.esper.common.internal.epl.agg.method.core.AggregatorMethodWDistinctWFilterBase
com.espertech.esper.common.internal.epl.agg.method.core.AggregatorMethodWDistinctWFilterWValueBase
com.espertech.esper.common.internal.epl.agg.method.avg.AggregatorAvgBig
- All Implemented Interfaces:
AggregatorMethod
Average that generates double-typed numbers.
-
Field Summary
Fields inherited from class com.espertech.esper.common.internal.epl.agg.method.core.AggregatorMethodWDistinctWFilterBase
distinct, hasFilter, optionalDistinctSerde, optionalDistinctValueType, optionalFilter
-
Constructor Summary
ConstructorDescriptionAggregatorAvgBig
(EPTypeClass optionalDistinctValueType, DataInputOutputSerdeForge optionalDistinctSerde, boolean hasFilter, ExprNode optionalFilter, AggregationForgeFactoryAvg factory) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
appendFormatWODistinct
(FabricTypeCollector collector) protected void
applyEvalEnterNonNull
(CodegenExpressionRef value, EPType valueType, CodegenMethod method, ExprForgeCodegenSymbol symbols, ExprForge[] forges, CodegenClassScope classScope) protected void
applyEvalLeaveNonNull
(CodegenExpressionRef value, EPType valueType, CodegenMethod method, ExprForgeCodegenSymbol symbols, ExprForge[] forges, CodegenClassScope classScope) protected void
applyTableEnterNonNull
(CodegenExpressionRef value, EPType[] evaluationTypes, CodegenMethod method, CodegenClassScope classScope) protected void
applyTableLeaveNonNull
(CodegenExpressionRef value, EPType[] evaluationTypes, CodegenMethod method, CodegenClassScope classScope) protected void
clearWODistinct
(CodegenMethod method, CodegenClassScope classScope) static BigDecimal
getValueBigDecimalDivide
(long cnt, MathContext optionalMathContext, BigDecimal sum) NOTE: Code-generation-invoked method, method name and parameter order mattersvoid
getValueCodegen
(CodegenMethod method, CodegenClassScope classScope) void
initForgeFiltered
(int col, CodegenCtor rowCtor, CodegenMemberCol membersColumnized, CodegenClassScope classScope) protected void
readWODistinct
(CodegenExpressionRef row, int col, CodegenExpressionRef input, CodegenExpressionRef unitKey, CodegenMethod method, CodegenClassScope classScope) protected void
writeWODistinct
(CodegenExpressionRef row, int col, CodegenExpressionRef output, CodegenExpressionRef unitKey, CodegenExpressionRef writer, CodegenMethod method, CodegenClassScope classScope) Methods inherited from class com.espertech.esper.common.internal.epl.agg.method.core.AggregatorMethodWDistinctWFilterWValueBase
applyEvalEnterFiltered, applyEvalLeaveFiltered, applyTableEnterFiltered, applyTableLeaveFiltered
Methods inherited from class com.espertech.esper.common.internal.epl.agg.method.core.AggregatorMethodWDistinctWFilterBase
applyEvalEnterCodegen, applyEvalLeaveCodegen, applyTableEnterCodegen, applyTableLeaveCodegen, clearCodegen, collectFabricType, initForge, readCodegen, toDistinctValueKey, writeCodegen
-
Constructor Details
-
AggregatorAvgBig
public AggregatorAvgBig(EPTypeClass optionalDistinctValueType, DataInputOutputSerdeForge optionalDistinctSerde, boolean hasFilter, ExprNode optionalFilter, AggregationForgeFactoryAvg factory)
-
-
Method Details
-
initForgeFiltered
public void initForgeFiltered(int col, CodegenCtor rowCtor, CodegenMemberCol membersColumnized, CodegenClassScope classScope) - Specified by:
initForgeFiltered
in classAggregatorMethodWDistinctWFilterBase
-
applyEvalEnterNonNull
protected void applyEvalEnterNonNull(CodegenExpressionRef value, EPType valueType, CodegenMethod method, ExprForgeCodegenSymbol symbols, ExprForge[] forges, CodegenClassScope classScope) - Specified by:
applyEvalEnterNonNull
in classAggregatorMethodWDistinctWFilterWValueBase
-
applyEvalLeaveNonNull
protected void applyEvalLeaveNonNull(CodegenExpressionRef value, EPType valueType, CodegenMethod method, ExprForgeCodegenSymbol symbols, ExprForge[] forges, CodegenClassScope classScope) - Specified by:
applyEvalLeaveNonNull
in classAggregatorMethodWDistinctWFilterWValueBase
-
applyTableEnterNonNull
protected void applyTableEnterNonNull(CodegenExpressionRef value, EPType[] evaluationTypes, CodegenMethod method, CodegenClassScope classScope) - Specified by:
applyTableEnterNonNull
in classAggregatorMethodWDistinctWFilterWValueBase
-
applyTableLeaveNonNull
protected void applyTableLeaveNonNull(CodegenExpressionRef value, EPType[] evaluationTypes, CodegenMethod method, CodegenClassScope classScope) - Specified by:
applyTableLeaveNonNull
in classAggregatorMethodWDistinctWFilterWValueBase
-
clearWODistinct
- Specified by:
clearWODistinct
in classAggregatorMethodWDistinctWFilterBase
-
getValueCodegen
-
writeWODistinct
protected void writeWODistinct(CodegenExpressionRef row, int col, CodegenExpressionRef output, CodegenExpressionRef unitKey, CodegenExpressionRef writer, CodegenMethod method, CodegenClassScope classScope) - Specified by:
writeWODistinct
in classAggregatorMethodWDistinctWFilterBase
-
readWODistinct
protected void readWODistinct(CodegenExpressionRef row, int col, CodegenExpressionRef input, CodegenExpressionRef unitKey, CodegenMethod method, CodegenClassScope classScope) - Specified by:
readWODistinct
in classAggregatorMethodWDistinctWFilterBase
-
appendFormatWODistinct
- Specified by:
appendFormatWODistinct
in classAggregatorMethodWDistinctWFilterBase
-
getValueBigDecimalDivide
public static BigDecimal getValueBigDecimalDivide(long cnt, MathContext optionalMathContext, BigDecimal sum) NOTE: Code-generation-invoked method, method name and parameter order matters- Parameters:
cnt
- countoptionalMathContext
- math ctxsum
- sum- Returns:
- result
-