Class BaseDoubleUpdateByOperator
java.lang.Object
io.deephaven.engine.table.impl.updateby.UpdateByOperator
io.deephaven.engine.table.impl.updateby.internal.BaseDoubleUpdateByOperator
- Direct Known Subclasses:
BasePrimitiveEMOperator,BasePrimitiveEmStdOperator,ByteRollingAvgOperator,ByteRollingProductOperator,ByteRollingStdOperator,ByteRollingWAvgOperator,CharRollingAvgOperator,CharRollingProductOperator,CharRollingStdOperator,CharRollingWAvgOperator,DoubleCumMinMaxOperator,DoubleCumProdOperator,DoubleCumSumOperator,DoubleDeltaOperator,DoubleFillByOperator,DoubleRollingAvgOperator,DoubleRollingMinMaxOperator,DoubleRollingProductOperator,DoubleRollingStdOperator,DoubleRollingSumOperator,DoubleRollingWAvgOperator,FloatCumProdOperator,FloatCumSumOperator,FloatRollingAvgOperator,FloatRollingProductOperator,FloatRollingStdOperator,FloatRollingSumOperator,FloatRollingWAvgOperator,IntRollingAvgOperator,IntRollingProductOperator,IntRollingStdOperator,IntRollingWAvgOperator,LongRollingAvgOperator,LongRollingProductOperator,LongRollingStdOperator,LongRollingWAvgOperator,ShortRollingAvgOperator,ShortRollingProductOperator,ShortRollingStdOperator,ShortRollingWAvgOperator
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected WritableColumnSource<Double>protected WritableColumnSource<Double>Fields inherited from class io.deephaven.engine.table.impl.updateby.UpdateByOperator
affectingColumns, forwardWindowScaleUnits, inputModifiedColumnSet, isWindowed, outputModifiedColumnSet, pair, reverseWindowScaleUnits, rowRedirection, timestampColumnName -
Constructor Summary
ConstructorsConstructorDescriptionBaseDoubleUpdateByOperator(@NotNull MatchPair pair, @NotNull String[] affectingColumns) Construct a base operator for operations that produce double outputs.BaseDoubleUpdateByOperator(@NotNull MatchPair pair, @NotNull String[] affectingColumns, @Nullable String timestampColumnName, long reverseWindowScaleUnits, long forwardWindowScaleUnits, boolean isWindowed) Construct a base operator for operations that produce double outputs. -
Method Summary
Modifier and TypeMethodDescriptionvoidapplyOutputShift(@NotNull RowSet subRowSetToShift, long delta) Apply a shift to the operation.voidclearOutputRows(RowSet toClear) Clear the output rows by setting value to NULL.@NotNull Map<String,ColumnSource<?>> Get a map of outputName to outputColumnSourcefor this operation.voidinitializeCumulative(UpdateByOperator.Context context, 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).voidprepareForParallelPopulation(RowSet changedRows) Prepare this operator output column for parallel updated.voidIndicate that the operation should start tracking previous values for ticking updates.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
-
outputSource
-
maybeInnerSource
-
-
Constructor Details
-
BaseDoubleUpdateByOperator
public BaseDoubleUpdateByOperator(@NotNull @NotNull MatchPair pair, @NotNull @NotNull String[] affectingColumns) Construct a base operator for operations that produce double outputs.- Parameters:
pair- theMatchPairthat defines the input/output for this operationaffectingColumns- a list of all columns (including the input column from the pair) that affects the result of this operator.
-
BaseDoubleUpdateByOperator
public BaseDoubleUpdateByOperator(@NotNull @NotNull MatchPair pair, @NotNull @NotNull String[] affectingColumns, @Nullable @Nullable String timestampColumnName, long reverseWindowScaleUnits, long forwardWindowScaleUnits, boolean isWindowed) Construct a base operator for operations that produce double outputs.- Parameters:
pair- theMatchPairthat defines the input/output for this operationaffectingColumns- a list of all columns (including the input column from the pair) that affects the result of this operator.timestampColumnName- an optional timestamp column. If this is null, it will be assumed time is measured in integer ticks.reverseWindowScaleUnits- the reverse window for the operator. If notimestampColumnNameis provided, this is measured in ticks, otherwise it is measured in nanoseconds.forwardWindowScaleUnits- the forward window for the operator. If notimestampColumnNameis provided, this is measured in ticks, otherwise it is measured in nanoseconds.
-
-
Method Details
-
initializeSources
@OverridingMethodsMustInvokeSuper 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.- Specified by:
initializeSourcesin classUpdateByOperator
-
initializeCumulative
public void initializeCumulative(@NotNull UpdateByOperator.Context context, long firstUnmodifiedKey, long firstUnmodifiedTimestamp, @NotNull @NotNull RowSet bucketRowSet) Description copied from class:UpdateByOperatorInitialize the bucket context for a cumulative operator- Overrides:
initializeCumulativein classUpdateByOperator
-
startTrackingPrev
public void startTrackingPrev()Description copied from class:UpdateByOperatorIndicate that the operation should start tracking previous values for ticking updates.- Specified by:
startTrackingPrevin classUpdateByOperator
-
applyOutputShift
Description copied from class:UpdateByOperatorApply a shift to the operation.- Specified by:
applyOutputShiftin classUpdateByOperator
-
prepareForParallelPopulation
Description copied from class:UpdateByOperatorPrepare this operator output column for parallel updated.- Specified by:
prepareForParallelPopulationin classUpdateByOperator
-
getOutputColumns
Description copied from class:UpdateByOperatorGet a map of outputName to outputColumnSourcefor this operation.- Specified by:
getOutputColumnsin classUpdateByOperator- Returns:
- a map of output column name to output column source
-
clearOutputRows
Description copied from class:UpdateByOperatorClear the output rows by setting value to NULL. Dense sources will apply removes to the inner source.- Specified by:
clearOutputRowsin classUpdateByOperator
-