Module |
|
Header |
/Engine/Source/Runtime/Core/Public/Compression/lz4.h |
Include |
#include "Compression/lz4.h" |
Source |
/Engine/Source/Runtime/Core/Private/Compression/lz4.cpp |
LZ4int LZ4_compress_fast_continue
(
LZ4_stream_t * streamPtr,
const char * src,
char * dst,
int srcSize,
int dstCapacity,
int acceleration
)
LZ4_compress_fast_continue() : Compress 'src' content using data from previously compressed blocks, for better compression ratio. 'dst' buffer must be already allocated. If dstCapacity >= LZ4_compressBound(srcSize), compression is guaranteed to succeed, and runs faster.
Note 1 : Each invocation to LZ4_compress_fast_continue() generates a new block. Each block has precise boundaries. Each block must be decompressed separately, calling LZ4_decompress*() with relevant metadata. It's not possible to append blocks together and expect a single invocation of LZ4_decompress*() to decompress them together.
Note 2 : The previous 64KB of source data is assumed to remain present, unmodified, at same address in memory !
Note 3 : When input is structured as a double-buffer, each buffer can have any size, including < 64 KB. Make sure that buffers are separated, by at least one byte. This construction ensures that each block only depends on previous block.
Note 4 : If input buffer is a ring-buffer, it can have any size, including < 64 KB.
Note 5 : After an error, the stream status is undefined (invalid), it can only be reset or freed.
: size of compressed block or 0 if there is an error (typically, cannot fit into 'dst').