XZ Utils  5.1.0alpha
Data Fields
lzma_next_coder_s Struct Reference

Hold data and function pointers of the next filter in the chain. More...

#include <common.h>

Data Fields

lzma_codercoder
 Pointer to coder-specific data. More...
 
lzma_vli id
 
uintptr_t init
 
lzma_code_function code
 Pointer to function to do the actual coding. More...
 
lzma_end_function end
 
lzma_check(* get_check )(const lzma_coder *coder)
 
lzma_ret(* memconfig )(lzma_coder *coder, uint64_t *memusage, uint64_t *old_memlimit, uint64_t new_memlimit)
 
lzma_ret(* update )(lzma_coder *coder, lzma_allocator *allocator, const lzma_filter *filters, const lzma_filter *reversed_filters)
 

Detailed Description

Hold data and function pointers of the next filter in the chain.

Field Documentation

lzma_coder* lzma_next_coder_s::coder
lzma_vli lzma_next_coder_s::id

Filter ID. This is LZMA_VLI_UNKNOWN when this structure doesn't point to a filter coder.

Referenced by lzma_next_filter_init(), and lzma_next_filter_update().

uintptr_t lzma_next_coder_s::init

"Pointer" to init function. This is never called here. We need only to detect if we are initializing a coder that was allocated earlier. See lzma_next_coder_init and lzma_next_strm_init macros in this file.

Referenced by lzma_next_end().

lzma_code_function lzma_next_coder_s::code
lzma_end_function lzma_next_coder_s::end

Pointer to function to free lzma_next_coder.coder. This can be NULL; in that case, lzma_free is called to free lzma_next_coder.coder.

Referenced by copy_or_code(), fill_window(), and lzma_next_end().

lzma_check(* lzma_next_coder_s::get_check) (const lzma_coder *coder)

Pointer to function to return the type of the integrity check. Most coders won't support this.

Referenced by lzma_get_check().

lzma_ret(* lzma_next_coder_s::memconfig) (lzma_coder *coder, uint64_t *memusage, uint64_t *old_memlimit, uint64_t new_memlimit)

Pointer to function to get and/or change the memory usage limit. If new_memlimit == 0, the limit is not changed.

Referenced by lzma_memlimit_get(), lzma_memlimit_set(), lzma_memusage(), and lzma_stream_buffer_decode().

lzma_ret(* lzma_next_coder_s::update) (lzma_coder *coder, lzma_allocator *allocator, const lzma_filter *filters, const lzma_filter *reversed_filters)

Update the filter-specific options or the whole filter chain in the encoder.

Referenced by copy_or_code(), encode_in_place(), fill_window(), lzma_filters_update(), and lzma_next_filter_update().


The documentation for this struct was generated from the following file: