public abstract class VarianceBufferAggregator extends Object implements BufferAggregator
Modifier and Type | Class and Description |
---|---|
static class |
VarianceBufferAggregator.FloatVarianceAggregator |
static class |
VarianceBufferAggregator.LongVarianceAggregator |
static class |
VarianceBufferAggregator.ObjectVarianceAggregator |
Constructor and Description |
---|
VarianceBufferAggregator() |
Modifier and Type | Method and Description |
---|---|
void |
close()
Release any resources used by the aggregator
|
Object |
get(ByteBuffer buf,
int position)
Returns the intermediate object representation of the given aggregate.
|
double |
getDouble(ByteBuffer buf,
int position)
Returns the double representation of the given aggregate byte array
Converts the given byte buffer representation into the intermediate aggregate value.
|
float |
getFloat(ByteBuffer buf,
int position)
Returns the float representation of the given aggregate byte array
Converts the given byte buffer representation into the intermediate aggregate value.
|
long |
getLong(ByteBuffer buf,
int position)
Returns the long representation of the given aggregate byte array
Converts the given byte buffer representation into the intermediate aggregate value.
|
void |
init(ByteBuffer buf,
int position)
Initializes the buffer location
Implementations of this method must initialize the byte buffer at the given position
Implementations must not change the position, limit or mark of the given buffer
This method must not exceed the number of bytes returned by
AggregatorFactory.getMaxIntermediateSize()
in the corresponding AggregatorFactory |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
aggregate, inspectRuntimeShape, relocate
public void init(ByteBuffer buf, int position)
BufferAggregator
AggregatorFactory.getMaxIntermediateSize()
in the corresponding AggregatorFactory
init
in interface BufferAggregator
buf
- byte buffer to initializeposition
- offset within the byte buffer for initializationpublic Object get(ByteBuffer buf, int position)
BufferAggregator
get
in interface BufferAggregator
buf
- byte buffer storing the byte array representation of the aggregateposition
- offset within the byte buffer at which the aggregate value is storedpublic float getFloat(ByteBuffer buf, int position)
BufferAggregator
AggregatorFactory.getTypeName()
of "float".
If unimplemented, throwing an UnsupportedOperationException
is common and recommended.getFloat
in interface BufferAggregator
buf
- byte buffer storing the byte array representation of the aggregateposition
- offset within the byte buffer at which the aggregate value is storedpublic long getLong(ByteBuffer buf, int position)
BufferAggregator
AggregatorFactory.getTypeName()
of "long".
If unimplemented, throwing an UnsupportedOperationException
is common and recommended.getLong
in interface BufferAggregator
buf
- byte buffer storing the byte array representation of the aggregateposition
- offset within the byte buffer at which the aggregate value is storedpublic double getDouble(ByteBuffer buf, int position)
BufferAggregator
AggregatorFactory.getTypeName()
of "double".
If unimplemented, throwing an UnsupportedOperationException
is common and recommended.
The default implementation casts BufferAggregator.getFloat(ByteBuffer, int)
to double.
This default method is added to enable smooth backward compatibility, please re-implement it if your aggregators
work with numeric double columns.getDouble
in interface BufferAggregator
buf
- byte buffer storing the byte array representation of the aggregateposition
- offset within the byte buffer at which the aggregate value is storedpublic void close()
BufferAggregator
close
in interface BufferAggregator
Copyright © 2011–2018. All rights reserved.