Parolin 0.7.9 6796
Console (soon DLLs) to do a tar like job
Loading...
Searching...
No Matches
coder.h
Go to the documentation of this file.
1// SPDX-License-Identifier: 0BSD
2
4//
7//
8// Authors: Lasse Collin
9// Jia Tan
10//
12
19
20
21// NOTE: The order of these is significant in suffix.c.
26#ifdef HAVE_LZIP_DECODER
27 FORMAT_LZIP,
28#endif
30};
31
32
34typedef struct {
36 uint64_t size;
37
39 unsigned chain_num;
41
42
45extern enum operation_mode opt_mode;
46
50extern enum format_type opt_format;
51
54extern bool opt_auto_adjust;
55
57extern bool opt_single_stream;
58
61extern uint64_t opt_block_size;
62
65
74extern uint64_t block_list_largest;
75
77extern uint32_t block_list_chain_mask;
78
81
83extern void coder_set_preset(uint32_t new_preset);
84
86extern void coder_set_extreme(void);
87
89extern void coder_add_filter(lzma_vli id, void *options);
90
93extern void coder_set_compression_settings(void);
94
96extern void coder_run(const char *filename);
97
98#ifndef NDEBUG
100extern void coder_free(void);
101#endif
102
104extern void coder_add_filters_from_str(const char *filter_str);
105
107extern void coder_add_block_filters(const char *str, size_t slot);
Array of these hold the entries specified with –block-list.
Definition coder.h:34
unsigned chain_num
Filter chain to use for this Block (chains[chain_num])
Definition coder.h:39
uint64_t size
Uncompressed size of the Block.
Definition coder.h:36
lzma_check
Type of the integrity check (Check ID)
Definition check.h:27
lzma_check check
Definition container.h:292
uint64_t lzma_vli
Variable-length integer type.
Definition vli.h:63
const lzma_options_lzma * options
Definition container.h:545
void coder_free(void)
Free the memory allocated for the coder and kill the worker threads.
Definition coder.c:1103
uint64_t * opt_block_list
Definition coder.c:29
void coder_set_extreme(void)
Enable extreme mode.
Definition coder.c:103
void coder_set_compression_settings(void)
Definition coder.c:142
operation_mode
Definition coder.h:13
@ MODE_COMPRESS
Definition coder.h:14
@ MODE_TEST
Definition coder.h:16
@ MODE_LIST
Definition coder.h:17
@ MODE_DECOMPRESS
Definition coder.h:15
enum format_type opt_format
Definition coder.c:25
void coder_add_filter(lzma_vli id, void *options)
Add a filter to the custom filter chain.
Definition coder.c:112
void coder_set_check(lzma_check check)
Set the integrity check type used when compressing.
Definition coder.c:69
format_type
Definition coder.h:22
@ FORMAT_RAW
Definition coder.h:29
@ FORMAT_AUTO
Definition coder.h:23
@ FORMAT_XZ
Definition coder.h:24
@ FORMAT_LZMA
Definition coder.h:25
void coder_run(const char *filename)
Compress or decompress the given file.
Definition coder.c:1024
bool opt_single_stream
If true, stop after decoding the first stream.
Definition coder.c:27
bool opt_auto_adjust
Definition coder.c:26
uint64_t opt_block_size
Definition coder.c:28
void coder_set_preset(uint32_t new_preset)
Set preset number.
Definition coder.c:93
enum operation_mode opt_mode
Definition coder.c:24
const char * str
Table column heading string.
Definition list.c:109
uint64_t block_list_largest
Definition coder.c:31
void coder_add_filters_from_str(const char *filter_str)
Create filter chain from string.
Definition coder.c:186
void coder_add_block_filters(const char *str, size_t slot)
Add or overwrite a filter that can be used by the block-list.
Definition coder.c:210
uint32_t block_list_chain_mask
Bitmask indicating which filter chains we specified in –block-list.
Definition coder.c:32