1 // SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0-only 2 /* 3 * Copyright (c) 2016-2020, Yann Collet, Facebook, Inc. 4 * All rights reserved. 5 * 6 * This source code is licensed under both the BSD-style license (found in the 7 * LICENSE file in the root directory of this source tree) and the GPLv2 (found 8 * in the COPYING file in the root directory of this source tree). 9 * You may select, at your option, one of the above-listed licenses. 10 */ 11 12 #ifndef ZSTD_OPT_H 13 #define ZSTD_OPT_H 14 15 #if defined (__cplusplus) 16 extern "C" { 17 #endif 18 19 #include "zstd_compress_internal.h" 20 21 /* used in ZSTD_loadDictionaryContent() */ 22 void ZSTD_updateTree(ZSTD_matchState_t* ms, const BYTE* ip, const BYTE* iend); 23 24 size_t ZSTD_compressBlock_btopt( 25 ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM], 26 void const* src, size_t srcSize); 27 size_t ZSTD_compressBlock_btultra( 28 ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM], 29 void const* src, size_t srcSize); 30 size_t ZSTD_compressBlock_btultra2( 31 ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM], 32 void const* src, size_t srcSize); 33 34 35 size_t ZSTD_compressBlock_btopt_dictMatchState( 36 ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM], 37 void const* src, size_t srcSize); 38 size_t ZSTD_compressBlock_btultra_dictMatchState( 39 ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM], 40 void const* src, size_t srcSize); 41 42 size_t ZSTD_compressBlock_btopt_extDict( 43 ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM], 44 void const* src, size_t srcSize); 45 size_t ZSTD_compressBlock_btultra_extDict( 46 ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM], 47 void const* src, size_t srcSize); 48 49 /* note : no btultra2 variant for extDict nor dictMatchState, 50 * because btultra2 is not meant to work with dictionaries 51 * and is only specific for the first block (no prefix) */ 52 53 #if defined (__cplusplus) 54 } 55 #endif 56 57 #endif /* ZSTD_OPT_H */ 58