public abstract class BaseTopNAlgorithm<DimValSelector,DimValAggregateStore,Parameters extends TopNParams> extends Object implements TopNAlgorithm<DimValSelector,Parameters>
Modifier and Type | Class and Description |
---|---|
static class |
BaseTopNAlgorithm.AggregatorArrayProvider |
protected static class |
BaseTopNAlgorithm.BaseArrayProvider<T> |
Modifier and Type | Field and Description |
---|---|
protected Capabilities |
capabilities |
EMPTY_ARRAY, INIT_POSITION_VALUE, SKIP_POSITION_VALUE
Modifier | Constructor and Description |
---|---|
protected |
BaseTopNAlgorithm(Capabilities capabilities) |
Modifier and Type | Method and Description |
---|---|
protected abstract void |
closeAggregators(DimValAggregateStore dimValAggregateStore) |
protected int |
computeNewLength(DimValSelector dimValSelector,
int numProcessed,
int numToProcess)
Skip invalid value, calculate length to have enough valid value to process or hit the end.
|
static Aggregator[] |
makeAggregators(Cursor cursor,
List<AggregatorFactory> aggregatorSpecs) |
protected static BufferAggregator[] |
makeBufferAggregators(Cursor cursor,
List<AggregatorFactory> aggregatorSpecs) |
protected abstract DimValAggregateStore |
makeDimValAggregateStore(Parameters params) |
protected abstract DimValSelector |
makeDimValSelector(Parameters params,
int numProcessed,
int numToProcess) |
static TopNResultBuilder |
makeResultBuilder(TopNParams params,
TopNQuery query) |
void |
run(Parameters params,
TopNResultBuilder resultBuilder,
DimValSelector dimValSelector) |
protected abstract void |
scanAndAggregate(Parameters params,
DimValSelector dimValSelector,
DimValAggregateStore dimValAggregateStore,
int numProcessed) |
protected abstract DimValSelector |
updateDimValSelector(DimValSelector dimValSelector,
int numProcessed,
int numToProcess) |
protected abstract void |
updateResults(Parameters params,
DimValSelector dimValSelector,
DimValAggregateStore dimValAggregateStore,
TopNResultBuilder resultBuilder) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
cleanup, makeInitParams
protected final Capabilities capabilities
protected BaseTopNAlgorithm(Capabilities capabilities)
public static Aggregator[] makeAggregators(Cursor cursor, List<AggregatorFactory> aggregatorSpecs)
protected static BufferAggregator[] makeBufferAggregators(Cursor cursor, List<AggregatorFactory> aggregatorSpecs)
public void run(Parameters params, TopNResultBuilder resultBuilder, DimValSelector dimValSelector)
run
in interface TopNAlgorithm<DimValSelector,Parameters extends TopNParams>
protected abstract DimValSelector makeDimValSelector(Parameters params, int numProcessed, int numToProcess)
protected int computeNewLength(DimValSelector dimValSelector, int numProcessed, int numToProcess)
dimValSelector
- the dim value selector which record value is valid or invalid.numProcessed
- the start position to processnumToProcess
- the number of valid value to processprotected abstract DimValSelector updateDimValSelector(DimValSelector dimValSelector, int numProcessed, int numToProcess)
protected abstract DimValAggregateStore makeDimValAggregateStore(Parameters params)
protected abstract void scanAndAggregate(Parameters params, DimValSelector dimValSelector, DimValAggregateStore dimValAggregateStore, int numProcessed)
protected abstract void updateResults(Parameters params, DimValSelector dimValSelector, DimValAggregateStore dimValAggregateStore, TopNResultBuilder resultBuilder)
protected abstract void closeAggregators(DimValAggregateStore dimValAggregateStore)
public static TopNResultBuilder makeResultBuilder(TopNParams params, TopNQuery query)
Copyright © 2011–2017. All rights reserved.