Interface UngroupableColumnSource
- All Known Subinterfaces:
AggregateColumnSource<VECTOR_TYPE,
COMPONENT_TYPE>
- All Known Implementing Classes:
BaseAggregateSlicedColumnSource
,BitMaskingColumnSource
,BitShiftingColumnSource
,ByteAggregateColumnSource
,CharAggregateColumnSource
,CrossJoinRightColumnSource
,DoubleAggregateColumnSource
,FloatAggregateColumnSource
,IntAggregateColumnSource
,LongAggregateColumnSource
,ObjectAggregateColumnSource
,RangeAggregateColumnSource
,RangeAggregateColumnSourceByte
,RangeAggregateColumnSourceChar
,RangeAggregateColumnSourceDouble
,RangeAggregateColumnSourceFloat
,RangeAggregateColumnSourceInt
,RangeAggregateColumnSourceLong
,RangeAggregateColumnSourceObject
,RangeAggregateColumnSourceShort
,RedirectedColumnSource
,ShiftedColumnSource
,ShortAggregateColumnSource
,SlicedByteAggregateColumnSource
,SlicedCharAggregateColumnSource
,SlicedDoubleAggregateColumnSource
,SlicedFloatAggregateColumnSource
,SlicedIntAggregateColumnSource
,SlicedLongAggregateColumnSource
,SlicedObjectAggregateColumnSource
,SlicedShortAggregateColumnSource
,WritableRedirectedColumnSource
public interface UngroupableColumnSource
Interface for ColumnSources of vectors that allow retrieving single elements by offset.
-
Method Summary
Modifier and TypeMethodDescriptiongetUngrouped
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one Object element out of the vector.getUngroupedBoolean
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one Boolean element out of the vector.byte
getUngroupedByte
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one byte element out of the vector.char
getUngroupedChar
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one char element out of the vector.double
getUngroupedDouble
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one double element out of the vector.float
getUngroupedFloat
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one float element out of the vector.int
getUngroupedInt
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one int element out of the vector.long
getUngroupedLong
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one long element out of the vector.getUngroupedPrev
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one Object element out of the vector as of end of the previous update cycle.getUngroupedPrevBoolean
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one Boolean element out of the vector as of end of the previous update cycle.byte
getUngroupedPrevByte
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one byte element out of the vector as of end of the previous update cycle.char
getUngroupedPrevChar
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one char element out of the vector as of end of the previous update cycle.double
getUngroupedPrevDouble
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one double element out of the vector as of end of the previous update cycle.float
getUngroupedPrevFloat
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one float element out of the vector as of end of the previous update cycle.int
getUngroupedPrevInt
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one int element out of the vector as of end of the previous update cycle.long
getUngroupedPrevLong
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one long element out of the vector as of end of the previous update cycle.short
getUngroupedPrevShort
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one short element out of the vector as of end of the previous update cycle.long
getUngroupedPrevSize
(long groupRowKey) default void
getUngroupedPrevSize
(ChunkSource.FillContext fillContext, RowSequence rowSequence, WritableLongChunk<Values> sizes) Get the previous size of the vectors at each row key.short
getUngroupedShort
(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one short element out of the vector.long
getUngroupedSize
(long groupRowKey) default void
getUngroupedSize
(ChunkSource.FillContext fillContext, RowSequence rowSequence, WritableLongChunk<Values> sizes) Get the size of the vectors at each row key.boolean
Does this particular ColumnSource support ungrouping?static boolean
isUngroupable
(ColumnSource<?> source) Returns true if the specified column is an UngroupableColumnSource, and it is ungroupable.static void
ungroupedPrevSizeByIteration
(UngroupableColumnSource ungroupableColumnSource, RowSequence rowSequence, WritableLongChunk<Values> sizes) Helper method for a naive implementation ofgetUngroupedPrevSize(ChunkSource.FillContext, RowSequence, WritableLongChunk)
.static void
ungroupedSizeByIteration
(UngroupableColumnSource ungroupableColumnSource, RowSequence rowSequence, WritableLongChunk<Values> sizes) Helper method for a naive implementation ofgetUngroupedSize(ChunkSource.FillContext, RowSequence, WritableLongChunk)
.
-
Method Details
-
isUngroupable
Returns true if the specified column is an UngroupableColumnSource, and it is ungroupable.- Parameters:
source
- the source to check- Returns:
- true if the column source is an UngroupableColumnSource and it is ungroupable
-
isUngroupable
boolean isUngroupable()Does this particular ColumnSource support ungrouping?- Returns:
true
if you can call the getUngrouped family of methods and get a valid answer
-
getUngroupedSize
long getUngroupedSize(long groupRowKey) -
getUngroupedPrevSize
long getUngroupedPrevSize(long groupRowKey) -
getUngroupedSize
default void getUngroupedSize(ChunkSource.FillContext fillContext, RowSequence rowSequence, WritableLongChunk<Values> sizes) Get the size of the vectors at each row key.This method is equivalent to calling
getUngroupedSize(long)
on each row key in the row sequence.- Parameters:
rowSequence
- the row keys to fetchsizes
- the sizes of the vectors
-
getUngroupedPrevSize
default void getUngroupedPrevSize(ChunkSource.FillContext fillContext, RowSequence rowSequence, WritableLongChunk<Values> sizes) Get the previous size of the vectors at each row key.This method is equivalent to calling
getUngroupedPrevSize(long)
on each row key in the row sequence.- Parameters:
rowSequence
- the row keys to fetchsizes
- the sizes of the vectors
-
getUngrouped
Reach into a grouped column source and pull one Object element out of the vector.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((ObjectVector)columnSource.get(groupRowKey)).get(offsetInGroup)
-
getUngroupedPrev
Reach into a grouped column source and pull one Object element out of the vector as of end of the previous update cycle.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((ObjectVector)columnSource.getPrev(groupRowKey)).get(offsetInGroup)
-
getUngroupedBoolean
Reach into a grouped column source and pull one Boolean element out of the vector.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((ObjectVector)columnSource.get(groupRowKey)).get(offsetInGroup)
-
getUngroupedPrevBoolean
Reach into a grouped column source and pull one Boolean element out of the vector as of end of the previous update cycle.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((ObjectVector)columnSource.getPrev(groupRowKey)).get(offsetInGroup)
-
getUngroupedDouble
double getUngroupedDouble(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one double element out of the vector.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((DoubleVector)columnSource.get(groupRowKey)).get(offsetInGroup)
-
getUngroupedPrevDouble
double getUngroupedPrevDouble(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one double element out of the vector as of end of the previous update cycle.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((DoubleVector)columnSource.getPrev(groupRowKey)).get(offsetInGroup)
-
getUngroupedFloat
float getUngroupedFloat(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one float element out of the vector.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((FloatVector)columnSource.get(groupRowKey)).get(offsetInGroup)
-
getUngroupedPrevFloat
float getUngroupedPrevFloat(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one float element out of the vector as of end of the previous update cycle.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((FloatVector)columnSource.getPrev(groupRowKey)).get(offsetInGroup)
-
getUngroupedByte
byte getUngroupedByte(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one byte element out of the vector.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((ByteVector)columnSource.get(groupRowKey)).get(offsetInGroup)
-
getUngroupedPrevByte
byte getUngroupedPrevByte(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one byte element out of the vector as of end of the previous update cycle.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((ByteVector)columnSource.getPrev(groupRowKey)).get(offsetInGroup)
-
getUngroupedChar
char getUngroupedChar(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one char element out of the vector.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((CharVector)columnSource.get(groupRowKey)).get(offsetInGroup)
-
getUngroupedPrevChar
char getUngroupedPrevChar(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one char element out of the vector as of end of the previous update cycle.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((CharVector)columnSource.getPrev(groupRowKey)).get(offsetInGroup)
-
getUngroupedShort
short getUngroupedShort(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one short element out of the vector.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((ShortVector)columnSource.get(groupRowKey)).get(offsetInGroup)
-
getUngroupedPrevShort
short getUngroupedPrevShort(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one short element out of the vector as of end of the previous update cycle.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((ShortVector)columnSource.getPrev(groupRowKey)).get(offsetInGroup)
-
getUngroupedInt
int getUngroupedInt(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one int element out of the vector.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((IntVector)columnSource.get(groupRowKey)).get(offsetInGroup)
-
getUngroupedPrevInt
int getUngroupedPrevInt(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one int element out of the vector as of end of the previous update cycle.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((IntVector)columnSource.getPrev(groupRowKey)).get(offsetInGroup)
-
getUngroupedLong
long getUngroupedLong(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one long element out of the vector.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((LongVector)columnSource.getLong(groupRowKey)).get(offsetInGroup)
-
getUngroupedPrevLong
long getUngroupedPrevLong(long groupRowKey, int offsetInGroup) Reach into a grouped column source and pull one long element out of the vector as of end of the previous update cycle.- Parameters:
groupRowKey
- The vector's row key in the grouped column sourceoffsetInGroup
- Positional offset within the vector atgroupRowKey
- Returns:
- Equivalent to ((LongVector)columnSource.getPrev(groupRowKey)).get(offsetInGroup)
-
ungroupedSizeByIteration
static void ungroupedSizeByIteration(UngroupableColumnSource ungroupableColumnSource, RowSequence rowSequence, WritableLongChunk<Values> sizes) Helper method for a naive implementation ofgetUngroupedSize(ChunkSource.FillContext, RowSequence, WritableLongChunk)
.- Parameters:
ungroupableColumnSource
- the ungroupable column sourcerowSequence
- the rowsequence of keys to determine vector sizessizes
- the output chunk of vector sizes
-
ungroupedPrevSizeByIteration
static void ungroupedPrevSizeByIteration(UngroupableColumnSource ungroupableColumnSource, RowSequence rowSequence, WritableLongChunk<Values> sizes) Helper method for a naive implementation ofgetUngroupedPrevSize(ChunkSource.FillContext, RowSequence, WritableLongChunk)
.- Parameters:
ungroupableColumnSource
- the ungroupable column sourcerowSequence
- the rowsequence of keys to determine vector sizessizes
- the output chunk of vector sizes
-