lzma_simple_coder Struct Reference

## Data Fields

lzma_next_coder | next
| Next filter in the chain. More...
bool | end_was_reached
| True if the next coder in the chain has returned LZMA_STREAM_END. More...
bool | is_encoder
size_t(* | filter )(void *simple, uint32_t now_pos, bool is_encoder, uint8_t *buffer, size_t size)
void * | simple
uint32_t | now_pos
size_t | allocated
| Size of the memory allocated for the buffer. More...
size_t | pos
size_t | filtered
size_t | size
uint8_t | buffer []
| Temporary buffer. More...

## Field Documentation

## next

lzma_next_coder lzma_simple_coder::next

Next filter in the chain.

## end_was_reached

bool lzma_simple_coder::end_was_reached

True if the next coder in the chain has returned LZMA_STREAM_END.

## is_encoder

bool lzma_simple_coder::is_encoder

True if filter() should encode the data; false to decode. Currently all simple filters use the same function for encoding and decoding, because the difference between encoders and decoders is very small.

## filter

size_t(* lzma_simple_coder::filter) (void *simple, uint32_t now_pos, bool is_encoder, uint8_t *buffer, size_t size)

Pointer to filter-specific function, which does the actual filtering.

## simple

void* lzma_simple_coder::simple

Pointer to filter-specific data, or NULL if filter doesn't need any extra data.

## now_pos

uint32_t lzma_simple_coder::now_pos

The lowest 32 bits of the current position in the data. Most filters need this to do conversions between absolute and relative addresses.

## allocated

size_t lzma_simple_coder::allocated

Size of the memory allocated for the buffer.

## pos

size_t lzma_simple_coder::pos

Flushing position in the temporary buffer. buffer[pos] is the next byte to be copied to out[].

## filtered

size_t lzma_simple_coder::filtered

buffer[filtered] is the first unfiltered byte. When pos is smaller than filtered, there is unflushed filtered data in the buffer.

## size

size_t lzma_simple_coder::size

Total number of bytes (both filtered and unfiltered) currently in the temporary buffer.

## buffer

uint8_t lzma_simple_coder::buffer[]

Temporary buffer.

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

- liblzma/simple/simple_private.h