io.deephaven.engine.table.impl.select.analyzers.SelectOrViewColumnLayer Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of deephaven-engine-table Show documentation
Show all versions of deephaven-engine-table Show documentation
Engine Table: Implementation and closely-coupled utilities
/**
* Copyright (c) 2016-2022 Deephaven Data Labs and Patent Pending
*/
package io.deephaven.engine.table.impl.select.analyzers;
import io.deephaven.engine.table.ModifiedColumnSet;
import io.deephaven.engine.table.impl.select.SelectColumn;
import io.deephaven.engine.table.ColumnSource;
import java.util.Map;
public abstract class SelectOrViewColumnLayer extends DependencyLayerBase {
private final ColumnSource> optionalUnderlying;
SelectOrViewColumnLayer(SelectAndViewAnalyzer inner, String name, SelectColumn sc,
ColumnSource> ws, ColumnSource> optionalUnderlying,
String[] deps, ModifiedColumnSet mcsBuilder) {
super(inner, name, sc, ws, deps, mcsBuilder);
this.optionalUnderlying = optionalUnderlying;
}
@Override
final Map> getColumnSourcesRecurse(GetMode mode) {
final Map> result = inner.getColumnSourcesRecurse(mode);
result.put(name, columnSource);
return result;
}
@Override
public void startTrackingPrev() {
columnSource.startTrackingPrevValues();
if (optionalUnderlying != null) {
optionalUnderlying.startTrackingPrevValues();
}
inner.startTrackingPrev();
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy