Package org.apache.lucene.util.packed

# Class DirectReader

java.lang.Object
org.apache.lucene.util.packed.DirectReader

public class DirectReader extends Object
Retrieves an instance previously written by `DirectWriter`

Example usage:

       int bitsPerValue = DirectWriter.bitsRequired(100);
       IndexInput in = dir.openInput("packed", IOContext.DEFAULT);
       LongValues values = DirectReader.getInstance(in.randomAccessSlice(start, end), bitsPerValue);
       for (int i = 0; i < numValues; i++) {
         long value = values.get(i);
       }

See Also:
  - `DirectWriter`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DirectReader()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static LongValues`
  `getInstance(RandomAccessInput slice, int bitsPerValue)`
  Retrieves an instance from the specified slice written decoding `bitsPerValue` for each value
  `static LongValues`
  `getInstance(RandomAccessInput slice, int bitsPerValue, long offset)`
  Retrieves an instance from the specified `offset` of the given slice decoding `bitsPerValue` for each value
  `static LongValues`
  `getMergeInstance(RandomAccessInput slice, int bitsPerValue, long numValues)`
  Retrieves an instance that is specialized for merges and is typically faster at sequential access but slower at random access.
  `static LongValues`
  `getMergeInstance(RandomAccessInput slice, int bitsPerValue, long baseOffset, long numValues)`
  Retrieves an instance that is specialized for merges and is typically faster at sequential access.

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

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

- ## Constructor Details

  - ### DirectReader

    public DirectReader()

- ## Method Details

  - ### getInstance

    public static LongValues getInstance(RandomAccessInput slice, int bitsPerValue)
    Retrieves an instance from the specified slice written decoding `bitsPerValue` for each value

  - ### getInstance

    public static LongValues getInstance(RandomAccessInput slice, int bitsPerValue, long offset)
    Retrieves an instance from the specified `offset` of the given slice decoding `bitsPerValue` for each value

  - ### getMergeInstance

    public static LongValues getMergeInstance(RandomAccessInput slice, int bitsPerValue, long numValues)
    Retrieves an instance that is specialized for merges and is typically faster at sequential access but slower at random access.

  - ### getMergeInstance

    public static LongValues getMergeInstance(RandomAccessInput slice, int bitsPerValue, long baseOffset, long numValues)
    Retrieves an instance that is specialized for merges and is typically faster at sequential access.