diff options
author | Brad King <brad.king@kitware.com> | 2019-03-13 14:46:32 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2019-03-13 14:46:32 (GMT) |
commit | f92b4b52ebb335ce540966d7f198df3878f6f46f (patch) | |
tree | 4fe887bedbdff138072bfa6e0d1217b0756b2155 /Utilities/cmzstd/lib/decompress/zstd_decompress_block.h | |
parent | 9337cbfccab0b7a0984b837d71ff59543acb574d (diff) | |
parent | fbaf65639ada9f3dc58337bf86c1cc036bc1694f (diff) | |
download | CMake-f92b4b52ebb335ce540966d7f198df3878f6f46f.zip CMake-f92b4b52ebb335ce540966d7f198df3878f6f46f.tar.gz CMake-f92b4b52ebb335ce540966d7f198df3878f6f46f.tar.bz2 |
Merge branch 'upstream-zstd' into import-zstd
* upstream-zstd:
zstd 2018-12-27 (470344d3)
Diffstat (limited to 'Utilities/cmzstd/lib/decompress/zstd_decompress_block.h')
-rw-r--r-- | Utilities/cmzstd/lib/decompress/zstd_decompress_block.h | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/Utilities/cmzstd/lib/decompress/zstd_decompress_block.h b/Utilities/cmzstd/lib/decompress/zstd_decompress_block.h new file mode 100644 index 0000000..7e92960 --- /dev/null +++ b/Utilities/cmzstd/lib/decompress/zstd_decompress_block.h @@ -0,0 +1,59 @@ +/* + * Copyright (c) 2016-present, Yann Collet, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under both the BSD-style license (found in the + * LICENSE file in the root directory of this source tree) and the GPLv2 (found + * in the COPYING file in the root directory of this source tree). + * You may select, at your option, one of the above-listed licenses. + */ + + +#ifndef ZSTD_DEC_BLOCK_H +#define ZSTD_DEC_BLOCK_H + +/*-******************************************************* + * Dependencies + *********************************************************/ +#include <stddef.h> /* size_t */ +#include "zstd.h" /* DCtx, and some public functions */ +#include "zstd_internal.h" /* blockProperties_t, and some public functions */ +#include "zstd_decompress_internal.h" /* ZSTD_seqSymbol */ + + +/* === Prototypes === */ + +/* note: prototypes already published within `zstd.h` : + * ZSTD_decompressBlock() + */ + +/* note: prototypes already published within `zstd_internal.h` : + * ZSTD_getcBlockSize() + * ZSTD_decodeSeqHeaders() + */ + + +/* ZSTD_decompressBlock_internal() : + * decompress block, starting at `src`, + * into destination buffer `dst`. + * @return : decompressed block size, + * or an error code (which can be tested using ZSTD_isError()) + */ +size_t ZSTD_decompressBlock_internal(ZSTD_DCtx* dctx, + void* dst, size_t dstCapacity, + const void* src, size_t srcSize, const int frame); + +/* ZSTD_buildFSETable() : + * generate FSE decoding table for one symbol (ll, ml or off) + * this function must be called with valid parameters only + * (dt is large enough, normalizedCounter distribution total is a power of 2, max is within range, etc.) + * in which case it cannot fail. + * Internal use only. + */ +void ZSTD_buildFSETable(ZSTD_seqSymbol* dt, + const short* normalizedCounter, unsigned maxSymbolValue, + const U32* baseValue, const U32* nbAdditionalBits, + unsigned tableLog); + + +#endif /* ZSTD_DEC_BLOCK_H */ |