20#ifndef SQFS_DATA_READER_H
21#define SQFS_DATA_READER_H
103 size_t *size, sqfs_u8 **out);
121 size_t index,
size_t *size,
145 sqfs_u64 offset,
void *buffer,
Includes forward declarations of data structures, macros and integer types.
Encapsultes a compressor with a simple interface to compress or extract chunks of data.
Abstracts access to data blocks stored in a SquashFS image.
SQFS_API sqfs_s32 sqfs_data_reader_read(sqfs_data_reader_t *data, const sqfs_inode_generic_t *inode, sqfs_u64 offset, void *buffer, sqfs_u32 size)
A simple UNIX-read-like function to read data from a file.
SQFS_API int sqfs_data_reader_get_block(sqfs_data_reader_t *data, const sqfs_inode_generic_t *inode, size_t index, size_t *size, sqfs_u8 **out)
Get a full sized data block of a file by block index.
SQFS_API int sqfs_data_reader_get_fragment(sqfs_data_reader_t *data, const sqfs_inode_generic_t *inode, size_t *size, sqfs_u8 **out)
Get the tail end of a file.
SQFS_API sqfs_data_reader_t * sqfs_data_reader_create(sqfs_file_t *file, size_t block_size, sqfs_compressor_t *cmp, sqfs_u32 flags)
Create a data reader instance.
SQFS_API int sqfs_data_reader_load_fragment_table(sqfs_data_reader_t *data, const sqfs_super_t *super)
Read and decode the fragment table from disk.
Abstracts file I/O to make it easy to embedd SquashFS.
A generic inode structure that combines all others and provides additional information.
The SquashFS super block, located at the beginning of the file system to describe the layout of the f...