Parolin 0.7.9 6796
Console (soon DLLs) to do a tar like job
Loading...
Searching...
No Matches
lzma12.h
Go to the documentation of this file.
1
6/*
7 * Author: Lasse Collin
8 *
9 * This file has been put into the public domain.
10 * You can do whatever you want with this file.
11 *
12 * See ../lzma.h for information about liblzma as a whole.
13 */
14
15#ifndef LZMA_H_INTERNAL
16# error Never include this file directly. Use <lzma.h> instead.
17#endif
18
19
27#define LZMA_FILTER_LZMA1 LZMA_VLI_C(0x4000000000000001)
28
53#define LZMA_FILTER_LZMA1EXT LZMA_VLI_C(0x4000000000000002)
54
63#define LZMA_FILTER_LZMA2 LZMA_VLI_C(0x21)
64
65
81typedef enum {
82 LZMA_MF_HC3 = 0x03,
93 LZMA_MF_HC4 = 0x04,
104 LZMA_MF_BT2 = 0x12,
113 LZMA_MF_BT3 = 0x13,
124 LZMA_MF_BT4 = 0x14
135
136
151extern LZMA_API(lzma_bool) lzma_mf_is_supported(lzma_match_finder match_finder)
153
154
161typedef enum {
162 LZMA_MODE_FAST = 1,
179
180
193extern LZMA_API(lzma_bool) lzma_mode_is_supported(lzma_mode mode)
195
196
208typedef struct {
240 uint32_t dict_size;
241# define LZMA_DICT_SIZE_MIN UINT32_C(4096)
242# define LZMA_DICT_SIZE_DEFAULT (UINT32_C(1) << 23)
243
263 const uint8_t *preset_dict;
264
277 uint32_t preset_dict_size;
278
304 uint32_t lc;
305# define LZMA_LCLP_MIN 0
306# define LZMA_LCLP_MAX 4
307# define LZMA_LC_DEFAULT 3
308
316 uint32_t lp;
317# define LZMA_LP_DEFAULT 0
318
339 uint32_t pb;
340# define LZMA_PB_MIN 0
341# define LZMA_PB_MAX 4
342# define LZMA_PB_DEFAULT 2
343
345 lzma_mode mode;
346
365 uint32_t nice_len;
366
369
398 uint32_t depth;
399
436 uint32_t ext_flags;
437# define LZMA_LZMA1EXT_ALLOW_EOPM UINT32_C(0x01)
438
467 uint32_t ext_size_low;
468
475
476 /*
477 * Reserved space to allow possible future extensions without
478 * breaking the ABI. You should not touch these, because the names
479 * of these variables may change. These are and will never be used
480 * with the currently supported options, so it is safe to leave these
481 * uninitialized.
482 */
483 uint32_t reserved_int4;
484 uint32_t reserved_int5;
485 uint32_t reserved_int6;
486 uint32_t reserved_int7;
487 uint32_t reserved_int8;
488 lzma_reserved_enum reserved_enum1;
489 lzma_reserved_enum reserved_enum2;
490 lzma_reserved_enum reserved_enum3;
491 lzma_reserved_enum reserved_enum4;
492 void *reserved_ptr1;
493 void *reserved_ptr2;
494
496
497
504#define lzma_set_ext_size(opt_lzma2, u64size) \
505do { \
506 (opt_lzma2).ext_size_low = (uint32_t)(u64size); \
507 (opt_lzma2).ext_size_high = (uint32_t)((uint64_t)(u64size) >> 32); \
508} while (0)
509
510
528extern LZMA_API(lzma_bool) lzma_lzma_preset(
Options specific to the LZMA1 and LZMA2 filters.
Definition lzma12.h:185
uint32_t ext_size_high
For LZMA_FILTER_LZMA1EXT: Uncompressed size (high bits)
Definition lzma12.h:474
uint32_t ext_flags
For LZMA_FILTER_LZMA1EXT: Extended flags.
Definition lzma12.h:436
uint32_t ext_size_low
For LZMA_FILTER_LZMA1EXT: Uncompressed size (low bits)
Definition lzma12.h:467
lzma_reserved_enum
Type of reserved enumeration variable in structures.
Definition base.h:44
unsigned char lzma_bool
Boolean.
Definition base.h:29
uint32_t preset
Definition container.h:259
lzma_mode
Compression modes.
Definition lzma12.h:138
@ LZMA_MODE_FAST
Fast compression.
Definition lzma12.h:139
@ LZMA_MODE_NORMAL
Normal compression.
Definition lzma12.h:147
lzma_match_finder
Match finders.
Definition lzma12.h:58
@ LZMA_MF_HC4
Hash Chain with 2-, 3-, and 4-byte hashing.
Definition lzma12.h:70
@ LZMA_MF_BT4
Binary Tree with 2-, 3-, and 4-byte hashing.
Definition lzma12.h:101
@ LZMA_MF_HC3
Hash Chain with 2- and 3-byte hashing.
Definition lzma12.h:59
@ LZMA_MF_BT2
Binary Tree with 2-byte hashing.
Definition lzma12.h:81
@ LZMA_MF_BT3
Binary Tree with 2- and 3-byte hashing.
Definition lzma12.h:90
uint32_t preset lzma_nothrow
Definition lzma12.h:420
#define lzma_attr_const
Definition lzma.h:269
#define LZMA_API(type)
Definition lzma.h:207
uint64_t uint64_t lzma_bool uint32_t dict_size
Definition container.h:904
const lzma_options_lzma * options
Definition container.h:545