XZ Utils
5.2.2
|
Iterator to get information about Blocks and Streams. More...
#include <index.h>
Data Fields | |
struct { | |
const lzma_stream_flags * flags | |
Pointer to Stream Flags. More... | |
const void * reserved_ptr1 | |
const void * reserved_ptr2 | |
const void * reserved_ptr3 | |
lzma_vli number | |
Stream number in the lzma_index. More... | |
lzma_vli block_count | |
Number of Blocks in the Stream. More... | |
lzma_vli compressed_offset | |
Compressed start offset of this Stream. More... | |
lzma_vli uncompressed_offset | |
Uncompressed start offset of this Stream. More... | |
lzma_vli compressed_size | |
Compressed size of this Stream. More... | |
lzma_vli uncompressed_size | |
Uncompressed size of this Stream. More... | |
lzma_vli padding | |
Size of Stream Padding after this Stream. More... | |
lzma_vli reserved_vli1 | |
lzma_vli reserved_vli2 | |
lzma_vli reserved_vli3 | |
lzma_vli reserved_vli4 | |
} | stream |
struct { | |
lzma_vli number_in_file | |
Block number in the file. More... | |
lzma_vli compressed_file_offset | |
Compressed start offset of this Block. More... | |
lzma_vli uncompressed_file_offset | |
Uncompressed start offset of this Block. More... | |
lzma_vli number_in_stream | |
Block number in this Stream. More... | |
lzma_vli compressed_stream_offset | |
Compressed start offset of this Block. More... | |
lzma_vli uncompressed_stream_offset | |
Uncompressed start offset of this Block. More... | |
lzma_vli uncompressed_size | |
Uncompressed size of this Block. More... | |
lzma_vli unpadded_size | |
Unpadded size of this Block. More... | |
lzma_vli total_size | |
Total compressed size. More... | |
lzma_vli reserved_vli1 | |
lzma_vli reserved_vli2 | |
lzma_vli reserved_vli3 | |
lzma_vli reserved_vli4 | |
const void * reserved_ptr1 | |
const void * reserved_ptr2 | |
const void * reserved_ptr3 | |
const void * reserved_ptr4 | |
} | block |
union { | |
const void * p | |
size_t s | |
lzma_vli v | |
} | internal [6] |
Iterator to get information about Blocks and Streams.
const lzma_stream_flags* lzma_index_iter::flags |
Pointer to Stream Flags.
This is NULL if Stream Flags have not been set for this Stream with lzma_index_stream_flags().
Referenced by get_check_names(), lzma_index_dup(), parse_block_header(), and parse_check_value().
lzma_vli lzma_index_iter::number |
Stream number in the lzma_index.
The first Stream is 1.
Referenced by get_check_names(), and lzma_index_dup().
lzma_vli lzma_index_iter::block_count |
Number of Blocks in the Stream.
If this is zero, the block structure below has undefined values.
Referenced by get_check_names(), and lzma_index_dup().
lzma_vli lzma_index_iter::compressed_offset |
Compressed start offset of this Stream.
The offset is relative to the beginning of the lzma_index (i.e. usually the beginning of the .xz file).
Referenced by get_check_names(), and lzma_index_dup().
lzma_vli lzma_index_iter::uncompressed_offset |
Uncompressed start offset of this Stream.
The offset is relative to the beginning of the lzma_index (i.e. usually the beginning of the .xz file).
Referenced by get_check_names(), and lzma_index_dup().
lzma_vli lzma_index_iter::compressed_size |
Compressed size of this Stream.
This includes all headers except the possible Stream Padding after this Stream.
Referenced by get_check_names(), and lzma_index_dup().
lzma_vli lzma_index_iter::uncompressed_size |
Uncompressed size of this Stream.
Uncompressed size of this Block.
You should pass this to the Block decoder if you will decode this Block. It will allow the Block decoder to validate the uncompressed size.
Referenced by get_check_names(), lzma_index_dup(), and parse_block_header().
lzma_vli lzma_index_iter::padding |
Size of Stream Padding after this Stream.
If it hasn't been set with lzma_index_stream_padding(), this defaults to zero. Stream Padding is always a multiple of four bytes.
Referenced by get_check_names(), and lzma_index_dup().
lzma_vli lzma_index_iter::number_in_file |
Block number in the file.
The first Block is 1.
Referenced by get_check_names(), and lzma_index_dup().
lzma_vli lzma_index_iter::compressed_file_offset |
Compressed start offset of this Block.
This offset is relative to the beginning of the lzma_index (i.e. usually the beginning of the .xz file). Normally this is where you should seek in the .xz file to start decompressing this Block.
Referenced by get_check_names(), lzma_index_dup(), parse_block_header(), and parse_check_value().
lzma_vli lzma_index_iter::uncompressed_file_offset |
Uncompressed start offset of this Block.
This offset is relative to the beginning of the lzma_index (i.e. usually the beginning of the .xz file).
When doing random-access reading, it is possible that the target offset is not exactly at Block boundary. One will need to compare the target offset against uncompressed_file_offset or uncompressed_stream_offset, and possibly decode and throw away some amount of data before reaching the target offset.
Referenced by get_check_names(), and lzma_index_dup().
lzma_vli lzma_index_iter::number_in_stream |
Block number in this Stream.
The first Block is 1.
Referenced by get_check_names(), and lzma_index_dup().
lzma_vli lzma_index_iter::compressed_stream_offset |
Compressed start offset of this Block.
This offset is relative to the beginning of the Stream containing this Block.
Referenced by lzma_index_dup().
lzma_vli lzma_index_iter::uncompressed_stream_offset |
Uncompressed start offset of this Block.
This offset is relative to the beginning of the Stream containing this Block.
Referenced by lzma_index_dup().
lzma_vli lzma_index_iter::unpadded_size |
Unpadded size of this Block.
You should pass this to the Block decoder if you will decode this Block. It will allow the Block decoder to validate the unpadded size.
Referenced by get_check_names(), lzma_index_dup(), and parse_block_header().
lzma_vli lzma_index_iter::total_size |
Total compressed size.
This includes all headers and padding in this Block. This is useful if you need to know how many bytes the Block decoder will actually read.
Referenced by get_check_names(), lzma_index_dup(), parse_block_header(), and parse_check_value().