Package org.apache.lucene.util.bkd

# Class HeapPointWriter

java.lang.Object
org.apache.lucene.util.bkd.HeapPointWriter

All Implemented Interfaces:
  `Closeable`, `AutoCloseable`, `PointWriter`

public final class HeapPointWriter extends Object implements PointWriter
Utility class to write new points into in-heap arrays.

NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `HeapPointWriter(BKDConfig config, int size)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `append(byte[] packedValue, int docID)`
  Add a new point from the packed value and docId
  `void`
  `append(PointValue pointValue)`
  Add a new point from a `PointValue`
  `void`
  `close()`
  `int`
  `computeCardinality(int from, int to, int[] commonPrefixLengths)`
  Computes the cardinality of the points between `from` tp `to`
  `long`
  `count()`
  Return the number of points in this writer
  `void`
  `destroy()`
  Removes any temp files behind this writer
  `PointValue`
  `getPackedValueSlice(int index)`
  Returns a reference, in `result`, to the byte[] slice holding this value
  `PointReader`
  `getReader(long start, long length)`
  Returns a `PointReader` iterator to step through all previously added points
  `String`
  `toString()`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### HeapPointWriter

    public HeapPointWriter(BKDConfig config, int size)

- ## Method Details

  - ### getPackedValueSlice

    public PointValue getPackedValueSlice(int index)
    Returns a reference, in `result`, to the byte[] slice holding this value

  - ### append

    public void append(byte[] packedValue, int docID)
    Description copied from interface: `PointWriter`
    Add a new point from the packed value and docId
    Specified by:
      `append` in interface `PointWriter`

  - ### append

    public void append(PointValue pointValue)
    Description copied from interface: `PointWriter`
    Add a new point from a `PointValue`
    Specified by:
      `append` in interface `PointWriter`

  - ### computeCardinality

    public int computeCardinality(int from, int to, int[] commonPrefixLengths)
    Computes the cardinality of the points between `from` tp `to`

  - ### count

    public long count()
    Description copied from interface: `PointWriter`
    Return the number of points in this writer
    Specified by:
      `count` in interface `PointWriter`

  - ### getReader

    public PointReader getReader(long start, long length)
    Description copied from interface: `PointWriter`
    Returns a `PointReader` iterator to step through all previously added points
    Specified by:
      `getReader` in interface `PointWriter`

  - ### close

    public void close()
    Specified by:
      `close` in interface `AutoCloseable`
    Specified by:
      `close` in interface `Closeable`

  - ### destroy

    public void destroy()
    Description copied from interface: `PointWriter`
    Removes any temp files behind this writer
    Specified by:
      `destroy` in interface `PointWriter`

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`