## Uses of Interface
org.apache.lucene.store.RandomAccessInput

- Packages that use RandomAccessInput
  Package | Description
  --- | ---
  org.apache.lucene.codecs.lucene90 | Lucene 9.0 file format.
  org.apache.lucene.store | Binary i/o API, used for all index data.
  org.apache.lucene.util.packed | Packed integer arrays and streams.

- - ### Uses of RandomAccessInput in org.apache.lucene.codecs.lucene90

    Methods in org.apache.lucene.codecs.lucene90 that return RandomAccessInput
    Modifier and Type | Method | Description
    --- | --- | ---
    `static RandomAccessInput` | IndexedDISI.`createJumpTable​(IndexInput slice, long offset, long length, int jumpTableEntryCount)` | Helper method for using `IndexedDISI(IndexInput, RandomAccessInput, int, byte, long)`.

  - ### Uses of RandomAccessInput in org.apache.lucene.store

    Classes in org.apache.lucene.store that implement RandomAccessInput
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `BufferedIndexInput` | Base implementation class for buffered `IndexInput`.
    `class` | `ByteBufferIndexInput` | Base IndexInput implementation that uses an array of ByteBuffers to represent a file.
    `class` | `ByteBuffersDataInput` | A `DataInput` implementing `RandomAccessInput` and reading data from a list of `ByteBuffer`s.
    `class` | `ByteBuffersIndexInput` | An `IndexInput` implementing `RandomAccessInput` and backed by a `ByteBuffersDataInput`.

    Methods in org.apache.lucene.store that return RandomAccessInput
    Modifier and Type | Method | Description
    --- | --- | ---
    `RandomAccessInput` | ByteBuffersIndexInput.`randomAccessSlice​(long offset, long length)` |
    `RandomAccessInput` | IndexInput.`randomAccessSlice​(long offset, long length)` | Creates a random-access slice of this index input, with the given offset and length.

  - ### Uses of RandomAccessInput in org.apache.lucene.util.packed

    Methods in org.apache.lucene.util.packed with parameters of type RandomAccessInput
    Modifier and Type | Method | Description
    --- | --- | ---
    `static DirectMonotonicReader` | DirectMonotonicReader.`getInstance​(DirectMonotonicReader.Meta meta, RandomAccessInput data)` | Retrieves a non-merging instance from the specified slice.
    `static DirectMonotonicReader` | DirectMonotonicReader.`getInstance​(DirectMonotonicReader.Meta meta, RandomAccessInput data, boolean merging)` | Retrieves an instance from the specified slice.
    `static LongValues` | DirectReader.`getInstance​(RandomAccessInput slice, int bitsPerValue)` | Retrieves an instance from the specified slice written decoding `bitsPerValue` for each value
    `static LongValues` | DirectReader.`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` | DirectReader.`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` | DirectReader.`getMergeInstance​(RandomAccessInput slice, int bitsPerValue, long baseOffset, long numValues)` | Retrieves an instance that is specialized for merges and is typically faster at sequential access.