Package io.deephaven.engine.page
Interface Page<ATTR extends Any>
- All Superinterfaces:
ChunkSource<ATTR>
,DefaultChunkSource<ATTR>
,FillContextMaker
,GetContextMaker
,PagingChunkSource<ATTR>
- All Known Subinterfaces:
ChunkPage<ATTR>
,ColumnRegion<ATTR>
,ColumnRegionByte<ATTR>
,ColumnRegionChar<ATTR>
,ColumnRegionDouble<ATTR>
,ColumnRegionFloat<ATTR>
,ColumnRegionInt<ATTR>
,ColumnRegionLong<ATTR>
,ColumnRegionObject<DATA_TYPE,
,ATTR> ColumnRegionObject.SelfDictionaryRegion<DATA_TYPE,
,ATTR> ColumnRegionReferencing<ATTR,
,REFERENCED_COLUMN_REGION> ColumnRegionShort<ATTR>
,Page.WithDefaults<ATTR>
,Page.WithDefaultsForRepeatingValues<ATTR>
- All Known Implementing Classes:
AppendOnlyFixedSizePageRegionByte
,AppendOnlyFixedSizePageRegionChar
,AppendOnlyFixedSizePageRegionDouble
,AppendOnlyFixedSizePageRegionFloat
,AppendOnlyFixedSizePageRegionInt
,AppendOnlyFixedSizePageRegionLong
,AppendOnlyFixedSizePageRegionObject
,AppendOnlyFixedSizePageRegionShort
,BooleanChunkPage
,ByteChunkPage
,CharChunkPage
,ChunkHolderPageBoolean
,ChunkHolderPageByte
,ChunkHolderPageChar
,ChunkHolderPageDouble
,ChunkHolderPageFloat
,ChunkHolderPageInt
,ChunkHolderPageLong
,ChunkHolderPageObject
,ChunkHolderPageShort
,ColumnChunkPageStore
,ColumnRegion.Null
,ColumnRegionByte.Constant
,ColumnRegionByte.Null
,ColumnRegionByte.StaticPageStore
,ColumnRegionChar.Constant
,ColumnRegionChar.Null
,ColumnRegionChar.StaticPageStore
,ColumnRegionChunkDictionary
,ColumnRegionDouble.Constant
,ColumnRegionDouble.Null
,ColumnRegionDouble.StaticPageStore
,ColumnRegionFloat.Constant
,ColumnRegionFloat.Null
,ColumnRegionFloat.StaticPageStore
,ColumnRegionInt.Constant
,ColumnRegionInt.Null
,ColumnRegionInt.StaticPageStore
,ColumnRegionLong.Constant
,ColumnRegionLong.Null
,ColumnRegionLong.StaticPageStore
,ColumnRegionObject.Constant
,ColumnRegionObject.DictionaryKeysWrapper
,ColumnRegionObject.Null
,ColumnRegionObject.StaticPageStore
,ColumnRegionReferencing.Null
,ColumnRegionReferencingImpl
,ColumnRegionShort.Constant
,ColumnRegionShort.Null
,ColumnRegionShort.StaticPageStore
,DeferredColumnRegionBase
,DeferredColumnRegionChar
,DeferredColumnRegionDouble
,DeferredColumnRegionFloat
,DeferredColumnRegionInt
,DeferredColumnRegionLong
,DeferredColumnRegionObject
,DeferredColumnRegionReferencing
,DeferredColumnRegionShort
,DoubleChunkPage
,FloatChunkPage
,GenericColumnRegionBase
,IntChunkPage
,LongChunkPage
,ObjectChunkPage
,ParquetColumnRegionBase
,ParquetColumnRegionByte
,ParquetColumnRegionChar
,ParquetColumnRegionDouble
,ParquetColumnRegionFloat
,ParquetColumnRegionInt
,ParquetColumnRegionLong
,ParquetColumnRegionObject
,ParquetColumnRegionShort
,ShortChunkPage
Pages are
PagingChunkSources
that can supply values from a subset of a contiguous block of
row key space beginning at firstRowOffset()
and continuing to firstRowOffset()
+
PagingChunkSource.maxRow(long)
. Not all row keys within the range may be valid; that is, pages may be sparse.
Pages may be held within one or more PageStore
instances. The PageStore is responsible for determining which
row keys in absolute space are mapped to a particular Page. Pages need only concern themselves with lower order bits
of the row keys they are asked for, after applying their PagingChunkSource.mask()
.
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic interface
Page.WithDefaults<ATTR extends Any>
Helper defaults for general pages.static interface
Page.WithDefaultsForRepeatingValues<ATTR extends Any>
Helper defaults for pages that represent a repeating value, e.g.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>
-
Field Summary
Fields inherited from interface io.deephaven.engine.table.ChunkSource
DEFAULT_FILL_INSTANCE, ZERO_LENGTH_CHUNK_SOURCE_ARRAY
-
Method Summary
Modifier and TypeMethodDescriptiondefault void
advanceToNextPage
(RowSequence.Iterator rowSequenceIterator) AssumingrowSequenceIterator
is position at its first row key on this page, consume all keys on this page.default boolean
advanceToNextPage
(RowSet.SearchIterator searchIterator) AssumingsearchIterator
is position at its first row key on this page, consume all keys on this page.default long
advanceToNextPageAndGetPositionDistance
(RowSequence.Iterator rowSequenceIterator) AssumingrowSequenceIterator
is position at its first row key on this page, consume all keys on this page and return the number of keys consumed.default long
firstRow
(long rowKey) long
default long
getRowOffset
(long rowKey) Methods inherited from interface io.deephaven.engine.table.ChunkSource
fillChunk, getChunkType
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.PagingChunkSource
fillChunkAppend, makeFillContext, mask, maxRow
-
Method Details
-
firstRowOffset
long firstRowOffset()- Returns:
- the first row of this page, after applying the
PagingChunkSource.mask()
, which refers to the first row of this page.
-
firstRow
- Parameters:
rowKey
- Any row key contained on this page- Returns:
- The first row key of this page, located in the same way as
rowKey
-
getRowOffset
- Returns:
- The offset for the given row key in this page, in [0,
maxRow(rowKey)
].
-
advanceToNextPage
AssumingrowSequenceIterator
is position at its first row key on this page, consume all keys on this page.- Parameters:
rowSequenceIterator
- The iterator to advance
-
advanceToNextPageAndGetPositionDistance
@FinalDefault default long advanceToNextPageAndGetPositionDistance(@NotNull RowSequence.Iterator rowSequenceIterator) AssumingrowSequenceIterator
is position at its first row key on this page, consume all keys on this page and return the number of keys consumed.- Parameters:
rowSequenceIterator
- The iterator to advance
-
advanceToNextPage
AssumingsearchIterator
is position at its first row key on this page, consume all keys on this page.- Parameters:
searchIterator
- The iterator to advance- Returns:
- The result of
RowSet.SearchIterator.advance(long)
-