Package org.vast.data

Class AbstractDataBlock

java.lang.Object
org.vast.data.AbstractDataBlock
All Implemented Interfaces:
Serializable, DataBlock
Direct Known Subclasses:
DataBlockBoolean, DataBlockByte, DataBlockCompressed, DataBlockDouble, DataBlockFloat, DataBlockInt, DataBlockList, DataBlockLong, DataBlockMixed, DataBlockParallel, DataBlockShort, DataBlockString, DataBlockTuple, DataBlockUByte, DataBlockUInt, DataBlockUShort

public abstract class AbstractDataBlock extends Object implements DataBlock
See Also:
  • Field Details

    • atomCount

      protected int atomCount
    • startIndex

      protected int startIndex
  • Constructor Details

    • AbstractDataBlock

      public AbstractDataBlock()
  • Method Details

    • copy

      public abstract AbstractDataBlock copy()
      Shallow copy of datablock structure The underlying object is shared
      Specified by:
      copy in interface DataBlock
    • renew

      public abstract AbstractDataBlock renew()
      Regenerate an identical datablock of same size with a new underlying object
      Specified by:
      renew in interface DataBlock
      Returns:
      new data block
    • clone

      public abstract AbstractDataBlock clone()
      Full copy of datablock structure and values A new underlying object is created with the same values
      Specified by:
      clone in interface DataBlock
      Overrides:
      clone in class Object
    • getUnderlyingObject

      public abstract Object getUnderlyingObject()
      Allow direct access to underlying object carrying the data (usually a primitive array or composite)
      Specified by:
      getUnderlyingObject in interface DataBlock
      Returns:
      underlying object
    • setUnderlyingObject

      public abstract void setUnderlyingObject(Object obj)
      Allows to set the underlying object directly
      Specified by:
      setUnderlyingObject in interface DataBlock
      Parameters:
      obj -
    • getAtomCount

      public int getAtomCount()
      Returns number of scalar values in this DataBlock
      Specified by:
      getAtomCount in interface DataBlock
    • updateAtomCount

      public void updateAtomCount()
      Recompute atom count after new child blocks have been added
      Specified by:
      updateAtomCount in interface DataBlock
    • toString

      public String toString()
      Overrides:
      toString in class Object