## 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.lucene99 | Lucene 9.9 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​(ByteBuffersDataInput buffersInput, DataOutput out)` | Compress bytes into `out`.

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

    Methods in org.apache.lucene.codecs.lucene99 with parameters of type DataOutput
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | Lucene99PostingsWriter.`encodeTerm​(DataOutput out, FieldInfo fieldInfo, BlockTermState _state, boolean absolute)` |
    `static void` | Lucene99SkipWriter.`writeImpacts​(CompetitiveImpactAccumulator acc, DataOutput out)` |
    `protected void` | Lucene99SkipWriter.`writeSkipData​(int level, DataOutput skipBuffer)` |

  - ### 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` | `FilterIndexOutput` | IndexOutput implementation that delegates calls to another directory.
    `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 that return DataOutput
    Modifier and Type | Method | Description
    --- | --- | ---
    `static DataOutput` | FSTCompiler.`getOnHeapReaderWriter​(int blockBits)` | Get an on-heap DataOutput that allows the FST to be read immediately after writing, and also optionally saved to an external DataOutput.

    Methods in org.apache.lucene.util.fst with parameters of type DataOutput
    Modifier and Type | Method | Description
    --- | --- | ---
    `FSTCompiler.Builder<T>` | FSTCompiler.Builder.`dataOutput​(DataOutput dataOutput)` | Set the `DataOutput` which is used for low-level writing of FST.
    `void` | FST.`save​(DataOutput metaOut, DataOutput out)` | Save the FST to DataOutput.
    `void` | FST.`saveMetadata​(DataOutput metaOut)` | Save the metadata to a DataOutput
    `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` | FSTReader.`writeTo​(DataOutput out)` | Write this FST to another DataOutput
    `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)` |