Describes how to flush the current deflate operation.
Declaration Syntax
C# | Visual Basic | Visual C++ |
public enum FlushType
Public Enumeration FlushType
public enum class FlushType
Members
Member | Description |
---|---|
None | No flush at all. |
Partial | Closes the current block, but doesn't flush it to
the output. Used internally only in hypothetical
scenarios. This was supposed to be removed by Zlib, but it is
still in use in some edge cases.
|
Sync |
Use this during compression to specify that all pending output should be
flushed to the output buffer and the output should be aligned on a byte
boundary. You might use this in a streaming communication scenario, so that
the decompressor can get all input data available so far. When using this
with a ZlibCodec, AvailableBytesIn will be zero after the call if
enough output space has been provided before the call. Flushing will
degrade compression and so it should be used only when necessary.
|
Full |
Use this during compression to specify that all output should be flushed, as
with FlushType.Sync, but also, the compression state should be reset
so that decompression can restart from this point if previous compressed
data has been damaged or if random access is desired. Using
FlushType.Full too often can significantly degrade the compression.
|
Finish | Signals the end of the compression/decompression stream. |
Remarks
The different FlushType values are useful when using a Deflate in a streaming application.