35 #ifndef LZ4_MODULE_HPP
36 #define LZ4_MODULE_HPP
45 #include "../my_config.h"
55 class lz4_module:
public compress_module
58 lz4_module(U_I compression_level = 9);
59 lz4_module(
const lz4_module & ref);
60 lz4_module(lz4_module && ref) noexcept;
61 lz4_module & operator = (
const lz4_module & ref);
62 lz4_module & operator = (lz4_module && ref) noexcept;
63 virtual ~lz4_module() noexcept;
69 virtual U_I get_max_compressing_size()
const override;
71 virtual U_I get_min_size_to_compress(U_I clear_size)
const override;
73 virtual U_I compress_data(
const char *normal,
74 const U_I normal_size,
76 U_I zip_buf_size)
const override;
78 virtual U_I uncompress_data(
const char *zip_buf,
79 const U_I zip_buf_size,
81 U_I normal_size)
const override;
84 virtual std::unique_ptr<compress_module> clone()
const override;
provides abstracted interface of per-block compression/decompression
compression
the different compression algorithm available
libdar namespace encapsulate all libdar symbols