2017-09-01 18:28:35 -07:00
/*
* 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 ) .
2017-09-08 00:09:23 -07:00
* You may select , at your option , one of the above - listed licenses .
2017-09-01 18:28:35 -07:00
*/
# ifndef ZSTD_LAZY_H
# define ZSTD_LAZY_H
# if defined (__cplusplus)
extern " C " {
# endif
2017-12-12 16:51:00 -08:00
# include "zstd_compress_internal.h"
2017-11-07 16:15:23 -08:00
2018-08-23 12:08:03 -07:00
U32 ZSTD_insertAndFindFirstIndex ( ZSTD_matchState_t * ms , const BYTE * ip ) ;
2017-09-01 18:28:35 -07:00
2019-04-12 14:18:11 -04:00
void ZSTD_preserveUnsortedMark ( U32 * const table , U32 const size , U32 const reducerValue ) ; /*! used in ZSTD_reduceIndex(). preemptively increase value of ZSTD_DUBT_UNSORTED_MARK */
2017-09-06 15:56:32 -07:00
2017-12-12 16:51:00 -08:00
size_t ZSTD_compressBlock_btlazy2 (
ZSTD_matchState_t * ms , seqStore_t * seqStore , U32 rep [ ZSTD_REP_NUM ] ,
2018-08-23 11:53:34 -07:00
void const * src , size_t srcSize ) ;
2017-12-12 16:51:00 -08:00
size_t ZSTD_compressBlock_lazy2 (
ZSTD_matchState_t * ms , seqStore_t * seqStore , U32 rep [ ZSTD_REP_NUM ] ,
2018-08-23 11:53:34 -07:00
void const * src , size_t srcSize ) ;
2017-12-12 16:51:00 -08:00
size_t ZSTD_compressBlock_lazy (
ZSTD_matchState_t * ms , seqStore_t * seqStore , U32 rep [ ZSTD_REP_NUM ] ,
2018-08-23 11:53:34 -07:00
void const * src , size_t srcSize ) ;
2017-12-12 16:51:00 -08:00
size_t ZSTD_compressBlock_greedy (
ZSTD_matchState_t * ms , seqStore_t * seqStore , U32 rep [ ZSTD_REP_NUM ] ,
2018-08-23 11:53:34 -07:00
void const * src , size_t srcSize ) ;
2018-05-16 02:30:20 -04:00
size_t ZSTD_compressBlock_btlazy2_dictMatchState (
ZSTD_matchState_t * ms , seqStore_t * seqStore , U32 rep [ ZSTD_REP_NUM ] ,
2018-08-23 11:53:34 -07:00
void const * src , size_t srcSize ) ;
2018-05-16 02:30:20 -04:00
size_t ZSTD_compressBlock_lazy2_dictMatchState (
ZSTD_matchState_t * ms , seqStore_t * seqStore , U32 rep [ ZSTD_REP_NUM ] ,
2018-08-23 11:53:34 -07:00
void const * src , size_t srcSize ) ;
2018-05-16 02:30:20 -04:00
size_t ZSTD_compressBlock_lazy_dictMatchState (
ZSTD_matchState_t * ms , seqStore_t * seqStore , U32 rep [ ZSTD_REP_NUM ] ,
2018-08-23 11:53:34 -07:00
void const * src , size_t srcSize ) ;
2018-05-16 02:30:20 -04:00
size_t ZSTD_compressBlock_greedy_dictMatchState (
ZSTD_matchState_t * ms , seqStore_t * seqStore , U32 rep [ ZSTD_REP_NUM ] ,
2018-08-23 11:53:34 -07:00
void const * src , size_t srcSize ) ;
2017-12-12 16:51:00 -08:00
size_t ZSTD_compressBlock_greedy_extDict (
ZSTD_matchState_t * ms , seqStore_t * seqStore , U32 rep [ ZSTD_REP_NUM ] ,
2018-08-23 11:53:34 -07:00
void const * src , size_t srcSize ) ;
2017-12-12 16:51:00 -08:00
size_t ZSTD_compressBlock_lazy_extDict (
ZSTD_matchState_t * ms , seqStore_t * seqStore , U32 rep [ ZSTD_REP_NUM ] ,
2018-08-23 11:53:34 -07:00
void const * src , size_t srcSize ) ;
2017-12-12 16:51:00 -08:00
size_t ZSTD_compressBlock_lazy2_extDict (
ZSTD_matchState_t * ms , seqStore_t * seqStore , U32 rep [ ZSTD_REP_NUM ] ,
2018-08-23 11:53:34 -07:00
void const * src , size_t srcSize ) ;
2017-12-12 16:51:00 -08:00
size_t ZSTD_compressBlock_btlazy2_extDict (
ZSTD_matchState_t * ms , seqStore_t * seqStore , U32 rep [ ZSTD_REP_NUM ] ,
2018-08-23 11:53:34 -07:00
void const * src , size_t srcSize ) ;
2017-09-01 18:28:35 -07:00
# if defined (__cplusplus)
}
# endif
# endif /* ZSTD_LAZY_H */