4 * Interface implemented by decompressors for specific formats.
7 #ifndef _WIMLIB_DECOMPRESSOR_OPS_H
8 #define _WIMLIB_DECOMPRESSOR_OPS_H
12 struct decompressor_ops {
14 int (*create_decompressor)(size_t max_block_size, void **private_ret);
16 int (*decompress)(const void *compressed_data,
17 size_t compressed_size,
18 void *uncompressed_data,
19 size_t uncompressed_size,
22 void (*free_decompressor)(void *private);
25 extern const struct decompressor_ops lzx_decompressor_ops;
26 extern const struct decompressor_ops xpress_decompressor_ops;
27 extern const struct decompressor_ops lzms_decompressor_ops;
29 #endif /* _WIMLIB_DECOMPRESSOR_OPS_H */