Class Containers

java.lang.Object
org.roaringbitmap.art.Containers

public class Containers extends Object
To support the largest 2^48 different keys,we almost need 2^18 Container arrays which holds 2^31 - 8 Container
  • Constructor Details

    • Containers

      public Containers()
      Constructor
  • Method Details

    • remove

      public void remove(long containerIdx)
      remove the container index Container
      Parameters:
      containerIdx - the container index
    • getContainer

      public Container getContainer(long idx)
      get the Container with the corresponding container index
      Parameters:
      idx - the container index
      Returns:
      the corresponding Container
    • addContainer

      public long addContainer(Container container)
      add a Container
      Parameters:
      container - a Container
      Returns:
      the container index
    • iterator

      public ContainerIterator iterator()
      a iterator of the Containers
      Returns:
      a iterator
    • replace

      public void replace(long containerIdx, Container freshContainer)
      replace the container index one with a fresh Container
      Parameters:
      containerIdx - the container index to replace
      freshContainer - the fresh one
    • replace

      public void replace(int firstLevelIdx, int secondLevelIdx, Container freshContainer)
      replace with a fresh Container
      Parameters:
      firstLevelIdx - the first level array index
      secondLevelIdx - the second level array index
      freshContainer - a fresh container
    • getContainerSize

      public long getContainerSize()
      the number of all the holding containers
      Returns:
      the container number
    • serializedSizeInBytes

      public long serializedSizeInBytes()
      Report the number of bytes required for serialization.
      Returns:
      The size in bytes
    • serialize

      public void serialize(DataOutput dataOutput) throws IOException
      Serialize the Containers
      Parameters:
      dataOutput - The destination DataOutput
      Throws:
      IOException - Signals that an I/O exception has occurred.
    • serialize

      public void serialize(ByteBuffer byteBuffer) throws IOException
      Serialize the Containers
      Parameters:
      byteBuffer - The destination ByteBuffer
      Throws:
      IOException - Signals that an I/O exception has occurred.
    • deserialize

      public void deserialize(DataInput dataInput) throws IOException
      Deserialize the byte stream to init this Containers
      Parameters:
      dataInput - The DataInput
      Throws:
      IOException - Signals that an I/O exception has occurred.
    • deserialize

      public void deserialize(ByteBuffer byteBuffer) throws IOException
      Deserialize the byte stream to init this Containers
      Parameters:
      byteBuffer - The DataInput
      Throws:
      IOException - Signals that an I/O exception has occurred.