## Uses of Class
org.apache.lucene.store.DataOutput

- Packages that use DataOutput
  Package | Description
  --- | ---
  org.apache.lucene.codecs | Codecs API: API for customization of the encoding and structure of the index.
  org.apache.lucene.codecs.compressing | Compressing helper classes.
  org.apache.lucene.codecs.lucene90 | Lucene 9.0 file format.
  org.apache.lucene.index | Code to maintain and access indices.
  org.apache.lucene.search | Code to search indices.
  org.apache.lucene.store | Binary i/o API, used for all index data.
  org.apache.lucene.util | Some utility classes.
  org.apache.lucene.util.compress | Compression utilities.
  org.apache.lucene.util.fst | Finite state transducers
  org.apache.lucene.util.packed | Packed integer arrays and streams.

- - ### Uses of DataOutput in org.apache.lucene.codecs

    Methods in org.apache.lucene.codecs with parameters of type DataOutput
    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract void` | PostingsWriterBase.`encodeTerm​(DataOutput out, FieldInfo fieldInfo, BlockTermState state, boolean absolute)` | Encode metadata as long[] and byte[].
    `static void` | CodecUtil.`verifyAndCopyIndexHeader​(IndexInput in, DataOutput out, byte[] expectedID)` | Expert: verifies the incoming `IndexInput` has an index header and that its segment ID matches the expected one, and then copies that index header into the provided `DataOutput`.
    `static void` | CodecUtil.`writeBEInt​(DataOutput out, int i)` | write int value on header / footer with big endian order
    `static void` | CodecUtil.`writeBELong​(DataOutput out, long l)` | write long value on header / footer with big endian order
    `protected void` | MultiLevelSkipListWriter.`writeChildPointer​(long childPointer, DataOutput skipBuffer)` | Writes the child pointer of a block to the given output.
    `static void` | CodecUtil.`writeHeader​(DataOutput out, String codec, int version)` | Writes a codec header, which records both a string to identify the file and a version number.
    `static void` | CodecUtil.`writeIndexHeader​(DataOutput out, String codec, int version, byte[] id, String suffix)` | Writes a codec header for an index file, which records both a string to identify the format of the file, a version number, and data to identify the file instance (ID and auxiliary suffix such as generation).
    `protected abstract void` | MultiLevelSkipListWriter.`writeSkipData​(int level, DataOutput skipBuffer)` | Subclasses must implement the actual skip data encoding in this method.

  - ### Uses of DataOutput in org.apache.lucene.codecs.compressing

    Methods in org.apache.lucene.codecs.compressing with parameters of type DataOutput
    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract void` | Compressor.`compress​(byte[] bytes, int off, int len, DataOutput out)` | Compress bytes into `out`.

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

    Methods in org.apache.lucene.codecs.lucene90 with parameters of type DataOutput
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | Lucene90PostingsWriter.`encodeTerm​(DataOutput out, FieldInfo fieldInfo, BlockTermState _state, boolean absolute)` |

  - ### Uses of DataOutput in org.apache.lucene.index

    Methods in org.apache.lucene.index with parameters of type DataOutput
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | SortFieldProvider.`write​(SortField sf, DataOutput output)` | Writes a SortField to a DataOutput
    `abstract void` | SortFieldProvider.`writeSortField​(SortField sf, DataOutput out)` | Writes a SortField to a DataOutput

    Constructors in org.apache.lucene.index with parameters of type DataOutput
    Constructor | Description
    --- | ---
    `CorruptIndexException​(String message, DataOutput output)` | Create exception with a message only
    `CorruptIndexException​(String message, DataOutput output, Throwable cause)` | Create exception with message and root cause.

  - ### Uses of DataOutput in org.apache.lucene.search

    Methods in org.apache.lucene.search with parameters of type DataOutput
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | SortedNumericSortField.Provider.`writeSortField​(SortField sf, DataOutput out)` |
    `void` | SortedSetSortField.Provider.`writeSortField​(SortField sf, DataOutput out)` |
    `void` | SortField.Provider.`writeSortField​(SortField sf, DataOutput out)` |

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

    Subclasses of DataOutput in org.apache.lucene.store
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `ByteArrayDataOutput` | DataOutput backed by a byte array.
    `class` | `ByteBuffersDataOutput` | A `DataOutput` storing data in a list of `ByteBuffer`s.
    `class` | `ByteBuffersIndexOutput` | An `IndexOutput` writing to a `ByteBuffersDataOutput`.
    `class` | `IndexOutput` | A `DataOutput` for appending data to a file in a `Directory`.
    `class` | `OutputStreamDataOutput` | A `DataOutput` wrapping a plain `OutputStream`.
    `class` | `OutputStreamIndexOutput` | Implementation class for buffered `IndexOutput` that writes to an `OutputStream`.
    `class` | `RateLimitedIndexOutput` | A `rate limiting` `IndexOutput`

    Methods in org.apache.lucene.store with parameters of type DataOutput
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | ByteBuffersDataOutput.`copyTo​(DataOutput output)` | Copy the current content of this object into another `DataOutput`.

  - ### Uses of DataOutput in org.apache.lucene.util

    Subclasses of DataOutput in org.apache.lucene.util
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `PagedBytes.PagedBytesDataOutput` | Output that transparently spills to new pages as necessary

  - ### Uses of DataOutput in org.apache.lucene.util.compress

    Methods in org.apache.lucene.util.compress with parameters of type DataOutput
    Modifier and Type | Method | Description
    --- | --- | ---
    `static boolean` | LowercaseAsciiCompression.`compress​(byte[] in, int len, byte[] tmp, DataOutput out)` | Compress `in[0:len]` into `out`.
    `static void` | LZ4.`compress​(byte[] bytes, int off, int len, DataOutput out, org.apache.lucene.util.compress.LZ4.HashTable ht)` | Compress `bytes[off:off+len]` into `out` using at most 16kB of memory.
    `static void` | LZ4.`compressWithDictionary​(byte[] bytes, int dictOff, int dictLen, int len, DataOutput out, org.apache.lucene.util.compress.LZ4.HashTable ht)` | Compress `bytes[dictOff+dictLen:dictOff+dictLen+len]` into `out` using at most 16kB of memory.

  - ### Uses of DataOutput in org.apache.lucene.util.fst

    Methods in org.apache.lucene.util.fst with parameters of type DataOutput
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | FST.`save​(DataOutput metaOut, DataOutput out)` |
    `void` | ByteSequenceOutputs.`write​(BytesRef prefix, DataOutput out)` |
    `void` | CharSequenceOutputs.`write​(CharsRef prefix, DataOutput out)` |
    `void` | IntSequenceOutputs.`write​(IntsRef prefix, DataOutput out)` |
    `void` | NoOutputs.`write​(Object prefix, DataOutput out)` |
    `abstract void` | Outputs.`write​(T output, DataOutput out)` | Encode an output value into a `DataOutput`.
    `void` | PairOutputs.`write​(PairOutputs.Pair<A,​B> output, DataOutput writer)` |
    `void` | PositiveIntOutputs.`write​(Long output, DataOutput out)` |
    `void` | Outputs.`writeFinalOutput​(T output, DataOutput out)` | Encode an final node output value into a `DataOutput`.
    `void` | FSTStore.`writeTo​(DataOutput out)` |
    `void` | OffHeapFSTStore.`writeTo​(DataOutput out)` |
    `void` | OnHeapFSTStore.`writeTo​(DataOutput out)` |

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

    Fields in org.apache.lucene.util.packed declared as DataOutput
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected DataOutput` | AbstractBlockPackedWriter.`out` |
    `protected DataOutput` | AbstractBlockPackedWriter.`out` |
    `protected DataOutput` | PackedInts.Writer.`out` |

    Methods in org.apache.lucene.util.packed with parameters of type DataOutput
    Modifier and Type | Method | Description
    --- | --- | ---
    `static DirectWriter` | DirectWriter.`getInstance​(DataOutput output, long numValues, int bitsPerValue)` | Returns an instance suitable for encoding `numValues` using `bitsPerValue`
    `static PackedInts.Writer` | PackedInts.`getWriterNoHeader​(DataOutput out, PackedInts.Format format, int valueCount, int bitsPerValue, int mem)` | Expert: Create a packed integer array writer for the given output, format, value count, and number of bits per value.

    Constructors in org.apache.lucene.util.packed with parameters of type DataOutput
    Constructor | Description
    --- | ---
    `BlockPackedWriter​(DataOutput out, int blockSize)` | Sole constructor.
    `MonotonicBlockPackedWriter​(DataOutput out, int blockSize)` | Sole constructor.
    `PackedDataOutput​(DataOutput out)` | Create a new instance that wraps `out`.
    `Writer​(DataOutput out, int valueCount, int bitsPerValue)` |