Package com.qfs.chunk

Interface IChunkSingleValue<K>

Type Parameters:
K - the type of primitive data stored by the chunk
All Superinterfaces:
IArray, IArrayReader, IArrayWriter, IChunk<K>, IMemoryMonitored, IWritableArray
All Known Implementing Classes:
ChunkSingleBoolean, ChunkSingleDouble, ChunkSingleFloat, ChunkSingleInteger, ChunkSingleLong, ChunkSingleObject, ChunkSingleTimestamp, ChunkSingleVector

public interface IChunkSingleValue<K> extends IChunk<K>
A chunk that stores a single value.
Author:
ActiveViam
  • Method Details

    • matches

      boolean matches(Object value)
      Returns whether the value matches the value stored in the chunk or not.
      Parameters:
      value - the value to match
      Returns:
      true if the value matches the value stored in the chunk, false otherwise
    • getValue

      K getValue()
      Returns the stored value.
      Returns:
      the stored value
    • freeRow

      default void freeRow(int row)
      Description copied from interface: IChunk
      Clears the data stored at a given row.
      Specified by:
      freeRow in interface IChunk<K>
      Parameters:
      row - the row
    • createArrayCursor

      default IArrayCursor createArrayCursor()
      Description copied from interface: IArray
      Creates a new read-only cursor that can be moved up and down the array. This cursor delegates all reading calls to the underlying array.
      Specified by:
      createArrayCursor in interface IArray
      Specified by:
      createArrayCursor in interface IChunk<K>
      Specified by:
      createArrayCursor in interface IWritableArray
      Returns:
      the cursor, stationed at index 0 of the array
    • findRowsEqualTo

      default void findRowsEqualTo(Object value, long epoch, IChunkLong version, int chunkBase, int chunkLimit, IRowMapping mapping, int limit, IBitmap result)
      Description copied from interface: IChunk
      Scans all the records and returns all the rows matching with the sought object in the chunk.
      Specified by:
      findRowsEqualTo in interface IChunk<K>
      Parameters:
      value - the sought object
      epoch - the epoch will define which rows are read. Only rows created before or deleted after this epoch will be read
      version - the column holding the version number at which each row has been inserted or removed
      chunkBase - the offset in the result, the offset is the row number in the store corresponding to the first row in this chunk
      chunkLimit - the number of rows to iterate in this chunk, it should not be bigger than the chunk size
      mapping - this mapping is only used when this chunk is a SparseChunk, and it is a map of the global row chunk to the underlying chunk, otherwise is null
      limit - the size limit for the result of this search, it can be 0 for a non limit size result
      result - a bitmap to add the row numbers matching with the sought object
    • findRowsEqualTo

      default void findRowsEqualTo(Object value, int chunkBase, int chunkLimit, IRowMapping mapping, int limit, IBitmap result)
      Description copied from interface: IChunk
      Scans all the records and returns all the rows matching with the sought object in the chunk.
      Specified by:
      findRowsEqualTo in interface IChunk<K>
      Parameters:
      value - the sought object
      chunkBase - the offset in the result, the offset is the row number in the store corresponding to the first row in this chunk
      chunkLimit - the number of rows to iterate in this chunk, it should not be bigger than the chunk size
      mapping - this mapping is only used when this chunk is a SparseChunk, and it is a map of the global row chunk to the underlying chunk, otherwise is null
      limit - the size limit for the result of this search, it can be 0 for a non limit size result
      result - a bitmap to add the row numbers matching with the sought object
    • findRowsEqualTo

      default void findRowsEqualTo(Object value, IIntIterator filter, int chunkBase, IRowMapping mapping, int limit, IBitmap result)
      Description copied from interface: IChunk
      Scans all the records and returns all the rows matching with the sought object in the chunk.
      Specified by:
      findRowsEqualTo in interface IChunk<K>
      Parameters:
      value - the sought object
      filter - all the row numbers that should be considered for this research
      chunkBase - the offset in the result, the offset is the row number in the store corresponding to the first row in this chunk
      mapping - this mapping is only used when this chunk is a SparseChunk, and it is a map of the global row chunk to the underlying chunk, otherwise is null
      limit - the size limit for the result of this search, it can be 0 for a non limit size result
      result - a bitmap to add the row numbers matching with the sought object
    • findRowsInSet

      default void findRowsInSet(Set<Object> values, long epoch, IChunkLong version, int chunkBase, int chunkLimit, IRowMapping mapping, int limit, IBitmap result)
      Description copied from interface: IChunk
      Scans all the records and returns all the rows matching with any object in the set of sought objects in the chunk.
      Specified by:
      findRowsInSet in interface IChunk<K>
      Parameters:
      values - the set of sought objects
      epoch - the epoch will define which rows are read, only rows created before or deleted after this epoch will be read
      version - the column holding the version number at which each row has been inserted or removed
      chunkBase - the offset in the result, the offset is the row number in the store corresponding to the first row in this chunk
      chunkLimit - the number of rows to iterate in this chunk, it should not be bigger than the chunk size
      mapping - this mapping is only used when this chunk is a SparseChunk, and it is a map of the global row chunk to the underlying chunk, otherwise is null
      limit - the size limit for the result of this search, it can be 0 for a non limit size result
      result - a bitmap to add the row numbers matching with any object in the set of sought objects
    • findRowsInSet

      default void findRowsInSet(Set<Object> values, int chunkBase, int chunkLimit, IRowMapping mapping, int limit, IBitmap result)
      Description copied from interface: IChunk
      Scans all the records and returns all the rows matching with any object in the set of sought objects in the chunk.
      Specified by:
      findRowsInSet in interface IChunk<K>
      Parameters:
      values - the set of sought objects
      chunkBase - the offset in the result, the offset is the row number in the store corresponding to the first row in this chunk
      chunkLimit - the number of rows to iterate in this chunk, it should not be bigger than the chunk size
      mapping - this mapping is only used when this chunk is a SparseChunk, and it is a map of the global row chunk to the underlying chunk, otherwise is null
      limit - the size limit for the result of this search, it can be 0 for a non limit size result
      result - a bitmap to add the row numbers matching with any object in the set of sought objects
    • findRowsInSet

      default void findRowsInSet(Set<Object> values, IIntIterator filter, int chunkBase, IRowMapping mapping, int limit, IBitmap result)
      Description copied from interface: IChunk
      Scans all the records and returns all the rows matching with any object in the set of sought objects in the chunk.
      Specified by:
      findRowsInSet in interface IChunk<K>
      Parameters:
      values - the set of sought objects
      filter - all the row numbers that should be considered for this research
      chunkBase - the offset in the result, the offset is the row number in the store corresponding to the first row in this chunk
      mapping - this mapping is only used when this chunk is a SparseChunk, and it is a map of the global row chunk to the underlying chunk, otherwise is null
      limit - the size limit for the result of this search, it can be 0 for a non limit size result
      result - a bitmap to add the row numbers matching with any object in the set of sought objects
    • findRowsInTransactionEqualTo

      default void findRowsInTransactionEqualTo(Object value, IChunkLong version, int chunkBase, int chunkLimit, IRowMapping mapping, int limit, IBitmap result)
      Description copied from interface: IChunk
      Scans all the records and returns all the rows matching with the sought object in the chunk.
      Specified by:
      findRowsInTransactionEqualTo in interface IChunk<K>
      Parameters:
      value - the sought object
      version - the column holding the version number at which each row has been inserted or removed corresponding to this chunk
      chunkBase - the offset in the result, the offset is the row number in the store corresponding to the first row in this chunk
      chunkLimit - the number of rows to iterate in this chunk, it should not be bigger than the chunk size
      mapping - this mapping is only used when this chunk is a SparseChunk, and it is a map of the global row chunk to the underlying chunk, otherwise is null
      limit - the size limit for the result of this search, it can be 0 for a non limit size result
      result - a bitmap to add the row numbers matching with the sought object
    • findRowsInTransactionEqualTo

      default void findRowsInTransactionEqualTo(Object value, IChunkLong version, IBitmap deletions, int chunkBase, int chunkLimit, IRowMapping mapping, int limit, IBitmap result)
      Description copied from interface: IChunk
      Scans all the records and returns all the rows matching with the sought object in the chunk.
      Specified by:
      findRowsInTransactionEqualTo in interface IChunk<K>
      Parameters:
      value - the sought object
      version - the column holding the version number at which each row has been inserted or removed corresponding to this chunk
      deletions - a bitmap of deleted rows, that should not be scanned
      chunkBase - the offset in the result, the offset is the row number in the store corresponding to the first row in this chunk
      chunkLimit - the number of rows to iterate in this chunk, it should not be bigger than the chunk size
      mapping - this mapping is only used when this chunk is a SparseChunk, and it is a map of the global row chunk to the underlying chunk, otherwise is null
      limit - the size limit for the result of this search, it can be 0 for a non limit size result
      result - a bitmap to add the row numbers matching with the sought object
    • findRowsInTransactionEqualTo

      default void findRowsInTransactionEqualTo(Object value, IIntIterator filter, IBitmap deletions, int chunkBase, IRowMapping mapping, int limit, IBitmap result)
      Description copied from interface: IChunk
      Scans all the records and returns all the rows matching with the sought object in the chunk.
      Specified by:
      findRowsInTransactionEqualTo in interface IChunk<K>
      Parameters:
      value - the sought object
      filter - all the row numbers that should be considered for this research
      deletions - a bitmap of deleted rows, that should not be scanned
      chunkBase - the offset in the result, the offset is the row number in the store corresponding to the first row in this chunk
      mapping - this mapping is only used when this chunk is a SparseChunk, and it is a map of the global row chunk to the underlying chunk, otherwise is null
      limit - the size limit for the result of this search, it can be 0 for a non limit size result
      result - a bitmap to add the row numbers matching with the sought object
    • findRowsInTransactionInSet

      default void findRowsInTransactionInSet(Set<Object> values, IChunkLong version, int chunkBase, int chunkLimit, IRowMapping mapping, int limit, IBitmap result)
      Description copied from interface: IChunk
      Scans all the records and returns all the rows matching with any object in the set of sought objects in the chunk.
      Specified by:
      findRowsInTransactionInSet in interface IChunk<K>
      Parameters:
      values - the set of sought objects
      version - the column holding the version number at which each row has been inserted or removed corresponding to this chunk
      chunkBase - the offset in the result, the offset is the row number in the store corresponding to the first row in this chunk
      chunkLimit - the number of rows to iterate in this chunk, it should not be bigger than the chunk size
      mapping - this mapping is only used when this chunk is a SparseChunk, and it is a map of the global row chunk to the underlying chunk, otherwise is null
      limit - the size limit for the result of this search, it can be 0 for a non limit size result
      result - a bitmap to add the row numbers matching with any object in the set of sought objects
    • findRowsInTransactionInSet

      default void findRowsInTransactionInSet(Set<Object> values, IChunkLong version, IBitmap deletions, int chunkBase, int chunkLimit, IRowMapping mapping, int limit, IBitmap result)
      Description copied from interface: IChunk
      Scans all the records and returns all the rows matching with any object in the set of sought objects in the chunk.
      Specified by:
      findRowsInTransactionInSet in interface IChunk<K>
      Parameters:
      values - the set of sought objects
      version - the column holding the version number at which each row has been inserted or removed corresponding to this chunk
      deletions - a bitmap of deleted rows, that should not be scanned
      chunkBase - the offset in the result, the offset is the row number in the store corresponding to the first row in this chunk
      chunkLimit - the number of rows to iterate in this chunk, it should not be bigger than the chunk size
      mapping - this mapping is only used when this chunk is a SparseChunk, and it is a map of the global row chunk to the underlying chunk, otherwise is null
      limit - the size limit for the result of this search, it can be 0 for a non limit size result
      result - a bitmap to add the row numbers matching with any object in the set of sought objects
    • findRowsInTransactionInSet

      default void findRowsInTransactionInSet(Set<Object> values, IIntIterator filter, IBitmap deletions, int chunkBase, IRowMapping mapping, int limit, IBitmap result)
      Description copied from interface: IChunk
      Scans all the records and returns all the rows matching with any object in the set of sought objects in the chunk.
      Specified by:
      findRowsInTransactionInSet in interface IChunk<K>
      Parameters:
      values - the set of sought objects
      filter - all the row numbers that should be considered for this research
      deletions - a bitmap of deleted rows, that should not be scanned
      chunkBase - the offset in the result, the offset is the row number in the store corresponding to the first row in this chunk
      mapping - this mapping is only used when this chunk is a SparseChunk, and it is a map of the global row chunk to the underlying chunk, otherwise is null
      limit - the size limit for the result of this search, it can be 0 for a non limit size result
      result - a bitmap to add the row numbers matching with any object in the set of sought objects