|
enum | {
SEQ_STREAM_HEADER
, SEQ_BLOCK_HEADER
, SEQ_BLOCK_INIT
, SEQ_BLOCK_RUN
,
SEQ_INDEX
, SEQ_STREAM_FOOTER
, SEQ_STREAM_PADDING
} |
|
enum | {
SEQ_STREAM_HEADER
, SEQ_BLOCK_HEADER
, SEQ_BLOCK_INIT
, SEQ_BLOCK_THR_INIT
,
SEQ_BLOCK_THR_RUN
, SEQ_BLOCK_DIRECT_INIT
, SEQ_BLOCK_DIRECT_RUN
, SEQ_INDEX_WAIT_OUTPUT
,
SEQ_INDEX_DECODE
, SEQ_STREAM_FOOTER
, SEQ_STREAM_PADDING
, SEQ_ERROR
} |
|
enum | {
SEQ_STREAM_HEADER
, SEQ_BLOCK_INIT
, SEQ_BLOCK_HEADER
, SEQ_BLOCK_ENCODE
,
SEQ_INDEX_ENCODE
, SEQ_STREAM_FOOTER
} |
|
enum | {
SEQ_STREAM_HEADER
, SEQ_BLOCK_HEADER
, SEQ_BLOCK_INIT
, SEQ_BLOCK_RUN
,
SEQ_INDEX
, SEQ_STREAM_FOOTER
, SEQ_STREAM_PADDING
} |
|
enum | {
SEQ_STREAM_HEADER
, SEQ_BLOCK_HEADER
, SEQ_BLOCK_INIT
, SEQ_BLOCK_THR_INIT
,
SEQ_BLOCK_THR_RUN
, SEQ_BLOCK_DIRECT_INIT
, SEQ_BLOCK_DIRECT_RUN
, SEQ_INDEX_WAIT_OUTPUT
,
SEQ_INDEX_DECODE
, SEQ_STREAM_FOOTER
, SEQ_STREAM_PADDING
, SEQ_ERROR
} |
|
enum | {
SEQ_STREAM_HEADER
, SEQ_BLOCK_INIT
, SEQ_BLOCK_HEADER
, SEQ_BLOCK_ENCODE
,
SEQ_INDEX_ENCODE
, SEQ_STREAM_FOOTER
} |
|
enum | {
SEQ_STREAM_HEADER
, SEQ_BLOCK_HEADER
, SEQ_BLOCK_INIT
, SEQ_BLOCK_RUN
,
SEQ_INDEX
, SEQ_STREAM_FOOTER
, SEQ_STREAM_PADDING
} |
|
enum | {
SEQ_STREAM_HEADER
, SEQ_BLOCK_HEADER
, SEQ_BLOCK_INIT
, SEQ_BLOCK_THR_INIT
,
SEQ_BLOCK_THR_RUN
, SEQ_BLOCK_DIRECT_INIT
, SEQ_BLOCK_DIRECT_RUN
, SEQ_INDEX_WAIT_OUTPUT
,
SEQ_INDEX_DECODE
, SEQ_STREAM_FOOTER
, SEQ_STREAM_PADDING
, SEQ_ERROR
} |
|
enum | {
SEQ_STREAM_HEADER
, SEQ_BLOCK_INIT
, SEQ_BLOCK_HEADER
, SEQ_BLOCK_ENCODE
,
SEQ_INDEX_ENCODE
, SEQ_STREAM_FOOTER
} |
|
◆ anonymous enum
Enumerator |
---|
SEQ_STREAM_HEADER | |
SEQ_BLOCK_HEADER | |
SEQ_BLOCK_INIT | |
SEQ_BLOCK_RUN | |
SEQ_INDEX | |
SEQ_STREAM_FOOTER | |
SEQ_STREAM_PADDING | |
◆ anonymous enum
Enumerator |
---|
SEQ_STREAM_HEADER | |
SEQ_BLOCK_HEADER | |
SEQ_BLOCK_INIT | |
SEQ_BLOCK_THR_INIT | |
SEQ_BLOCK_THR_RUN | |
SEQ_BLOCK_DIRECT_INIT | |
SEQ_BLOCK_DIRECT_RUN | |
SEQ_INDEX_WAIT_OUTPUT | |
SEQ_INDEX_DECODE | |
SEQ_STREAM_FOOTER | |
SEQ_STREAM_PADDING | |
SEQ_ERROR | |
◆ anonymous enum
Enumerator |
---|
SEQ_STREAM_HEADER | |
SEQ_BLOCK_INIT | |
SEQ_BLOCK_HEADER | |
SEQ_BLOCK_ENCODE | |
SEQ_INDEX_ENCODE | |
SEQ_STREAM_FOOTER | |
◆ anonymous enum
Enumerator |
---|
SEQ_STREAM_HEADER | |
SEQ_BLOCK_HEADER | |
SEQ_BLOCK_INIT | |
SEQ_BLOCK_RUN | |
SEQ_INDEX | |
SEQ_STREAM_FOOTER | |
SEQ_STREAM_PADDING | |
◆ anonymous enum
Enumerator |
---|
SEQ_STREAM_HEADER | |
SEQ_BLOCK_HEADER | |
SEQ_BLOCK_INIT | |
SEQ_BLOCK_THR_INIT | |
SEQ_BLOCK_THR_RUN | |
SEQ_BLOCK_DIRECT_INIT | |
SEQ_BLOCK_DIRECT_RUN | |
SEQ_INDEX_WAIT_OUTPUT | |
SEQ_INDEX_DECODE | |
SEQ_STREAM_FOOTER | |
SEQ_STREAM_PADDING | |
SEQ_ERROR | |
◆ anonymous enum
Enumerator |
---|
SEQ_STREAM_HEADER | |
SEQ_BLOCK_INIT | |
SEQ_BLOCK_HEADER | |
SEQ_BLOCK_ENCODE | |
SEQ_INDEX_ENCODE | |
SEQ_STREAM_FOOTER | |
◆ anonymous enum
Enumerator |
---|
SEQ_STREAM_HEADER | |
SEQ_BLOCK_HEADER | |
SEQ_BLOCK_INIT | |
SEQ_BLOCK_RUN | |
SEQ_INDEX | |
SEQ_STREAM_FOOTER | |
SEQ_STREAM_PADDING | |
◆ anonymous enum
Enumerator |
---|
SEQ_STREAM_HEADER | |
SEQ_BLOCK_HEADER | |
SEQ_BLOCK_INIT | |
SEQ_BLOCK_THR_INIT | |
SEQ_BLOCK_THR_RUN | |
SEQ_BLOCK_DIRECT_INIT | |
SEQ_BLOCK_DIRECT_RUN | |
SEQ_INDEX_WAIT_OUTPUT | |
SEQ_INDEX_DECODE | |
SEQ_STREAM_FOOTER | |
SEQ_STREAM_PADDING | |
SEQ_ERROR | |
◆ anonymous enum
Enumerator |
---|
SEQ_STREAM_HEADER | |
SEQ_BLOCK_INIT | |
SEQ_BLOCK_HEADER | |
SEQ_BLOCK_ENCODE | |
SEQ_INDEX_ENCODE | |
SEQ_STREAM_FOOTER | |
◆ block_decoder
◆ block_encoder
◆ block_encoder_is_initialized
bool block_encoder_is_initialized |
True if Block encoder has been initialized by stream_encoder_init() or stream_encoder_update() and thus doesn't need to be initialized in stream_encode().
◆ block_options
Options for the Block encoder.
Block options decoded by the Block Header decoder and used by the Block decoder.
Every Block Header will be decoded into this structure. This is also used to initialize a Block decoder when in direct mode. In threaded mode, a thread-specific copy will be made for decoder initialization because the Block decoder will modify the structure given to it.
◆ buffer
Buffer to hold Stream Header, Block Header, and Stream Footer. Block Header has biggest maximum size.
◆ buffer_pos
Read position in buffer[].
◆ buffer_size
Total number of bytes in buffer[].
◆ concatenated
If true, we will decode concatenated Streams that possibly have Stream Padding between or after them. LZMA_STREAM_END is returned once the application isn't giving us any new input (LZMA_FINISH), and we aren't in the middle of a Stream, and possible Stream Padding is a multiple of four bytes.
◆ cond
◆ fail_fast
If true, we will return any errors immediately instead of first producing all output before the location of the error.
◆ filters
The filter chain currently in use.
Buffer to hold a filter chain for Block Header decoding and initialization. These are freed after successful Block decoder initialization or at stream_decoder_mt_end(). The thread-specific copy of block_options won't hold a pointer to filters[] after initialization.
◆ first_stream
When decoding concatenated Streams, this is true as long as we are decoding the first Stream. This is needed to avoid misleading LZMA_FORMAT_ERROR in case the later Streams don't have valid magic bytes.
◆ ignore_check
If true, we will tell the Block decoder to skip calculating and verifying the integrity check.
◆ index
Index to hold sizes of the Blocks.
◆ index_encoder
Index encoder. This is separate from Block encoder, because this doesn't take much memory, and when encoding multiple Streams with the same encoding options we avoid reallocating memory.
◆ index_hash
Index is hashed so that it can be compared to the sizes of Blocks with O(1) memory usage.
◆ mem_cached
Amount of memory used by the idle (cached) threads.
- Note
- Use mutex.
◆ mem_direct_mode
Amount of memory in use by the direct mode decoder (coder->block_decoder). In threaded mode this is 0.
◆ mem_in_use
Amount of memory needed by the running worker threads. This doesn't include the memory needed by the output buffer.
- Note
- Use mutex.
◆ mem_next_block
Amount of memory actually needed to decode the next Block in threaded mode. This is mem_next_filters + mem_next_in + memory needed for lzma_outbuf.
◆ mem_next_filters
uint64_t mem_next_filters |
Amount of memory needed for the filter chain of the next Block.
◆ mem_next_in
Amount of memory needed for the thread-specific input buffer for the next Block.
◆ memlimit
◆ memlimit_stop
Memory usage limit that should never be exceeded. LZMA_MEMLIMIT_ERROR will be returned if decoding isn't possible even in single-threaded mode without exceeding this limit.
◆ memlimit_threading
uint64_t memlimit_threading |
Memory usage that will not be exceeded in multi-threaded mode. Single-threaded mode can exceed this even by a large amount.
◆ memusage
Amount of memory actually needed (only an estimate)
◆ mutex
◆ out_was_filled
This is used to track if the previous call to stream_decode_mt() had output space (*out_pos < out_size) and managed to fill the output buffer (*out_pos == out_size). This may be set to true in read_output_and_wait(). This is read and then reset to false at the beginning of stream_decode_mt().
This is needed to support applications that call lzma_code() in such a way that more input is provided only when lzma_code() didn't fill the output buffer completely. Basically, this makes it easier to convert such applications from single-threaded decoder to multi-threaded decoder.
◆ outq
Output buffer queue for decompressed data from the worker threads
- Note
- Use mutex with operations that need it.
◆ pending_error
Error code to return after pending output has been copied out. If set in read_output_and_wait(), this is a mirror of thread_error. If set in stream_decode_mt() then it's, for example, error that occurred when decoding Block Header.
◆ pos
Write position in buffer[] and position in Stream Padding.
◆ progress_in
Amount of compressed data in Stream Header + Blocks that have already been finished.
- Note
- Use mutex.
◆ progress_out
Amount of uncompressed data in Blocks that have already been finished.
- Note
- Use mutex.
◆ [] [1/9]
◆ [] [2/9]
◆ [] [3/9]
◆ [] [4/9]
◆ [] [5/9]
◆ [] [6/9]
◆ [] [7/9]
◆ [] [8/9]
◆ [] [9/9]
◆ stream_flags
Stream Flags from Stream Header.
◆ tell_any_check
If true, LZMA_GET_CHECK is returned after decoding Stream Header.
◆ tell_no_check
If true, LZMA_NO_CHECK is returned if the Stream has no integrity check.
◆ tell_unsupported_check
bool tell_unsupported_check |
If true, LZMA_UNSUPPORTED_CHECK is returned if the Stream has an integrity check that isn't supported by this liblzma build.
◆ thr
The most recent worker thread to which the main thread writes the new input from the application.
◆ thread_error
Error code from a worker thread.
- Note
- Use mutex.
◆ threads
Array of allocated thread-specific structures. When no threads are in use (direct mode) this is NULL. In threaded mode this points to an array of threads_max number of worker_thread structs.
◆ threads_free
Stack of free threads. When a thread finishes, it puts itself back into this stack. This starts as empty because threads are created only when actually needed.
- Note
- Use mutex.
◆ threads_initialized
uint32_t threads_initialized |
Number of thread structures that have been initialized from "threads", and thus the number of worker threads actually created so far.
◆ threads_max
Number of threads that will be created at maximum.
◆ timeout
Maximum wait time if cannot use all the input and cannot fill the output buffer. This is in milliseconds.
The documentation for this struct was generated from the following files:
- C:/Pereira/Dua/source forge files my love/tar_dll/val/xcx_xz/xz-5.4.0/xz-5.4.0/src/liblzma/common/stream_decoder.c
- C:/Pereira/Dua/source forge files my love/tar_dll/val/xcx_xz/xz-5.4.0/xz-5.4.0/src/liblzma/common/stream_decoder_mt.c
- C:/Pereira/Dua/source forge files my love/tar_dll/val/xcx_xz/xz-5.4.0/xz-5.4.0/src/liblzma/common/stream_encoder.c
- C:/Pereira/Dua/source forge files my love/tar_dll/val/xcx_xz/xz-5.4.1/xz-5.4.1/src/liblzma/common/stream_decoder.c
- C:/Pereira/Dua/source forge files my love/tar_dll/val/xcx_xz/xz-5.4.1/xz-5.4.1/src/liblzma/common/stream_decoder_mt.c
- C:/Pereira/Dua/source forge files my love/tar_dll/val/xcx_xz/xz-5.4.1/xz-5.4.1/src/liblzma/common/stream_encoder.c
- C:/Pereira/Dua/source forge files my love/tar_dll/val/xcx_xz/xz-5.6.2/xz-5.6.2/src/liblzma/common/stream_decoder.c
- C:/Pereira/Dua/source forge files my love/tar_dll/val/xcx_xz/xz-5.6.2/xz-5.6.2/src/liblzma/common/stream_decoder_mt.c
- C:/Pereira/Dua/source forge files my love/tar_dll/val/xcx_xz/xz-5.6.2/xz-5.6.2/src/liblzma/common/stream_encoder.c