Class BaseBigNumberEMOperator<T>
java.lang.Object
io.deephaven.engine.table.impl.updateby.UpdateByOperator
io.deephaven.engine.table.impl.updateby.internal.BaseObjectUpdateByOperator<BigDecimal>
io.deephaven.engine.table.impl.updateby.em.BaseBigNumberEMOperator<T>
- Direct Known Subclasses:
BigDecimalEMOperator
,BigIntegerEMOperator
-
Nested Class Summary
Modifier and TypeClassDescriptionclass
static interface
-
Field Summary
Modifier and TypeFieldDescriptionprotected final OperationControl
protected final BigDecimal
protected final BigDecimal
protected final double
For EM operators, we can allow floating-point tick/time units.protected ColumnSource<?>
Fields inherited from class io.deephaven.engine.table.impl.updateby.internal.BaseObjectUpdateByOperator
colType, maybeInnerSource, outputSource
Fields inherited from class io.deephaven.engine.table.impl.updateby.UpdateByOperator
affectingColumns, forwardWindowScaleUnits, inputModifiedColumnSet, isWindowed, outputModifiedColumnSet, pair, rowRedirection, timestampColumnName
-
Constructor Summary
ConstructorDescriptionBaseBigNumberEMOperator
(@NotNull MatchPair pair, @NotNull String[] affectingColumns, @NotNull OperationControl control, @Nullable String timestampColumnName, double windowScaleUnits, @NotNull BaseBigNumberEMOperator.EmFunction aggFunction) An operator that computes an EM output from a big number column using an exponential decay function. -
Method Summary
Modifier and TypeMethodDescriptionvoid
initializeCumulative
(UpdateByOperator.Context updateContext, long firstUnmodifiedKey, long firstUnmodifiedTimestamp, @NotNull RowSet bucketRowSet) Initialize the bucket context for a cumulative operatorvoid
initializeSources
(@NotNull Table source, @Nullable RowRedirection rowRedirection) Initialize this operator with a specific source table (and row redirection if needed).Methods inherited from class io.deephaven.engine.table.impl.updateby.internal.BaseObjectUpdateByOperator
applyOutputShift, clearOutputRows, getOutputColumns, prepareForParallelPopulation, startTrackingPrev
Methods inherited from class io.deephaven.engine.table.impl.updateby.UpdateByOperator
copy, createInputModifiedColumnSet, createOutputModifiedColumnSet, extractDownstreamModifiedColumnSet, finishUpdate, getAffectingColumnNames, getFwdWindowUnits, getInputColumnNames, getInputModifiedColumnSet, getOutputColumnNames, getOutputModifiedColumnSet, getPrevWindowUnits, getTimestampColumnName, initializeCumulativeWithKeyValues, initializeRolling, initializeRollingWithKeyValues, makeUpdateContext, requiresRowPositions
-
Field Details
-
control
-
reverseWindowScaleUnits
protected final double reverseWindowScaleUnitsFor EM operators, we can allow floating-point tick/time units. -
opAlpha
-
opOneMinusAlpha
-
valueSource
-
-
Constructor Details
-
BaseBigNumberEMOperator
public BaseBigNumberEMOperator(@NotNull @NotNull MatchPair pair, @NotNull @NotNull String[] affectingColumns, @NotNull @NotNull OperationControl control, @Nullable @Nullable String timestampColumnName, double windowScaleUnits, @NotNull @NotNull BaseBigNumberEMOperator.EmFunction aggFunction) An operator that computes an EM output from a big number column using an exponential decay function.- Parameters:
pair
- theMatchPair
that defines the input/output for this operationaffectingColumns
- the names of the columns that affect this emacontrol
- defines how to handlenull
input values.timestampColumnName
- the name of the column containing timestamps for time-based calcuationswindowScaleUnits
- the smoothing window for the EMA. If notimestampColumnName
is provided, this is measured in ticks, otherwise it is measured in nanoseconds
-
-
Method Details
-
initializeSources
public void initializeSources(@NotNull @NotNull Table source, @Nullable @Nullable RowRedirection rowRedirection) Description copied from class:UpdateByOperator
Initialize this operator with a specific source table (and row redirection if needed). This will be called exactly once per operator.- Overrides:
initializeSources
in classBaseObjectUpdateByOperator<BigDecimal>
-
initializeCumulative
public void initializeCumulative(@NotNull UpdateByOperator.Context updateContext, long firstUnmodifiedKey, long firstUnmodifiedTimestamp, @NotNull @NotNull RowSet bucketRowSet) Description copied from class:UpdateByOperator
Initialize the bucket context for a cumulative operator- Overrides:
initializeCumulative
in classBaseObjectUpdateByOperator<BigDecimal>
-