Interface SsmBackedColumnSource<K extends SegmentedSortedMultiSet,T extends Vector>

Type Parameters:
K - The SSM Type
T - The provided Array type
All Superinterfaces:
ChunkSource<Values>, ChunkSource.WithPrev<Values>, ColumnSource<T>, ElementSource<T>, FillContextMaker, GetContextMaker, Releasable, TupleExporter<T>, TupleSource<T>
All Known Implementing Classes:
ByteSsmBackedSource, CharSsmBackedSource, DoubleSsmBackedSource, FloatSsmBackedSource, IntSsmBackedSource, LongSsmBackedSource, ObjectSsmBackedSource, ShortSsmBackedSource

public interface SsmBackedColumnSource<K extends SegmentedSortedMultiSet,T extends Vector> extends ColumnSource<T>
A ColumnSource that provides vectors of type T, backed by a same typed SegmentedSortedMultiSet.
  • Method Details

    • getUnderlyingSource

      ObjectArraySource<K> getUnderlyingSource()
    • getCurrentSsm

      K getCurrentSsm(long key)
      Get the current SSM at the specified key. This does not permute it in any way.
      Parameters:
      key - the key to get the ssm for.
      Returns:
      the SSM
    • getOrCreate

      K getOrCreate(long key)
      Get the ssm at the specified key, creating one if none existed. This method will update the current previous tracking state of the SSM.
      Parameters:
      key - the key to get the ssm for.
      Returns:
      the SSM at the key, or a new one.
    • clear

      void clear(long key)
      Set the SSM at the specified key to null
      Parameters:
      key - the key to get the ssm for.
    • ensureCapacity

      void ensureCapacity(long capacity)
      Ensure the source has at least `capacity` capacity
      Parameters:
      capacity - the capacity to ensure.
    • clearDeltas

      void clearDeltas(RowSet indices)
      Clear out any tracked deltas from recent computations.
      Parameters:
      indices - the set of indices to clear deltas for.