CXReadUncompRL

Syntax

#include <revolution/cx/CXStreamingUncompression.h>

s32 CXReadUncompRL( CXUncompContextRL *context, 
                     const void*       data, 
                     u32               len );

Arguments

context Pointer to the context structure for uncompression of RL-compressed data.
data Pointer to the next data in the file being decompressed.
len Size of the data provided in the second argument.

Return Values

Returns a positive value if there is still data to be expanded; returns a negative error code if an error occurred;
returns 0 of all data was successfully decompressed.

Positive integer Number of bytes not yet decompressed.
CX_ERR_SUCCESS Ended normally (==0).
CX_ERR_UNSUPPORTED Unsupported compression data type.
CX_ERR_SRC_SHORTAGE Source data size is too small.
CX_ERR_SRC_REMAINDER Source data size is too large.
CX_ERR_ILLEGAL_TABLE The Huffman table contains mistakes.

Description

Performs streaming uncompression of run-length compressed data, processing just the data size given, and copies it to the buffer specified by the CXInitUncompContextRL function. Compared to CXUncompressRL, which decompresses all data at once, this function is slow.

See Also

CXGetUncompressedSize, CXUncompressRL, CXSecureUncompressRL, CXInitUncompContextRL, CXIsFinishedUncompRL, CXUncompContextRL, CXCompressRL, ntcompress

Revision History

2007/09/03 Corrected error in See Also.
2006/07/06 Initial version.


CONFIDENTIAL