![]() |
Parolin 0.7.9 6796
Console (soon DLLs) to do a tar like job
|
#include <stddef.h>
#include "zstd_v03.h"
#include "../common/error_private.h"
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
Data Structures | |
struct | BIT_DStream_t |
struct | FSE_DState_t |
struct | FSE_DTableHeader |
struct | FSE_decode_t |
struct | HUF_DEltX2 |
struct | HUF_DEltX4 |
struct | sortedSymbol_t |
struct | algo_time_t |
struct | blockProperties_t |
struct | seqStore_t |
struct | ZSTD_DCtx_s |
struct | seq_t |
struct | seqState_t |
Macros | |
#define | MEM_H_MODULE |
#define | MEM_STATIC static /* this version may generate warnings for unused static functions; disable the relevant warning */ |
#define | BITSTREAM_H_MODULE |
#define | ERROR_H_MODULE |
#define | ERR_STATIC static /* this version may generate warnings for unused static functions; disable the relevant warning */ |
#define | PREFIX(name) |
#define | ERROR(name) |
#define | ERROR_LIST(ITEM) |
#define | ERROR_GENERATE_ENUM(ENUM) |
#define | ERROR_CONVERTTOSTRING(STRING) |
#define | ERROR_GENERATE_STRING(EXPR) |
#define | FSE_NCOUNTBOUND 512 |
#define | FSE_BLOCKBOUND(size) |
#define | FSE_COMPRESSBOUND(size) |
#define | FSE_CTABLE_SIZE_U32(maxTableLog, maxSymbolValue) |
#define | FSE_DTABLE_SIZE_U32(maxTableLog) |
#define | HUF_CTABLEBOUND 129 |
#define | HUF_BLOCKBOUND(size) |
#define | HUF_COMPRESSBOUND(size) |
#define | HUF_DTABLE_SIZE(maxTableLog) |
#define | HUF_CREATE_STATIC_DTABLEX2(DTable, maxTableLog) |
#define | HUF_CREATE_STATIC_DTABLEX4(DTable, maxTableLog) |
#define | HUF_CREATE_STATIC_DTABLEX6(DTable, maxTableLog) |
#define | ZSTD_VERSION_MAJOR 0 /* for breaking interface changes */ |
#define | ZSTD_VERSION_MINOR 2 /* for new (non-breaking) interface capabilities */ |
#define | ZSTD_VERSION_RELEASE 2 /* for tweaks, bug-fixes, or development */ |
#define | ZSTD_VERSION_NUMBER (ZSTD_VERSION_MAJOR *100*100 + ZSTD_VERSION_MINOR *100 + ZSTD_VERSION_RELEASE) |
#define | ZSTD_magicNumber 0xFD2FB523 /* v0.3 */ |
#define | FSE_MAX_MEMORY_USAGE 14 |
#define | FSE_DEFAULT_MEMORY_USAGE 13 |
#define | FSE_MAX_SYMBOL_VALUE 255 |
#define | FSE_FUNCTION_TYPE BYTE |
#define | FSE_FUNCTION_EXTENSION |
#define | FORCE_INLINE static |
#define | FSE_MAX_TABLELOG (FSE_MAX_MEMORY_USAGE-2) |
#define | FSE_MAX_TABLESIZE (1U<<FSE_MAX_TABLELOG) |
#define | FSE_MAXTABLESIZE_MASK (FSE_MAX_TABLESIZE-1) |
#define | FSE_DEFAULT_TABLELOG (FSE_DEFAULT_MEMORY_USAGE-2) |
#define | FSE_MIN_TABLELOG 5 |
#define | FSE_TABLELOG_ABSOLUTE_MAX 15 |
#define | FSE_STATIC_ASSERT(c) |
#define | FSE_CAT(X, Y) |
#define | FSE_FUNCTION_NAME(X, Y) |
#define | FSE_TYPE_NAME(X, Y) |
#define | FSE_DECODE_TYPE FSE_decode_t |
#define | FSE_GETSYMBOL(statePtr) |
#define | inline /* disable inline */ |
#define | HUF_STATIC_ASSERT(c) |
#define | HUF_ABSOLUTEMAX_TABLELOG 16 /* absolute limit of HUF_MAX_TABLELOG. Beyond that value, code does not work */ |
#define | HUF_MAX_TABLELOG 12 /* max configured tableLog (for static allocation); can be modified up to HUF_ABSOLUTEMAX_TABLELOG */ |
#define | HUF_DEFAULT_TABLELOG HUF_MAX_TABLELOG /* tableLog by default, when not specified */ |
#define | HUF_MAX_SYMBOL_VALUE 255 |
#define | HUF_DECODE_SYMBOLX2_0(ptr, DStreamPtr) |
#define | HUF_DECODE_SYMBOLX2_1(ptr, DStreamPtr) |
#define | HUF_DECODE_SYMBOLX2_2(ptr, DStreamPtr) |
#define | HUF_DECODE_SYMBOLX4_0(ptr, DStreamPtr) |
#define | HUF_DECODE_SYMBOLX4_1(ptr, DStreamPtr) |
#define | HUF_DECODE_SYMBOLX4_2(ptr, DStreamPtr) |
#define | ZSTD_MEMORY_USAGE 17 |
#define | ZSTD_HEAPMODE 1 |
#define | ZSTD_LEGACY_SUPPORT 1 |
#define | GCC_VERSION (__GNUC__ * 100 + __GNUC_MINOR__) |
#define | HASH_LOG (ZSTD_MEMORY_USAGE - 2) |
#define | HASH_TABLESIZE (1 << HASH_LOG) |
#define | HASH_MASK (HASH_TABLESIZE - 1) |
#define | KNUTH 2654435761 |
#define | BIT7 128 |
#define | BIT6 64 |
#define | BIT5 32 |
#define | BIT4 16 |
#define | BIT1 2 |
#define | BIT0 1 |
#define | KB *(1 <<10) |
#define | MB *(1 <<20) |
#define | GB *(1U<<30) |
#define | BLOCKSIZE (128 KB) /* define, for static allocation */ |
#define | MIN_SEQUENCES_SIZE (2 /*seqNb*/ + 2 /*dumps*/ + 3 /*seqTables*/ + 1 /*bitStream*/) |
#define | MIN_CBLOCK_SIZE (3 /*litCSize*/ + MIN_SEQUENCES_SIZE) |
#define | IS_RAW BIT0 |
#define | IS_RLE BIT1 |
#define | WORKPLACESIZE (BLOCKSIZE*3) |
#define | MINMATCH 4 |
#define | MLbits 7 |
#define | LLbits 6 |
#define | Offbits 5 |
#define | MaxML ((1<<MLbits )-1) |
#define | MaxLL ((1<<LLbits )-1) |
#define | MaxOff 31 |
#define | LitFSELog 11 |
#define | MLFSELog 10 |
#define | LLFSELog 10 |
#define | OffFSELog 9 |
#define | MAX(a, b) |
#define | MaxSeq MAX(MaxLL, MaxML) |
#define | LITERAL_NOENTROPY 63 |
#define | COMMAND_NOENTROPY 7 /* to remove */ |
#define | ZSTD_CONTENTSIZE_ERROR (0ULL - 2) |
#define | COPY8(d, s) |
Typedefs | |
typedef size_t(* | decompressionAlgo) (void *dst, size_t dstSize, const void *cSrc, size_t cSrcSize) |
Enumerations | |
enum | BIT_DStream_status { BIT_DStream_unfinished = 0 , BIT_DStream_endOfBuffer = 1 , BIT_DStream_completed = 2 , BIT_DStream_overflow = 3 } |
enum | ERR_codes { ERROR_LIST =(ERROR_GENERATE_ENUM) } |
enum | blockType_t { bt_compressed , bt_raw , bt_rle , bt_end } |
#define BIT0 1 |
#define BIT1 2 |
#define BIT4 16 |
#define BIT5 32 |
#define BIT6 64 |
#define BIT7 128 |
#define BITSTREAM_H_MODULE |
#define COMMAND_NOENTROPY 7 /* to remove */ |
#define ERR_STATIC static /* this version may generate warnings for unused static functions; disable the relevant warning */ |
#define ERROR | ( | name | ) |
#define ERROR_CONVERTTOSTRING | ( | STRING | ) |
#define ERROR_GENERATE_ENUM | ( | ENUM | ) |
#define ERROR_GENERATE_STRING | ( | EXPR | ) |
#define ERROR_H_MODULE |
#define ERROR_LIST | ( | ITEM | ) |
#define FORCE_INLINE static |
#define FSE_COMPRESSBOUND | ( | size | ) |
#define FSE_CTABLE_SIZE_U32 | ( | maxTableLog, | |
maxSymbolValue ) |
#define FSE_DECODE_TYPE FSE_decode_t |
#define FSE_DEFAULT_MEMORY_USAGE 13 |
#define FSE_DEFAULT_TABLELOG (FSE_DEFAULT_MEMORY_USAGE-2) |
#define FSE_DTABLE_SIZE_U32 | ( | maxTableLog | ) |
#define FSE_FUNCTION_EXTENSION |
#define FSE_FUNCTION_NAME | ( | X, | |
Y ) |
#define FSE_FUNCTION_TYPE BYTE |
#define FSE_GETSYMBOL | ( | statePtr | ) |
#define FSE_MAX_MEMORY_USAGE 14 |
#define FSE_MAX_SYMBOL_VALUE 255 |
#define FSE_MAX_TABLELOG (FSE_MAX_MEMORY_USAGE-2) |
#define FSE_MAX_TABLESIZE (1U<<FSE_MAX_TABLELOG) |
#define FSE_MAXTABLESIZE_MASK (FSE_MAX_TABLESIZE-1) |
#define FSE_MIN_TABLELOG 5 |
#define FSE_NCOUNTBOUND 512 |
#define FSE_STATIC_ASSERT | ( | c | ) |
#define FSE_TABLELOG_ABSOLUTE_MAX 15 |
#define GB *(1U<<30) |
#define GCC_VERSION (__GNUC__ * 100 + __GNUC_MINOR__) |
#define HASH_LOG (ZSTD_MEMORY_USAGE - 2) |
#define HASH_MASK (HASH_TABLESIZE - 1) |
#define HASH_TABLESIZE (1 << HASH_LOG) |
#define HUF_ABSOLUTEMAX_TABLELOG 16 /* absolute limit of HUF_MAX_TABLELOG. Beyond that value, code does not work */ |
#define HUF_BLOCKBOUND | ( | size | ) |
#define HUF_COMPRESSBOUND | ( | size | ) |
#define HUF_CREATE_STATIC_DTABLEX2 | ( | DTable, | |
maxTableLog ) |
#define HUF_CREATE_STATIC_DTABLEX4 | ( | DTable, | |
maxTableLog ) |
#define HUF_CREATE_STATIC_DTABLEX6 | ( | DTable, | |
maxTableLog ) |
#define HUF_CTABLEBOUND 129 |
#define HUF_DECODE_SYMBOLX2_0 | ( | ptr, | |
DStreamPtr ) |
#define HUF_DECODE_SYMBOLX2_1 | ( | ptr, | |
DStreamPtr ) |
#define HUF_DECODE_SYMBOLX2_2 | ( | ptr, | |
DStreamPtr ) |
#define HUF_DECODE_SYMBOLX4_0 | ( | ptr, | |
DStreamPtr ) |
#define HUF_DECODE_SYMBOLX4_1 | ( | ptr, | |
DStreamPtr ) |
#define HUF_DECODE_SYMBOLX4_2 | ( | ptr, | |
DStreamPtr ) |
#define HUF_DEFAULT_TABLELOG HUF_MAX_TABLELOG /* tableLog by default, when not specified */ |
#define HUF_DTABLE_SIZE | ( | maxTableLog | ) |
#define HUF_MAX_SYMBOL_VALUE 255 |
#define HUF_MAX_TABLELOG 12 /* max configured tableLog (for static allocation); can be modified up to HUF_ABSOLUTEMAX_TABLELOG */ |
#define HUF_STATIC_ASSERT | ( | c | ) |
#define inline /* disable inline */ |
#define IS_RAW BIT0 |
#define IS_RLE BIT1 |
#define KB *(1 <<10) |
#define KNUTH 2654435761 |
#define LITERAL_NOENTROPY 63 |
#define LitFSELog 11 |
#define LLbits 6 |
#define LLFSELog 10 |
#define MaxLL ((1<<LLbits )-1) |
#define MaxML ((1<<MLbits )-1) |
#define MaxOff 31 |
#define MB *(1 <<20) |
#define MEM_H_MODULE |
#define MEM_STATIC static /* this version may generate warnings for unused static functions; disable the relevant warning */ |
#define MIN_CBLOCK_SIZE (3 /*litCSize*/ + MIN_SEQUENCES_SIZE) |
#define MIN_SEQUENCES_SIZE (2 /*seqNb*/ + 2 /*dumps*/ + 3 /*seqTables*/ + 1 /*bitStream*/) |
#define MINMATCH 4 |
#define MLbits 7 |
#define MLFSELog 10 |
#define Offbits 5 |
#define OffFSELog 9 |
#define WORKPLACESIZE (BLOCKSIZE*3) |
#define ZSTD_CONTENTSIZE_ERROR (0ULL - 2) |
#define ZSTD_HEAPMODE 1 |
HEAPMODE : Select how default compression functions will allocate memory for their hash table, in memory stack (0, fastest), or in memory heap (1, requires malloc()) Note that compression context is fairly large, as a consequence heap memory is recommended.
#define ZSTD_LEGACY_SUPPORT 1 |
LEGACY_SUPPORT : decompressor can decode older formats (starting from Zstd 0.1+)
#define ZSTD_magicNumber 0xFD2FB523 /* v0.3 */ |
#define ZSTD_MEMORY_USAGE 17 |
MEMORY_USAGE : Memory usage formula : N->2^N Bytes (examples : 10 -> 1KB; 12 -> 4KB ; 16 -> 64KB; 20 -> 1MB; etc.) Increasing memory usage improves compression ratio Reduced memory usage can improve speed, due to cache effect
#define ZSTD_VERSION_MAJOR 0 /* for breaking interface changes */ |
#define ZSTD_VERSION_MINOR 2 /* for new (non-breaking) interface capabilities */ |
#define ZSTD_VERSION_NUMBER (ZSTD_VERSION_MAJOR *100*100 + ZSTD_VERSION_MINOR *100 + ZSTD_VERSION_RELEASE) |
#define ZSTD_VERSION_RELEASE 2 /* for tweaks, bug-fixes, or development */ |
enum BIT_DStream_status |
enum blockType_t |
enum ERR_codes |
MEM_STATIC unsigned BIT_endOfDStream | ( | const BIT_DStream_t * | DStream | ) |
BIT_endOfDStream
MEM_STATIC unsigned BIT_highbit32 | ( | U32 | val | ) |
MEM_STATIC size_t BIT_initDStream | ( | BIT_DStream_t * | bitD, |
const void * | srcBuffer, | ||
size_t | srcSize ) |
BIT_initDStream Initialize a BIT_DStream_t. @bitD : a pointer to an already allocated BIT_DStream_t structure @srcBuffer must point at the beginning of a bitStream @srcSize must be the exact size of the bitStream
MEM_STATIC size_t BIT_lookBits | ( | BIT_DStream_t * | bitD, |
U32 | nbBits ) |
MEM_STATIC size_t BIT_lookBitsFast | ( | BIT_DStream_t * | bitD, |
U32 | nbBits ) |
BIT_lookBitsFast : unsafe version; only works only if nbBits >= 1
MEM_STATIC size_t BIT_readBits | ( | BIT_DStream_t * | bitD, |
U32 | nbBits ) |
MEM_STATIC size_t BIT_readBits | ( | BIT_DStream_t * | bitD, |
unsigned | nbBits ) |
BIT_readBits() : Read (consume) next n bits from local register and update. Pay attention to not read more than nbBits contained into local register.
MEM_STATIC size_t BIT_readBitsFast | ( | BIT_DStream_t * | bitD, |
U32 | nbBits ) |
BIT_readBitsFast : unsafe version; only works only if nbBits >= 1
MEM_STATIC size_t BIT_readBitsFast | ( | BIT_DStream_t * | bitD, |
unsigned | nbBits ) |
BIT_readBitsFast() : unsafe version; only works only if nbBits >= 1
BIT_readBitsFast() : unsafe version; only works if nbBits >= 1
BIT_readBitsFast() : unsafe version; only works if nbBits >= 1
MEM_STATIC BIT_DStream_status BIT_reloadDStream | ( | BIT_DStream_t * | bitD | ) |
MEM_STATIC void BIT_skipBits | ( | BIT_DStream_t * | bitD, |
U32 | nbBits ) |
ERR_STATIC const char * ERR_getErrorName | ( | size_t | code | ) |
ERR_STATIC unsigned ERR_isError | ( | size_t | code | ) |
FORCE_INLINE size_t FSE_decompress_usingDTable_generic | ( | void * | dst, |
size_t | maxDstSize, | ||
const void * | cSrc, | ||
size_t | cSrcSize, | ||
const FSE_DTable * | dt, | ||
const unsigned | fast ) |
MEM_STATIC unsigned MEM_32bits | ( | void | ) |
MEM_STATIC unsigned MEM_64bits | ( | void | ) |
MEM_STATIC unsigned MEM_isLittleEndian | ( | void | ) |
MEM_STATIC U16 MEM_read16 | ( | const void * | memPtr | ) |
MEM_STATIC U32 MEM_read32 | ( | const void * | memPtr | ) |
MEM_STATIC U64 MEM_read64 | ( | const void * | memPtr | ) |
MEM_STATIC U16 MEM_readLE16 | ( | const void * | memPtr | ) |
MEM_STATIC U32 MEM_readLE24 | ( | const void * | memPtr | ) |
MEM_STATIC U32 MEM_readLE32 | ( | const void * | memPtr | ) |
MEM_STATIC U64 MEM_readLE64 | ( | const void * | memPtr | ) |
MEM_STATIC size_t MEM_readLEST | ( | const void * | memPtr | ) |
MEM_STATIC void MEM_write16 | ( | void * | memPtr, |
U16 | value ) |
MEM_STATIC void MEM_writeLE16 | ( | void * | memPtr, |
U16 | val ) |
MEM_STATIC void ZSTD_errorFrameSizeInfoLegacy | ( | size_t * | cSize, |
unsigned long long * | dBound, | ||
size_t | ret ) |
ZSTDv03_Dctx * ZSTDv03_createDCtx | ( | void | ) |
size_t ZSTDv03_decompress | ( | void * | dst, |
size_t | maxOriginalSize, | ||
const void * | src, | ||
size_t | compressedSize ) |
ZSTDv03_decompress() : decompress ZSTD frames compliant with v0.3.x format compressedSize : is the exact source size maxOriginalSize : is the size of the 'dst' buffer, which must be already allocated. It must be equal or larger than originalSize, otherwise decompression will fail. return : the number of bytes decompressed into destination buffer (originalSize) or an errorCode if it fails (which can be tested using ZSTDv01_isError())
size_t ZSTDv03_decompressContinue | ( | ZSTDv03_Dctx * | dctx, |
void * | dst, | ||
size_t | maxDstSize, | ||
const void * | src, | ||
size_t | srcSize ) |
void ZSTDv03_findFrameSizeInfoLegacy | ( | const void * | src, |
size_t | srcSize, | ||
size_t * | cSize, | ||
unsigned long long * | dBound ) |
ZSTDv03_findFrameSizeInfoLegacy() : get the source length and decompressed bound of a ZSTD frame compliant with v0.3.x format srcSize : The size of the 'src' buffer, at least as large as the frame pointed to by 'src' cSize (output parameter) : the number of bytes that would be read to decompress this frame or an error code if it fails (which can be tested using ZSTDv01_isError()) dBound (output parameter) : an upper-bound for the decompressed size of the data in the frame or ZSTD_CONTENTSIZE_ERROR if an error occurs
note : assumes cSize
and dBound
are not NULL.
size_t ZSTDv03_freeDCtx | ( | ZSTDv03_Dctx * | dctx | ) |
unsigned ZSTDv03_isError | ( | size_t | code | ) |
ZSTDv03_isError() : tells if the result of ZSTDv03_decompress() is an error
size_t ZSTDv03_nextSrcSizeToDecompress | ( | ZSTDv03_Dctx * | dctx | ) |
size_t ZSTDv03_resetDCtx | ( | ZSTDv03_Dctx * | dctx | ) |