diff options
author | Mitya Selivanov <automainint@guattari.tech> | 2024-07-14 21:12:37 +0200 |
---|---|---|
committer | Mitya Selivanov <automainint@guattari.tech> | 2024-07-14 21:12:37 +0200 |
commit | 30740ca4131d1f574718262451b4410207dc8d4e (patch) | |
tree | fc88b16a216079397ad85b9c6b1a1c1c5712a814 /source/kit/miniz/miniz_tinfl.h | |
parent | 5e3c99bb1cf1d03ea006300121265571f5008fd2 (diff) | |
download | saw-30740ca4131d1f574718262451b4410207dc8d4e.zip |
Reworking the build system
Diffstat (limited to 'source/kit/miniz/miniz_tinfl.h')
-rw-r--r-- | source/kit/miniz/miniz_tinfl.h | 218 |
1 files changed, 0 insertions, 218 deletions
diff --git a/source/kit/miniz/miniz_tinfl.h b/source/kit/miniz/miniz_tinfl.h deleted file mode 100644 index 14da110..0000000 --- a/source/kit/miniz/miniz_tinfl.h +++ /dev/null @@ -1,218 +0,0 @@ -#ifndef KIT_MINIZ_MINIZ_TINFL_H -#define KIT_MINIZ_MINIZ_TINFL_H - -#include "miniz_common.h" -/* ------------------- Low-level Decompression API Definitions */ - -#ifndef MINIZ_NO_INFLATE_APIS - -# ifdef __cplusplus -extern "C" { -# endif -/* Decompression flags used by tinfl_decompress(). */ -/* TINFL_FLAG_PARSE_ZLIB_HEADER: If set, the input has a valid zlib - * header and ends with an adler32 checksum (it's a valid zlib - * stream). Otherwise, the input is a raw deflate stream. */ -/* TINFL_FLAG_HAS_MORE_INPUT: If set, there are more input bytes - * available beyond the end of the supplied input buffer. If clear, - * the input buffer contains all remaining input. */ -/* TINFL_FLAG_USING_NON_WRAPPING_OUTPUT_BUF: If set, the output buffer - * is large enough to hold the entire decompressed stream. If clear, - * the output buffer is at least the size of the dictionary (typically - * 32KB). */ -/* TINFL_FLAG_COMPUTE_ADLER32: Force adler-32 checksum computation of - * the decompressed bytes. */ -enum { - TINFL_FLAG_PARSE_ZLIB_HEADER = 1, - TINFL_FLAG_HAS_MORE_INPUT = 2, - TINFL_FLAG_USING_NON_WRAPPING_OUTPUT_BUF = 4, - TINFL_FLAG_COMPUTE_ADLER32 = 8 -}; - -/* High level decompression functions: */ -/* tinfl_decompress_mem_to_heap() decompresses a block in memory to a - * heap block allocated via malloc(). */ -/* On entry: */ -/* pSrc_buf, src_buf_len: Pointer and size of the Deflate or zlib - * source data to decompress. */ -/* On return: */ -/* Function returns a pointer to the decompressed data, or NULL on - * failure. */ -/* *pOut_len will be set to the decompressed data's size, which could - * be larger than src_buf_len on uncompressible data. */ -/* The caller must call mz_free() on the returned block when it's no - * longer needed. */ -void *tinfl_decompress_mem_to_heap(const void *pSrc_buf, - size_t src_buf_len, - size_t *pOut_len, int flags); - -/* tinfl_decompress_mem_to_mem() decompresses a block in memory to - * another block in memory. */ -/* Returns TINFL_DECOMPRESS_MEM_TO_MEM_FAILED on failure, or the - * number of bytes written on success. */ -# define TINFL_DECOMPRESS_MEM_TO_MEM_FAILED ((size_t) (-1)) -size_t tinfl_decompress_mem_to_mem(void *pOut_buf, size_t out_buf_len, - const void *pSrc_buf, - size_t src_buf_len, int flags); - -/* tinfl_decompress_mem_to_callback() decompresses a block in memory - * to an internal 32KB buffer, and a user provided callback function - * will be called to flush the buffer. */ -/* Returns 1 on success or 0 on failure. */ -typedef int (*tinfl_put_buf_func_ptr)(const void *pBuf, int len, - void *pUser); -int tinfl_decompress_mem_to_callback( - const void *pIn_buf, size_t *pIn_buf_size, - tinfl_put_buf_func_ptr pPut_buf_func, void *pPut_buf_user, - int flags); - -struct tinfl_decompressor_tag; -typedef struct tinfl_decompressor_tag tinfl_decompressor; - -# ifndef MINIZ_NO_MALLOC -/* Allocate the tinfl_decompressor structure in C so that */ -/* non-C language bindings to tinfl_ API don't need to worry about */ -/* structure size and allocation mechanism. */ -tinfl_decompressor *tinfl_decompressor_alloc(void); -void tinfl_decompressor_free(tinfl_decompressor *pDecomp); -# endif - -/* Max size of LZ dictionary. */ -# define TINFL_LZ_DICT_SIZE 32768 - -/* Return status. */ -typedef enum { - /* This flags indicates the inflator needs 1 or more input bytes to - make forward progress, but the caller is indicating that no more - are available. The compressed data */ - /* is probably corrupted. If you call the inflator again with more - bytes it'll try to continue processing the input but this is a - BAD sign (either the data is corrupted or you called it - incorrectly). */ - /* If you call it again with no input you'll just get - TINFL_STATUS_FAILED_CANNOT_MAKE_PROGRESS again. */ - TINFL_STATUS_FAILED_CANNOT_MAKE_PROGRESS = -4, - - /* This flag indicates that one or more of the input parameters was - obviously bogus. (You can try calling it again, but if you get - this error the calling code is wrong.) */ - TINFL_STATUS_BAD_PARAM = -3, - - /* This flags indicate the inflator is finished but the adler32 - check of the uncompressed data didn't match. If you call it again - it'll return TINFL_STATUS_DONE. */ - TINFL_STATUS_ADLER32_MISMATCH = -2, - - /* This flags indicate the inflator has somehow failed (bad code, - corrupted input, etc.). If you call it again without resetting - via tinfl_init() it it'll just keep on returning the same status - failure code. */ - TINFL_STATUS_FAILED = -1, - - /* Any status code less than TINFL_STATUS_DONE must indicate a - failure. */ - - /* This flag indicates the inflator has returned every byte of - uncompressed data that it can, has consumed every byte that it - needed, has successfully reached the end of the deflate stream, - and */ - /* if zlib headers and adler32 checking enabled that it has - successfully checked the uncompressed data's adler32. If you call - it again you'll just get TINFL_STATUS_DONE over and over again. - */ - TINFL_STATUS_DONE = 0, - - /* This flag indicates the inflator MUST have more input data (even - 1 byte) before it can make any more forward progress, or you need - to clear the TINFL_FLAG_HAS_MORE_INPUT */ - /* flag on the next call if you don't have any more source data. If - the source data was somehow corrupted it's also possible (but - unlikely) for the inflator to keep on demanding input to */ - /* proceed, so be sure to properly set the TINFL_FLAG_HAS_MORE_INPUT - flag. */ - TINFL_STATUS_NEEDS_MORE_INPUT = 1, - - /* This flag indicates the inflator definitely has 1 or more bytes - of uncompressed data available, but it cannot write this data - into the output buffer. */ - /* Note if the source compressed data was corrupted it's possible - for the inflator to return a lot of uncompressed data to the - caller. I've been assuming you know how much uncompressed data to - expect */ - /* (either exact or worst case) and will stop calling the inflator - and fail after receiving too much. In pure streaming scenarios - where you have no idea how many bytes to expect this may not be - possible */ - /* so I may need to add some code to address this. */ - TINFL_STATUS_HAS_MORE_OUTPUT = 2 -} tinfl_status; - -/* Initializes the decompressor to its initial state. */ -# define tinfl_init(r) \ - do { (r)->m_state = 0; } \ - MZ_MACRO_END -# define tinfl_get_adler32(r) (r)->m_check_adler32 - -/* Main low-level decompressor coroutine function. This is the only - * function actually needed for decompression. All the other functions - * are just high-level helpers for improved usability. */ -/* This is a universal API, i.e. it can be used as a building block to - * build any desired higher level decompression API. In the limit - * case, it can be called once per every byte input or output. */ -tinfl_status tinfl_decompress(tinfl_decompressor *r, - const mz_uint8 *pIn_buf_next, - size_t *pIn_buf_size, - mz_uint8 *pOut_buf_start, - mz_uint8 *pOut_buf_next, - size_t *pOut_buf_size, - const mz_uint32 decomp_flags); - -/* Internal/private bits follow. */ -enum { - TINFL_MAX_HUFF_TABLES = 3, - TINFL_MAX_HUFF_SYMBOLS_0 = 288, - TINFL_MAX_HUFF_SYMBOLS_1 = 32, - TINFL_MAX_HUFF_SYMBOLS_2 = 19, - TINFL_FAST_LOOKUP_BITS = 10, - TINFL_FAST_LOOKUP_SIZE = 1 << TINFL_FAST_LOOKUP_BITS -}; - -# if MINIZ_HAS_64BIT_REGISTERS -# define TINFL_USE_64BIT_BITBUF 1 -# else -# define TINFL_USE_64BIT_BITBUF 0 -# endif - -# if TINFL_USE_64BIT_BITBUF -typedef mz_uint64 tinfl_bit_buf_t; -# define TINFL_BITBUF_SIZE (64) -# else -typedef mz_uint32 tinfl_bit_buf_t; -# define TINFL_BITBUF_SIZE (32) -# endif - -struct tinfl_decompressor_tag { - mz_uint32 m_state, m_num_bits, m_zhdr0, m_zhdr1, m_z_adler32, - m_final, m_type, m_check_adler32, m_dist, m_counter, - m_num_extra, m_table_sizes[TINFL_MAX_HUFF_TABLES]; - tinfl_bit_buf_t m_bit_buf; - size_t m_dist_from_out_buf_start; - mz_int16 m_look_up[TINFL_MAX_HUFF_TABLES][TINFL_FAST_LOOKUP_SIZE]; - mz_int16 m_tree_0[TINFL_MAX_HUFF_SYMBOLS_0 * 2]; - mz_int16 m_tree_1[TINFL_MAX_HUFF_SYMBOLS_1 * 2]; - mz_int16 m_tree_2[TINFL_MAX_HUFF_SYMBOLS_2 * 2]; - mz_uint8 m_code_size_0[TINFL_MAX_HUFF_SYMBOLS_0]; - mz_uint8 m_code_size_1[TINFL_MAX_HUFF_SYMBOLS_1]; - mz_uint8 m_code_size_2[TINFL_MAX_HUFF_SYMBOLS_2]; - mz_uint8 m_raw_header[4], - m_len_codes[TINFL_MAX_HUFF_SYMBOLS_0 + - TINFL_MAX_HUFF_SYMBOLS_1 + 137]; -}; - -# ifdef __cplusplus -} -# endif - -#endif /*#ifndef MINIZ_NO_INFLATE_APIS*/ - -#endif |