xref: /freebsd/sys/contrib/zstd/lib/compress/zstd_lazy.h (revision 2b9c00cb6bd9392645dc8afca59cf57c42df4e2d)
10c16b537SWarner Losh /*
20c16b537SWarner Losh  * Copyright (c) 2016-present, Yann Collet, Facebook, Inc.
30c16b537SWarner Losh  * All rights reserved.
40c16b537SWarner Losh  *
50c16b537SWarner Losh  * This source code is licensed under both the BSD-style license (found in the
60c16b537SWarner Losh  * LICENSE file in the root directory of this source tree) and the GPLv2 (found
70c16b537SWarner Losh  * in the COPYING file in the root directory of this source tree).
80c16b537SWarner Losh  * You may select, at your option, one of the above-listed licenses.
90c16b537SWarner Losh  */
100c16b537SWarner Losh 
110c16b537SWarner Losh #ifndef ZSTD_LAZY_H
120c16b537SWarner Losh #define ZSTD_LAZY_H
130c16b537SWarner Losh 
140c16b537SWarner Losh #if defined (__cplusplus)
150c16b537SWarner Losh extern "C" {
160c16b537SWarner Losh #endif
170c16b537SWarner Losh 
1819fcbaf1SConrad Meyer #include "zstd_compress_internal.h"
19052d3c12SConrad Meyer 
200f743729SConrad Meyer U32 ZSTD_insertAndFindFirstIndex(ZSTD_matchState_t* ms, const BYTE* ip);
210c16b537SWarner Losh 
22*2b9c00cbSConrad Meyer void ZSTD_preserveUnsortedMark (U32* const table, U32 const size, U32 const reducerValue);  /*! used in ZSTD_reduceIndex(). preemptively increase value of ZSTD_DUBT_UNSORTED_MARK */
230c16b537SWarner Losh 
2419fcbaf1SConrad Meyer size_t ZSTD_compressBlock_btlazy2(
2519fcbaf1SConrad Meyer         ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM],
260f743729SConrad Meyer         void const* src, size_t srcSize);
2719fcbaf1SConrad Meyer size_t ZSTD_compressBlock_lazy2(
2819fcbaf1SConrad Meyer         ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM],
290f743729SConrad Meyer         void const* src, size_t srcSize);
3019fcbaf1SConrad Meyer size_t ZSTD_compressBlock_lazy(
3119fcbaf1SConrad Meyer         ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM],
320f743729SConrad Meyer         void const* src, size_t srcSize);
3319fcbaf1SConrad Meyer size_t ZSTD_compressBlock_greedy(
3419fcbaf1SConrad Meyer         ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM],
350f743729SConrad Meyer         void const* src, size_t srcSize);
360f743729SConrad Meyer 
370f743729SConrad Meyer size_t ZSTD_compressBlock_btlazy2_dictMatchState(
380f743729SConrad Meyer         ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM],
390f743729SConrad Meyer         void const* src, size_t srcSize);
400f743729SConrad Meyer size_t ZSTD_compressBlock_lazy2_dictMatchState(
410f743729SConrad Meyer         ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM],
420f743729SConrad Meyer         void const* src, size_t srcSize);
430f743729SConrad Meyer size_t ZSTD_compressBlock_lazy_dictMatchState(
440f743729SConrad Meyer         ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM],
450f743729SConrad Meyer         void const* src, size_t srcSize);
460f743729SConrad Meyer size_t ZSTD_compressBlock_greedy_dictMatchState(
470f743729SConrad Meyer         ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM],
480f743729SConrad Meyer         void const* src, size_t srcSize);
4919fcbaf1SConrad Meyer 
5019fcbaf1SConrad Meyer size_t ZSTD_compressBlock_greedy_extDict(
5119fcbaf1SConrad Meyer         ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM],
520f743729SConrad Meyer         void const* src, size_t srcSize);
5319fcbaf1SConrad Meyer size_t ZSTD_compressBlock_lazy_extDict(
5419fcbaf1SConrad Meyer         ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM],
550f743729SConrad Meyer         void const* src, size_t srcSize);
5619fcbaf1SConrad Meyer size_t ZSTD_compressBlock_lazy2_extDict(
5719fcbaf1SConrad Meyer         ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM],
580f743729SConrad Meyer         void const* src, size_t srcSize);
5919fcbaf1SConrad Meyer size_t ZSTD_compressBlock_btlazy2_extDict(
6019fcbaf1SConrad Meyer         ZSTD_matchState_t* ms, seqStore_t* seqStore, U32 rep[ZSTD_REP_NUM],
610f743729SConrad Meyer         void const* src, size_t srcSize);
620c16b537SWarner Losh 
630c16b537SWarner Losh #if defined (__cplusplus)
640c16b537SWarner Losh }
650c16b537SWarner Losh #endif
660c16b537SWarner Losh 
670c16b537SWarner Losh #endif /* ZSTD_LAZY_H */
68