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

ID 790148
Date 3/22/2024
Public
Document Table of Contents

EncodeLZSS

Performs LZSS encoding.

Syntax

IppStatus ippsEncodeLZSS_8u (Ipp8u** ppSrc, int* pSrcLen, Ipp8u** ppDst, int* pDstLen, IppLZSSState_8u* pLZSSState);

Include Files

ippdc.h

Domain Dependencies

Headers: ippcore.h, ippvm.h, ipps.h

Libraries: ippcore.lib, ippvm.lib, ipps.lib

Parameters

ppSrc

Double pointer to the source buffer.

pSrcLen

Pointer to the number of elements in the source buffer; it is updated after encoding.

ppDst

Double pointer to the destination buffer.

pDstLen

Pointer to the length of the destination buffer; it is updated and returns the length of the destination buffer after encoding.

pLZSSState

Pointer to the LZSS encoding state structure.

Description

This function performs LZSS encoding of data in the source buffer ppSrc of length pSrcLen and stores the result in the destination buffer pDst of length pDstLen. The LZSS encoder state structure pLZSSState must be initialized by ippsEncodeLZSSInit beforehand.

After encoding the function returns the pointers to source and destination buffers shifted by the number of successfully read and encoded bytes, respectively. The function updates pSrcLen and pDstLen so they return the actual number of elements in the source and destination buffers respectively.

Code example shows how to use the function ippsEncodeLZSS_8u and supporting functions.

Return Values

ippStsNoErr

Indicates no error.

ippStsNullPtrErr

Indicates an error if one of the specified pointers is NULL.

ippStsSizeErr

Indicates an error if srcLen is less than or equal to 0.

ippStsDstSizeLessExpected

Indicates a warning that the size of the destination buffer is insufficient for completing the operation.