2 * Copyright (c) Yann Collet, Facebook, Inc.
5 * This source code is licensed under both the BSD-style license (found in the
6 * LICENSE file in the root directory of this source tree) and the GPLv2 (found
7 * in the COPYING file in the root directory of this source tree).
8 * You may select, at your option, one of the above-listed licenses.
11 #ifndef ZSTD_COMPRESS_LITERALS_H
12 #define ZSTD_COMPRESS_LITERALS_H
14 #include "zstd_compress_internal.h" /* ZSTD_hufCTables_t, ZSTD_minGain() */
17 size_t ZSTD_noCompressLiterals (void* dst
, size_t dstCapacity
, const void* src
, size_t srcSize
);
19 size_t ZSTD_compressRleLiteralsBlock (void* dst
, size_t dstCapacity
, const void* src
, size_t srcSize
);
21 /* If suspectUncompressible then some sampling checks will be run to potentially skip huffman coding */
22 size_t ZSTD_compressLiterals (ZSTD_hufCTables_t
const* prevHuf
,
23 ZSTD_hufCTables_t
* nextHuf
,
24 ZSTD_strategy strategy
, int disableLiteralCompression
,
25 void* dst
, size_t dstCapacity
,
26 const void* src
, size_t srcSize
,
27 void* entropyWorkspace
, size_t entropyWorkspaceSize
,
29 unsigned suspectUncompressible
);
31 #endif /* ZSTD_COMPRESS_LITERALS_H */