Interface ColumnRegionObject<DATA_TYPE,ATTR extends Any>
- All Superinterfaces:
ChunkSource<ATTR>
,ColumnRegion<ATTR>
,DefaultChunkSource<ATTR>
,FillContextMaker
,GetContextMaker
,Page<ATTR>
,PagingChunkSource<ATTR>
,Releasable
- All Known Subinterfaces:
ColumnRegionObject.SelfDictionaryRegion<DATA_TYPE,
ATTR>
- All Known Implementing Classes:
AppendOnlyFixedSizePageRegionObject
,ColumnRegionChunkDictionary
,ColumnRegionObject.Constant
,ColumnRegionObject.Null
,ColumnRegionObject.StaticPageStore
,DeferredColumnRegionObject
,ParquetColumnRegionObject
Column region interface for regions that support fetching objects.
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic final class
ColumnRegionObject.Constant<DATA_TYPE,
ATTR extends Any> static final class
static final class
ColumnRegionObject.Null<DATA_TYPE,
ATTR extends Any> static interface
static final class
Nested classes/interfaces inherited from interface io.deephaven.engine.table.ChunkSource
ChunkSource.FillContext, ChunkSource.GetContext
Nested classes/interfaces inherited from interface io.deephaven.engine.table.impl.DefaultChunkSource
DefaultChunkSource.SupportsContiguousGet<ATTR extends Any>, DefaultChunkSource.WithPrev<ATTR extends Any>
Nested classes/interfaces inherited from interface io.deephaven.engine.page.Page
Page.WithDefaults<ATTR extends Any>, Page.WithDefaultsForRepeatingValues<ATTR extends Any>
-
Field Summary
Fields inherited from interface io.deephaven.engine.table.ChunkSource
DEFAULT_FILL_INSTANCE, ZERO_LENGTH_CHUNK_SOURCE_ARRAY
-
Method Summary
Modifier and TypeMethodDescriptionstatic ColumnRegionLong<DictionaryKeys>
createConstantDictionaryKeysRegion
(long pageMask) static <DATA_TYPE,
ATTR extends Any>
ColumnRegionObject<DATA_TYPE,ATTR> createNull
(long pageMask) default boolean
gatherDictionaryValuesRowSet
(RowSet.SearchIterator keysToVisit, RowSequence.Iterator knownKeys, @NotNull RowSetBuilderSequential sequentialBuilder) Optional method that should only be used on regions returned bygetDictionaryValuesRegion()
.default ChunkType
Get the most suitableChunkType
for use with this ChunkSource.default ColumnRegionLong<DictionaryKeys>
default ColumnRegionObject<DATA_TYPE,
ATTR> getObject
(long elementIndex) Get a single object from this region.default DATA_TYPE
getObject
(@NotNull ChunkSource.FillContext context, long elementIndex) Get a single object from this region.default RegionVisitResult
supportsDictionaryFormat
(RowSet.SearchIterator keysToVisit) Check if this region can expose an alternate form as paired regions oflong
keys andDATA_TYPE
values covering all of its row keys inkeysToVisit
.Methods inherited from interface io.deephaven.engine.table.ChunkSource
fillChunk
Methods inherited from interface io.deephaven.engine.table.impl.sources.regioned.ColumnRegion
firstRowOffset, invalidate
Methods inherited from interface io.deephaven.engine.table.impl.DefaultChunkSource
getChunk, getChunk, getChunkByFilling, makeGetContext
Methods inherited from interface io.deephaven.engine.table.FillContextMaker
makeFillContext
Methods inherited from interface io.deephaven.engine.table.GetContextMaker
makeGetContext
Methods inherited from interface io.deephaven.engine.page.Page
advanceToNextPage, advanceToNextPage, advanceToNextPageAndGetPositionDistance, firstRow, getRowOffset
Methods inherited from interface io.deephaven.engine.page.PagingChunkSource
fillChunkAppend, makeFillContext, mask, maxRow
Methods inherited from interface io.deephaven.engine.table.Releasable
releaseCachedResources
-
Method Details
-
getObject
Get a single object from this region.- Parameters:
elementIndex
- Element row key in the table's address space- Returns:
- The object value at the specified element row key
-
getObject
Get a single object from this region.- Parameters:
context
- APagingContextHolder
to enable resource caching where suitable, with current region index pointing to this regionelementIndex
- Element row key in the table's address space- Returns:
- The object value at the specified element row key
-
supportsDictionaryFormat
Check if this region can expose an alternate form as paired regions oflong
keys andDATA_TYPE
values covering all of its row keys inkeysToVisit
.Both alternate regions must use the same or smaller row key space as this one. Indices fetched from the keys region must represent valid element indices in the values region. Values regions must support
gatherDictionaryValuesRowSet(RowSet.SearchIterator, RowSequence.Iterator, RowSetBuilderSequential)
.Use
getDictionaryKeysRegion()
to access the region of keys andgetDictionaryValuesRegion()
to access the region of values.- Parameters:
keysToVisit
- Iterator positioned at the first relevant row key belonging to this region. Will be advanced to after this region iftrue
is returned. No guarantee is made iffalse
is returned.- Returns:
- A
RegionVisitResult
specifyingFAILED
if this region cannot supply a dictionary,CONTINUE
if it can andkeysToVisit
is not exhausted, andCOMPLETE
if it can andkeysToVisit
is exhausted
-
gatherDictionaryValuesRowSet
default boolean gatherDictionaryValuesRowSet(@NotNull RowSet.SearchIterator keysToVisit, @NotNull RowSequence.Iterator knownKeys, @NotNull @NotNull RowSetBuilderSequential sequentialBuilder) Optional method that should only be used on regions returned bygetDictionaryValuesRegion()
. Gathers row keys representing the dictionary values for this region, excluding those already known to the caller. This is used to supportsymbol table
access.- Parameters:
keysToVisit
- A search iterator over the enclosing table address space (which must have the same regions at the same masks), positioned at a row key in this region. Used to identify regions to visit. Should be advanced to after this region as a side-effect.knownKeys
- An iterator over the previously-known row keys, positioned at the first known key in this region, or after the region's maximum key if no keys are known. Should be advanced to after this region as a side effect.sequentialBuilder
- Output builder; implementations should append ranges for row keys not found inknownKeys
- Returns:
- Whether
keysToVisit
has been exhausted - Throws:
UnsupportedOperationException
- If this region is incapable of gathering its dictionary values RowSet
-
getDictionaryKeysRegion
- Returns:
- A dictionary keys region as specified by
supportsDictionaryFormat(RowSet.SearchIterator)
- Throws:
UnsupportedOperationException
- If this region does not support dictionary format- ImplNote:
- Implementations should cache the result
-
getDictionaryValuesRegion
- Returns:
- A dictionary values region as specified by
supportsDictionaryFormat(RowSet.SearchIterator)
- Throws:
UnsupportedOperationException
- If this region does not support dictionary format- ImplNote:
- Implementations should cache the result
-
getChunkType
Description copied from interface:ChunkSource
Get the most suitableChunkType
for use with this ChunkSource.- Specified by:
getChunkType
in interfaceChunkSource<DATA_TYPE>
- Returns:
- The ChunkType
-
createNull
-
createConstantDictionaryKeysRegion
-