Intel® Integrated Performance Primitives (Intel® IPP) Developer Guide and Reference

ID 790148
Date 10/31/2024
Public
Document Table of Contents

Special Parameters

The ZLIB coding functions have several special parameters.

The comprLevel parameter specifies the level of compression rate and compression ratio. The table below lists the possible values of the comprLevel parameter and their meanings.

Parameter comprLevel for ZLIB Functions
Value Descriptions
IppLZ77FastCompr Fast compression, maximum compression rate, and below average compression ratio
IppLZ77AverageCompr Average compression rate, average compression ratio
IppLZ77BestCompr Slow compression, maximum compression ratio

The checksum parameter specifies what algorithm is used to compute checksum for input data. The table below lists the possible values of the checksum parameter and their meanings.

Parameter checksum for ZLIB Functions
Value Description
IppLZ77NoChcksm Checksum is not calculated.
IppLZ77Adler32 Checksum is calculated using Adler32 algorithm.
IppLZ77CRC32 Checksum is calculated using the CRC32 algorithm.

The flush parameter specifies the encoding mode for data block encoding. The table below lists the possible values of the flush parameter and their meanings.

Parameter flush for ZLIB Functions
Value Descriptions
IppLZ77NoFlush The end of the block is aligned to a byte boundary.
IppLZ77SyncFlush The end of the block is aligned to a byte boundary, and 4-byte marker is written to pDst.
IppLZ77FullFlush The end of the block is aligned to a byte boundary, 4-byte marker is written to pDst, sliding dictionary is zeroed.
IppLZ77FinishFlush The end of the block is aligned to a byte boundary and the function returns the ippStsStreamEnd status.

The deflateStatus parameter specifies the encoding status to ensure the compatibility with the RFC1951 specification. This parameter is used by Intel IPP ZLIB encoding functions. The table below lists the possible values of the deflateStatus parameter and their meanings.

Parameter deflateStatus for ZLIB Encoding Functions
Value Descriptions
IppLZ77StatusInit Specified the deflate implementation of encoding functions, must be used before stream encoding.
IppLZ77StatusLZ77Process Call the deflate implementation of encoding function.
IppLZ77StatusHuffProcess Call the deflate implementation of the encoding function with the fixed Huffman codes.
IppLZ77StatusFinal Specified the last block in the stream.

The inflateStatus parameter specifies the decoding status to ensure the compatibility with the RFC1951 specification. This parameter is used by Intel IPP ZLIB decoding functions. The table below lists the possible values of the inflateStatus parameter and their meanings.

Parameter inflateStatus for ZLIB Decoding Functions
Value Descriptions
IppLZ77inflateStatusInit Specified the deflate implementation of encoding functions, must be used before stream encoding.
IppLZ77InflateStatusHuffProcess Call the deflate implementation of the encoding function with the fixed Huffman codes.
IppLZ77InflateStatusLZ77Process Call the deflate implementation of encoding function.
IppLZ77InflateStatusFinal Specified the last block in the stream.