|
static const uint8_t * | mf_ptr (const lzma_mf *mf) |
| Get pointer to the first byte not ran through the match finder. More...
|
|
static uint32_t | mf_avail (const lzma_mf *mf) |
| Get the number of bytes that haven't been ran through the match finder yet. More...
|
|
static uint32_t | mf_unencoded (const lzma_mf *mf) |
|
static uint32_t | mf_position (const lzma_mf *mf) |
|
static void | mf_skip (lzma_mf *mf, uint32_t amount) |
|
static void | mf_read (lzma_mf *mf, uint8_t *out, size_t *out_pos, size_t out_size, size_t *left) |
|
lzma_ret | lzma_lz_encoder_init (lzma_next_coder *next, const lzma_allocator *allocator, const lzma_filter_info *filters, lzma_ret(*lz_init)(lzma_lz_encoder *lz, const lzma_allocator *allocator, const void *options, lzma_lz_options *lz_options)) |
|
uint64_t | lzma_lz_encoder_memusage (const lzma_lz_options *lz_options) |
|
uint32_t | lzma_mf_find (lzma_mf *mf, uint32_t *count, lzma_match *matches) |
| Find matches starting from the current byte. More...
|
|
uint32_t | lzma_mf_hc3_find (lzma_mf *dict, lzma_match *matches) |
|
void | lzma_mf_hc3_skip (lzma_mf *dict, uint32_t amount) |
|
uint32_t | lzma_mf_hc4_find (lzma_mf *dict, lzma_match *matches) |
|
void | lzma_mf_hc4_skip (lzma_mf *dict, uint32_t amount) |
|
uint32_t | lzma_mf_bt2_find (lzma_mf *dict, lzma_match *matches) |
|
void | lzma_mf_bt2_skip (lzma_mf *dict, uint32_t amount) |
|
uint32_t | lzma_mf_bt3_find (lzma_mf *dict, lzma_match *matches) |
|
void | lzma_mf_bt3_skip (lzma_mf *dict, uint32_t amount) |
|
uint32_t | lzma_mf_bt4_find (lzma_mf *dict, lzma_match *matches) |
|
void | lzma_mf_bt4_skip (lzma_mf *dict, uint32_t amount) |
|
LZ in window and match finder API.
static uint32_t mf_position |
( |
const lzma_mf * |
mf | ) |
|
|
inlinestatic |
Calculate the absolute offset from the beginning of the most recent dictionary reset. Only the lowest four bits are important, so there's no problem that we don't know the 64-bit size of the data encoded so far.
NOTE: When moving the input window, we need to do it so that the lowest bits of dict->read_pos are not modified to keep this macro working as intended.
References lzma_mf_s::read_ahead, and lzma_mf_s::read_pos.