Class BasePrimitiveEMOperator
java.lang.Object
io.deephaven.engine.table.impl.updateby.UpdateByOperator
io.deephaven.engine.table.impl.updateby.internal.BaseDoubleUpdateByOperator
io.deephaven.engine.table.impl.updateby.em.BasePrimitiveEMOperator
- Direct Known Subclasses:
ByteEMOperator,CharEMOperator,DoubleEMOperator,FloatEMOperator,IntEMOperator,LongEMOperator,ShortEMOperator
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionclassstatic interface -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final OperationControlprotected final doubleprotected doubleprotected final doubleFor EM operators, we can allow floating-point tick/time units.protected ColumnSource<?>Fields inherited from class io.deephaven.engine.table.impl.updateby.internal.BaseDoubleUpdateByOperator
maybeInnerSource, outputSourceFields inherited from class io.deephaven.engine.table.impl.updateby.UpdateByOperator
affectingColumns, forwardWindowScaleUnits, inputModifiedColumnSet, isWindowed, outputModifiedColumnSet, pair, rowRedirection, timestampColumnName -
Constructor Summary
ConstructorsConstructorDescriptionBasePrimitiveEMOperator(@NotNull MatchPair pair, @NotNull String[] affectingColumns, @NotNull OperationControl control, @Nullable String timestampColumnName, double windowScaleUnits, @NotNull BasePrimitiveEMOperator.EmFunction aggFunction) An operator that computes an EM output from an input column using an exponential decay function. -
Method Summary
Modifier and TypeMethodDescriptionvoidinitializeCumulative(UpdateByOperator.Context updateContext, long firstUnmodifiedKey, long firstUnmodifiedTimestamp, @NotNull RowSet bucketRowSet) Initialize the bucket context for a cumulative operatorvoidinitializeSources(@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.BaseDoubleUpdateByOperator
applyOutputShift, clearOutputRows, getOutputColumns, prepareForParallelPopulation, startTrackingPrevMethods 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
protected final double opAlpha -
valueSource
-
opOneMinusAlpha
protected double opOneMinusAlpha
-
-
Constructor Details
-
BasePrimitiveEMOperator
public BasePrimitiveEMOperator(@NotNull @NotNull MatchPair pair, @NotNull @NotNull String[] affectingColumns, @NotNull @NotNull OperationControl control, @Nullable @Nullable String timestampColumnName, double windowScaleUnits, @NotNull @NotNull BasePrimitiveEMOperator.EmFunction aggFunction) An operator that computes an EM output from an input column using an exponential decay function.- Parameters:
pair- theMatchPairthat defines the input/output for this operationaffectingColumns- the names of the columns that affect this emacontrol- the control parameters for EM operatortimestampColumnName- an optional timestamp column. If this is null, it will be assumed time is measured in integer ticks.windowScaleUnits- the smoothing window for the EM operator. If notimestampColumnNameis 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:UpdateByOperatorInitialize this operator with a specific source table (and row redirection if needed). This will be called exactly once per operator.- Overrides:
initializeSourcesin classBaseDoubleUpdateByOperator
-
initializeCumulative
public void initializeCumulative(@NotNull UpdateByOperator.Context updateContext, long firstUnmodifiedKey, long firstUnmodifiedTimestamp, @NotNull @NotNull RowSet bucketRowSet) Description copied from class:UpdateByOperatorInitialize the bucket context for a cumulative operator- Overrides:
initializeCumulativein classBaseDoubleUpdateByOperator
-