Interface CompactKernel
- All Known Implementing Classes:
BooleanCompactKernel
,ByteCompactKernel
,CharCompactKernel
,DoubleCompactKernel
,FloatCompactKernel
,IntCompactKernel
,LongCompactKernel
,ObjectCompactKernel
,ShortCompactKernel
public interface CompactKernel
-
Method Summary
Modifier and TypeMethodDescriptionvoid
compact
(WritableChunk<? extends Any> values, BooleanChunk<Any> retainValues) Compacts values into the front of the chunk, retaining only values where the parallel retainValues chunk has a true value.default void
compactAndCount
(WritableChunk<? extends Values> valueChunk, WritableIntChunk<ChunkLengths> counts) Sort valuesChunk, eliminate duplicates, and write the number of times a value occurred into the parallel slot within counts.void
compactAndCount
(WritableChunk<? extends Values> valueChunk, WritableIntChunk<ChunkLengths> counts, boolean countNull) Sort valuesChunk, eliminate duplicates, and write the number of times a value occurred into the parallel slot within counts.default void
compactAndCount
(WritableChunk<? extends Values> valueChunk, WritableIntChunk<ChunkLengths> counts, IntChunk<ChunkPositions> startPositions, WritableIntChunk<ChunkLengths> lengths) For each run in valuesChunk, sort it, eliminate duplicates, and write the number of times a value occurred into the parallel slot within counts.void
compactAndCount
(WritableChunk<? extends Values> valueChunk, WritableIntChunk<ChunkLengths> counts, IntChunk<ChunkPositions> startPositions, WritableIntChunk<ChunkLengths> lengths, boolean countNull) For each run in valuesChunk, sort it, eliminate duplicates, and write the number of times a value occurred into the parallel slot within counts.static CompactKernel
makeCompact
(ChunkType chunkType)
-
Method Details
-
compact
Compacts values into the front of the chunk, retaining only values where the parallel retainValues chunk has a true value.- Parameters:
values
- a chunk of values, input and outputretainValues
- the values to retain
-
compactAndCount
default void compactAndCount(WritableChunk<? extends Values> valueChunk, WritableIntChunk<ChunkLengths> counts) Sort valuesChunk, eliminate duplicates, and write the number of times a value occurred into the parallel slot within counts. null values are removed from the chunk.- Parameters:
valueChunk
- a chunk of values, input and outputcounts
- an output chunk parallel to valueChunk with the number of times a value occurred
-
compactAndCount
void compactAndCount(WritableChunk<? extends Values> valueChunk, WritableIntChunk<ChunkLengths> counts, boolean countNull) Sort valuesChunk, eliminate duplicates, and write the number of times a value occurred into the parallel slot within counts.- Parameters:
valueChunk
- a chunk of values, input and outputcounts
- an output chunk parallel to valueChunk with the number of times a value occurredcountNull
- if the compaction should count nulls or not
-
compactAndCount
default void compactAndCount(WritableChunk<? extends Values> valueChunk, WritableIntChunk<ChunkLengths> counts, IntChunk<ChunkPositions> startPositions, WritableIntChunk<ChunkLengths> lengths) For each run in valuesChunk, sort it, eliminate duplicates, and write the number of times a value occurred into the parallel slot within counts. null values are removed from the chunk.- Parameters:
valueChunk
- a chunk of values, input and outputcounts
- an output chunk parallel to valueChunk with the number of times a value occurredstartPositions
- the start of each runlengths
- the length of each run, input and output
-
compactAndCount
void compactAndCount(WritableChunk<? extends Values> valueChunk, WritableIntChunk<ChunkLengths> counts, IntChunk<ChunkPositions> startPositions, WritableIntChunk<ChunkLengths> lengths, boolean countNull) For each run in valuesChunk, sort it, eliminate duplicates, and write the number of times a value occurred into the parallel slot within counts.- Parameters:
valueChunk
- a chunk of values, input and outputcounts
- an output chunk parallel to valueChunk with the number of times a value occurredstartPositions
- the start of each runlengths
- the length of each run, input and outputcountNull
- if the compaction should count nulls or not
-
makeCompact
-