public class AggregatorNth extends java.lang.Object implements AggregationMethod
Modifier and Type | Field and Description |
---|---|
protected java.lang.Object[] |
circularBuffer |
protected int |
currentBufferElementPointer |
protected long |
numDataPoints |
protected int |
sizeBuf |
Constructor and Description |
---|
AggregatorNth(int sizeBuf)
Ctor.
|
Modifier and Type | Method and Description |
---|---|
static void |
applyEnterCodegen(AggregationMethodFactoryNth forge,
int column,
CodegenMethodNode method,
ExprForgeCodegenSymbol symbols,
ExprForge[] forges,
CodegenClassScope classScope) |
static void |
applyLeaveCodegen(AggregationMethodFactoryNth forge,
int column,
CodegenMethodNode method,
ExprForgeCodegenSymbol symbols,
ExprForge[] forges,
CodegenClassScope classScope) |
void |
clear()
Clear out the collection.
|
static void |
clearCodegen(AggregationMethodFactoryNth forge,
int column,
CodegenMethodNode method) |
void |
enter(java.lang.Object value)
Apply the value as entering aggregation (entering window).
|
protected void |
enterValues(java.lang.Object[] arr) |
java.lang.Object[] |
getCircularBuffer() |
int |
getCurrentBufferElementPointer() |
long |
getNumDataPoints() |
int |
getSizeBuf() |
java.lang.Object |
getValue()
Returns the current value held.
|
static void |
getValueCodegen(AggregationMethodFactoryNth forge,
int column,
CodegenMethodNode method) |
void |
leave(java.lang.Object value)
Apply the value as leaving aggregation (leaving window).
|
static void |
rowMemberCodegen(AggregationMethodFactoryNth forge,
int column,
CodegenCtor ctor,
CodegenMembersColumnized membersColumnized) |
void |
setCircularBuffer(java.lang.Object[] circularBuffer) |
void |
setCurrentBufferElementPointer(int currentBufferElementPointer) |
void |
setNumDataPoints(long numDataPoints) |
protected final int sizeBuf
protected java.lang.Object[] circularBuffer
protected int currentBufferElementPointer
protected long numDataPoints
public static void rowMemberCodegen(AggregationMethodFactoryNth forge, int column, CodegenCtor ctor, CodegenMembersColumnized membersColumnized)
public void enter(java.lang.Object value)
AggregationMethod
The value can be null since 'null' values may be counted as unique separate values.
enter
in interface AggregationMethod
value
- to add to aggregatepublic static void applyEnterCodegen(AggregationMethodFactoryNth forge, int column, CodegenMethodNode method, ExprForgeCodegenSymbol symbols, ExprForge[] forges, CodegenClassScope classScope)
public void leave(java.lang.Object value)
AggregationMethod
The value can be null since 'null' values may be counted as unique separate values.
leave
in interface AggregationMethod
value
- to remove from aggregatepublic static void applyLeaveCodegen(AggregationMethodFactoryNth forge, int column, CodegenMethodNode method, ExprForgeCodegenSymbol symbols, ExprForge[] forges, CodegenClassScope classScope)
public void clear()
AggregationMethod
clear
in interface AggregationMethod
public static void clearCodegen(AggregationMethodFactoryNth forge, int column, CodegenMethodNode method)
public java.lang.Object getValue()
AggregationMethod
getValue
in interface AggregationMethod
public static void getValueCodegen(AggregationMethodFactoryNth forge, int column, CodegenMethodNode method)
protected void enterValues(java.lang.Object[] arr)
public int getSizeBuf()
public java.lang.Object[] getCircularBuffer()
public void setCircularBuffer(java.lang.Object[] circularBuffer)
public int getCurrentBufferElementPointer()
public void setCurrentBufferElementPointer(int currentBufferElementPointer)
public long getNumDataPoints()
public void setNumDataPoints(long numDataPoints)