35 #if defined (__cplusplus)
39 #ifndef LZ4_H_2983827168210
40 #define LZ4_H_2983827168210
85 #ifndef LZ4LIB_VISIBILITY
86 # if defined(__GNUC__) && (__GNUC__ >= 4)
87 # define LZ4LIB_VISIBILITY __attribute__ ((visibility ("default")))
89 # define LZ4LIB_VISIBILITY
92 #if defined(LZ4_DLL_EXPORT) && (LZ4_DLL_EXPORT==1)
93 # define LZ4LIB_API __declspec(dllexport) LZ4LIB_VISIBILITY
94 #elif defined(LZ4_DLL_IMPORT) && (LZ4_DLL_IMPORT==1)
95 # define LZ4LIB_API __declspec(dllimport) LZ4LIB_VISIBILITY
97 # define LZ4LIB_API LZ4LIB_VISIBILITY
101 #define LZ4_VERSION_MAJOR 1
102 #define LZ4_VERSION_MINOR 9
103 #define LZ4_VERSION_RELEASE 3
105 #define LZ4_VERSION_NUMBER (LZ4_VERSION_MAJOR *100*100 + LZ4_VERSION_MINOR *100 + LZ4_VERSION_RELEASE)
107 #define LZ4_LIB_VERSION LZ4_VERSION_MAJOR.LZ4_VERSION_MINOR.LZ4_VERSION_RELEASE
108 #define LZ4_QUOTE(str) #str
109 #define LZ4_EXPAND_AND_QUOTE(str) LZ4_QUOTE(str)
110 #define LZ4_VERSION_STRING LZ4_EXPAND_AND_QUOTE(LZ4_LIB_VERSION)
126 #ifndef LZ4_MEMORY_USAGE
127 # define LZ4_MEMORY_USAGE 14
170 #define LZ4_MAX_INPUT_SIZE 0x7E000000
171 #define LZ4_COMPRESSBOUND(isize) ((unsigned)(isize) > (unsigned)LZ4_MAX_INPUT_SIZE ? 0 : (isize) + ((isize)/255) + 16)
382 #define LZ4_DECODER_RING_BUFFER_SIZE(maxBlockSize) (65536 + 14 + (maxBlockSize))
449 #ifdef LZ4_STATIC_LINKING_ONLY
451 #ifndef LZ4_STATIC_3504398509
452 #define LZ4_STATIC_3504398509
454 #ifdef LZ4_PUBLISH_STATIC_FUNCTIONS
455 #define LZ4LIB_STATIC_API LZ4LIB_API
457 #define LZ4LIB_STATIC_API
553 #define LZ4_DECOMPRESS_INPLACE_MARGIN(compressedSize) (((compressedSize) >> 8) + 32)
554 #define LZ4_DECOMPRESS_INPLACE_BUFFER_SIZE(decompressedSize) ((decompressedSize) + LZ4_DECOMPRESS_INPLACE_MARGIN(decompressedSize))
556 #ifndef LZ4_DISTANCE_MAX
557 # define LZ4_DISTANCE_MAX 65535
560 #define LZ4_COMPRESS_INPLACE_MARGIN (LZ4_DISTANCE_MAX + 32)
561 #define LZ4_COMPRESS_INPLACE_BUFFER_SIZE(maxCompressedSize) ((maxCompressedSize) + LZ4_COMPRESS_INPLACE_MARGIN)
568 #ifndef LZ4_H_98237428734687
569 #define LZ4_H_98237428734687
578 #define LZ4_HASHLOG (LZ4_MEMORY_USAGE-2)
579 #define LZ4_HASHTABLESIZE (1 << LZ4_MEMORY_USAGE)
580 #define LZ4_HASH_SIZE_U32 (1 << LZ4_HASHLOG)
582 #if defined(__cplusplus) || (defined (__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) )
623 #define LZ4_STREAMSIZE 16416
624 #define LZ4_STREAMSIZE_VOIDP (LZ4_STREAMSIZE / sizeof(void*))
655 #define LZ4_STREAMDECODESIZE_U64 (4 + ((sizeof(void*)==16) ? 2 : 0) )
656 #define LZ4_STREAMDECODESIZE (LZ4_STREAMDECODESIZE_U64 * sizeof(unsigned long long))
679 #ifdef LZ4_DISABLE_DEPRECATE_WARNINGS
680 # define LZ4_DEPRECATED(message)
682 # if defined (__cplusplus) && (__cplusplus >= 201402)
683 # define LZ4_DEPRECATED(message) [[deprecated(message)]]
684 # elif defined(_MSC_VER)
685 # define LZ4_DEPRECATED(message) __declspec(deprecated(message))
686 # elif defined(__clang__) || (defined(__GNUC__) && (__GNUC__ * 10 + __GNUC_MINOR__ >= 45))
687 # define LZ4_DEPRECATED(message) __attribute__((deprecated(message)))
688 # elif defined(__GNUC__) && (__GNUC__ * 10 + __GNUC_MINOR__ >= 31)
689 # define LZ4_DEPRECATED(message) __attribute__((deprecated))
691 # pragma message("WARNING: LZ4_DEPRECATED needs custom implementation for this compiler")
692 # define LZ4_DEPRECATED(message)
772 #if defined (__cplusplus)
static LZ4_stream_t LZ4_stream
LZ4_FORCE_O2 int LZ4_decompress_safe_withPrefix64k(const char *source, char *dest, int compressedSize, int maxOutputSize)
void * LZ4_create(char *inputBuffer)
int LZ4_compress_limitedOutput(const char *source, char *dest, int inputSize, int maxOutputSize)
int LZ4_compress_limitedOutput_continue(LZ4_stream_t *LZ4_stream, const char *src, char *dst, int srcSize, int dstCapacity)
int LZ4_compress(const char *src, char *dest, int srcSize)
int LZ4_uncompress(const char *source, char *dest, int outputSize)
int LZ4_compress_continue(LZ4_stream_t *LZ4_stream, const char *source, char *dest, int inputSize)
int LZ4_uncompress_unknownOutputSize(const char *source, char *dest, int isize, int maxOutputSize)
char * LZ4_slideInputBuffer(void *state)
int LZ4_sizeofStreamState(void)
int LZ4_compress_withState(void *state, const char *src, char *dst, int srcSize)
int LZ4_compress_limitedOutput_withState(void *state, const char *src, char *dst, int srcSize, int dstSize)
int LZ4_resetStreamState(void *state, char *inputBuffer)
int LZ4_compress_fast_extState_fastReset(void *state, const char *src, char *dst, int srcSize, int dstCapacity, int acceleration)
void LZ4_attach_dictionary(LZ4_stream_t *workingStream, const LZ4_stream_t *dictionaryStream)
int LZ4_decompress_fast_withPrefix64k(const char *source, char *dest, int originalSize)
LZ4LIB_API int LZ4_decompress_fast_usingDict(const char *src, char *dst, int originalSize, const char *dictStart, int dictSize)
LZ4LIB_API int LZ4_compress_fast_continue(LZ4_stream_t *streamPtr, const char *src, char *dst, int srcSize, int dstCapacity, int acceleration)
LZ4LIB_API int LZ4_decompress_safe_usingDict(const char *src, char *dst, int srcSize, int dstCapcity, const char *dictStart, int dictSize)
char int int maxOutputSize
LZ4LIB_API int LZ4_compress_fast(const char *src, char *dst, int srcSize, int dstCapacity, int acceleration)
LZ4LIB_API void LZ4_resetStream_fast(LZ4_stream_t *streamPtr)
LZ4LIB_API int LZ4_decoderRingBufferSize(int maxBlockSize)
LZ4LIB_API int LZ4_freeStreamDecode(LZ4_streamDecode_t *LZ4_stream)
LZ4LIB_API int LZ4_decompress_fast_continue(LZ4_streamDecode_t *LZ4_streamDecode, const char *src, char *dst, int originalSize)
#define LZ4_STREAMDECODESIZE_U64
LZ4LIB_API const char * LZ4_versionString(void)
#define LZ4_STREAMSIZE_VOIDP
LZ4LIB_API int LZ4_saveDict(LZ4_stream_t *streamPtr, char *safeBuffer, int maxDictSize)
LZ4LIB_API int LZ4_versionNumber(void)
LZ4LIB_API LZ4_streamDecode_t * LZ4_createStreamDecode(void)
LZ4LIB_API int LZ4_sizeofState(void)
#define LZ4_HASH_SIZE_U32
LZ4LIB_API int LZ4_compressBound(int inputSize)
LZ4LIB_API int LZ4_decompress_safe(const char *src, char *dst, int compressedSize, int dstCapacity)
LZ4LIB_API int LZ4_setStreamDecode(LZ4_streamDecode_t *LZ4_streamDecode, const char *dictionary, int dictSize)
LZ4LIB_API int LZ4_freeStream(LZ4_stream_t *streamPtr)
const char char int inputSize
LZ4LIB_API int LZ4_compress_fast_extState(void *state, const char *src, char *dst, int srcSize, int dstCapacity, int acceleration)
LZ4LIB_API int LZ4_decompress_safe_partial(const char *src, char *dst, int srcSize, int targetOutputSize, int dstCapacity)
LZ4LIB_API int LZ4_loadDict(LZ4_stream_t *streamPtr, const char *dictionary, int dictSize)
LZ4LIB_API int LZ4_decompress_safe_continue(LZ4_streamDecode_t *LZ4_streamDecode, const char *src, char *dst, int srcSize, int dstCapacity)
LZ4LIB_API void LZ4_resetStream(LZ4_stream_t *streamPtr)
LZ4LIB_API int LZ4_compress_destSize(const char *src, char *dst, int *srcSizePtr, int targetDstSize)
LZ4LIB_API int LZ4_decompress_fast(const char *src, char *dst, int originalSize)
LZ4LIB_API int LZ4_compress_default(const char *src, char *dst, int srcSize, int dstCapacity)
LZ4LIB_API LZ4_stream_t * LZ4_createStream(void)
LZ4LIB_API LZ4_stream_t * LZ4_initStream(void *buffer, size_t size)
#define LZ4_DEPRECATED(message)
const LZ4_byte * prefixEnd
const LZ4_byte * externalDict
const LZ4_stream_t_internal * dictCtx
const LZ4_byte * dictionary
LZ4_u32 hashTable[LZ4_HASH_SIZE_U32]
LZ4_streamDecode_t_internal internal_donotuse
unsigned long long table[LZ4_STREAMDECODESIZE_U64]
LZ4_stream_t_internal internal_donotuse
void * table[LZ4_STREAMSIZE_VOIDP]