Interface RegionedPageStore<ATTR extends Any,INNER_ATTR extends ATTR,REGION_TYPE extends Page<INNER_ATTR>>
- All Superinterfaces:
ChunkSource<ATTR>,DefaultChunkSource<ATTR>,DefaultChunkSource.SupportsContiguousGet<ATTR>,FillContextMaker,GetContextMaker,PageStore<ATTR,,INNER_ATTR, REGION_TYPE> PagingChunkSource<ATTR>
- All Known Implementing Classes:
ColumnRegionByte.StaticPageStore,ColumnRegionChar.StaticPageStore,ColumnRegionDouble.StaticPageStore,ColumnRegionFloat.StaticPageStore,ColumnRegionInt.StaticPageStore,ColumnRegionLong.StaticPageStore,ColumnRegionObject.StaticPageStore,ColumnRegionShort.StaticPageStore,RegionedPageStore.Static
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final classClass to calculate and encapsulate the parameters of a RegionedPageStore.static classRegionedPageStore.Static<ATTR extends Any,INNER_ATTR extends ATTR, REGION_TYPE extends Page<INNER_ATTR>> A regioned page store for use when the full set of regions and their sizes are known.Nested classes/interfaces inherited from interface io.deephaven.engine.table.ChunkSource
ChunkSource.FillContext, ChunkSource.GetContextNested classes/interfaces inherited from interface io.deephaven.engine.table.impl.DefaultChunkSource
DefaultChunkSource.SupportsContiguousGet<ATTR extends Any>, DefaultChunkSource.WithPrev<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 TypeMethodDescriptiondefault REGION_TYPEgetPageContaining(@Nullable ChunkSource.FillContext fillContext, long rowKey) getRegion(int regionIndex) Map from a region rowSet to its corresponding region.intGet the number of regions.default intgetRegionIndex(long elementIndex) Get the region index.default REGION_TYPElookupRegion(long elementRowKey) Perform region lookup for an element row key.default longmask()This mask is applied toRowSequenceswhich are passed intoDefaultChunkSource.getChunk(io.deephaven.engine.table.ChunkSource.GetContext, io.deephaven.engine.rowset.RowSequence),ChunkSource.fillChunk(io.deephaven.engine.table.ChunkSource.FillContext, io.deephaven.chunk.WritableChunk<? super ATTR>, io.deephaven.engine.rowset.RowSequence), andPagingChunkSource.fillChunkAppend(FillContext, WritableChunk, RowSequence.Iterator).default longdefault intMethods inherited from interface io.deephaven.engine.table.ChunkSource
getChunkTypeMethods inherited from interface io.deephaven.engine.table.impl.DefaultChunkSource
getChunkByFilling, makeGetContextMethods inherited from interface io.deephaven.engine.table.FillContextMaker
makeFillContextMethods inherited from interface io.deephaven.engine.table.GetContextMaker
makeGetContextMethods inherited from interface io.deephaven.engine.page.PageStore
doFillChunkAppend, fillChunk, fillChunkAppend, getChunk, getChunkMethods inherited from interface io.deephaven.engine.page.PagingChunkSource
makeFillContext, maxRow
-
Method Details
-
parameters
RegionedPageStore.Parameters parameters()- Returns:
- The parameters object that describes this regioned page store
-
mask
Description copied from interface:PagingChunkSourceThis mask is applied toRowSequenceswhich are passed intoDefaultChunkSource.getChunk(io.deephaven.engine.table.ChunkSource.GetContext, io.deephaven.engine.rowset.RowSequence),ChunkSource.fillChunk(io.deephaven.engine.table.ChunkSource.FillContext, io.deephaven.chunk.WritableChunk<? super ATTR>, io.deephaven.engine.rowset.RowSequence), andPagingChunkSource.fillChunkAppend(FillContext, WritableChunk, RowSequence.Iterator). This allowsPagingChunkSourcesto be cached and reused even if they are properly relocated in key space.- Specified by:
maskin interfacePagingChunkSource<ATTR extends Any>- Returns:
- The mask for this
PagingChunkSource, which must be a bitmask representing some number of lower order bits of a long.
-
regionMask
- Returns:
- The mask that should be applied to
RowSequenceindices when calculating their address within a region
-
regionMaskNumBits
- Returns:
- The number of bits masked by
regionMask()
-
getRegionIndex
Get the region index.- Returns:
- The region index for an element row key.
-
getRegionCount
int getRegionCount()Get the number of regions.- Returns:
- The number of regions that have been added
-
getRegion
Map from a region rowSet to its corresponding region.- Parameters:
regionIndex- The region index- Returns:
- The region for the supplied region index
-
lookupRegion
Perform region lookup for an element row key.- Parameters:
elementRowKey- The element row key to get the region for- Returns:
- The appropriate region
-
getPageContaining
@NotNull @FinalDefault default REGION_TYPE getPageContaining(@Nullable @Nullable ChunkSource.FillContext fillContext, long rowKey) - Specified by:
getPageContainingin interfacePageStore<ATTR extends Any,INNER_ATTR extends ATTR, REGION_TYPE extends Page<INNER_ATTR>> - Parameters:
fillContext- The fill context to use; may benullif the calling code does not have a fill contextrowKey- The row key to get the page for- Returns:
- The page containing
rowKey, after applyingPagingChunkSource.mask().
-