ReactOS 0.4.15-dev-8636-g945e856
|
#include "zstd_compress_superblock.h"
#include "zstd_internal.h"
#include "hist.h"
#include "zstd_compress_internal.h"
#include "zstd_compress_sequences.h"
#include "zstd_compress_literals.h"
Go to the source code of this file.
Classes | |
struct | ZSTD_hufCTablesMetadata_t |
struct | ZSTD_fseCTablesMetadata_t |
struct | ZSTD_entropyCTablesMetadata_t |
Macros | |
#define | COMPRESS_LITERALS_SIZE_MIN 63 |
#define COMPRESS_LITERALS_SIZE_MIN 63 |
|
static |
ZSTD_buildSuperBlockEntropy() : Builds entropy for the super-block.
Definition at line 274 of file zstd_compress_superblock.c.
Referenced by ZSTD_compressSuperBlock().
|
static |
ZSTD_buildSuperBlockEntropy_literal() : Builds entropy for the super-block literals. Stores literals block type (raw, rle, compressed, repeat) and huffman description table to hufMetadata.
Definition at line 61 of file zstd_compress_superblock.c.
Referenced by ZSTD_buildSuperBlockEntropy().
|
static |
ZSTD_buildSuperBlockEntropy_sequences() : Builds entropy for the super-block sequences. Stores symbol compression modes and fse table to fseMetadata.
Definition at line 163 of file zstd_compress_superblock.c.
Referenced by ZSTD_buildSuperBlockEntropy().
|
static |
ZSTD_compressSubBlock() : Compresses a single sub-block.
Definition at line 536 of file zstd_compress_superblock.c.
Referenced by ZSTD_compressSubBlock_multi().
|
static |
ZSTD_compressSubBlock_literal() : Compresses literals section for a sub-block. When we have to write the Huffman table we will sometimes choose a header size larger than necessary. This is because we have to pick the header size before we know the table size + compressed size, so we have a bound on the table size. If we guessed incorrectly, we fall back to uncompressed literals.
We write the header when writeEntropy=1 and set entropyWrriten=1 when we succeeded in writing the header, otherwise it is set to 0.
hufMetadata->hType has literals block type info. If it is set_basic, all sub-blocks literals section will be Raw_Literals_Block. If it is set_rle, all sub-blocks literals section will be RLE_Literals_Block. If it is set_compressed, first sub-block's literals section will be Compressed_Literals_Block If it is set_compressed, first sub-block's literals section will be Treeless_Literals_Block and the following sub-blocks' literals sections will be Treeless_Literals_Block.
Definition at line 319 of file zstd_compress_superblock.c.
Referenced by ZSTD_compressSubBlock().
|
static |
ZSTD_compressSubBlock_multi() : Breaks super-block into multiple sub-blocks and compresses them. Entropy will be written to the first block. The following blocks will use repeat mode to compress. All sub-blocks are compressed blocks (no raw or rle blocks).
Definition at line 697 of file zstd_compress_superblock.c.
Referenced by ZSTD_compressSuperBlock().
|
static |
ZSTD_compressSubBlock_sequences() : Compresses sequences section for a sub-block. fseMetadata->llType, fseMetadata->ofType, and fseMetadata->mlType have symbol compression modes for the super-block. The first successfully compressed block will have these in its header. We set entropyWritten=1 when we succeed in compressing the sequences. The following sub-blocks will always have repeat mode.
Definition at line 436 of file zstd_compress_superblock.c.
Referenced by ZSTD_compressSubBlock().
size_t ZSTD_compressSuperBlock | ( | ZSTD_CCtx * | zc, |
void * | dst, | ||
size_t | dstCapacity, | ||
void const * | src, | ||
size_t | srcSize, | ||
unsigned | lastBlock | ||
) |
Definition at line 823 of file zstd_compress_superblock.c.
Referenced by ZSTD_compressBlock_targetCBlockSize_body().
|
static |
Definition at line 660 of file zstd_compress_superblock.c.
Referenced by ZSTD_compressSubBlock_multi().
|
static |
Definition at line 579 of file zstd_compress_superblock.c.
Referenced by ZSTD_estimateSubBlockSize().
|
static |
Definition at line 633 of file zstd_compress_superblock.c.
Referenced by ZSTD_estimateSubBlockSize().
|
static |
Definition at line 602 of file zstd_compress_superblock.c.
Referenced by ZSTD_estimateSubBlockSize_sequences().
|
static |
Definition at line 679 of file zstd_compress_superblock.c.
Referenced by ZSTD_compressSubBlock_multi().
|
static |
Definition at line 407 of file zstd_compress_superblock.c.
Referenced by ZSTD_compressSubBlock_multi().