8 #ifndef BOTAN_COMPRESSION_TRANSFORM_H__
9 #define BOTAN_COMPRESSION_TRANSFORM_H__
11 #include <botan/secmem.h>
30 virtual void start(
size_t comp_level = 0) = 0;
51 virtual std::string name()
const = 0;
57 virtual void clear() = 0;
72 virtual void start() = 0;
92 virtual std::string name()
const = 0;
98 virtual void clear() = 0;
114 virtual void next_in(uint8_t* b,
size_t len) = 0;
116 virtual void next_out(uint8_t* b,
size_t len) = 0;
118 virtual size_t avail_in()
const = 0;
122 virtual uint32_t
run_flag()
const = 0;
126 virtual bool run(uint32_t
flags) = 0;
139 void clear()
final override;
142 void start(
size_t level)
final override;
149 std::unique_ptr<Compression_Stream> m_stream;
162 void clear()
final override;
165 void start()
final override;
172 std::unique_ptr<Compression_Stream> m_stream;
void finish(secure_vector< uint8_t > &buf, size_t offset) finaloverride
virtual void next_in(uint8_t *b, size_t len)=0
virtual size_t avail_in() const =0
void update(secure_vector< uint8_t > &buf, size_t offset) finaloverride
virtual size_t avail_out() const =0
virtual uint32_t run_flag() const =0
void update(secure_vector< uint8_t > &buf, size_t offset, bool flush) finaloverride
virtual ~Decompression_Algorithm()
Compression_Algorithm * make_compressor(const std::string &name)
std::vector< T, secure_allocator< T >> secure_vector
Decompression_Algorithm * make_decompressor(const std::string &name)
void finish(secure_vector< uint8_t > &buf, size_t offset) finaloverride
virtual void next_out(uint8_t *b, size_t len)=0
virtual ~Compression_Stream()
void clear() finaloverride
virtual uint32_t flush_flag() const =0
virtual uint32_t finish_flag() const =0
void clear() finaloverride
virtual bool run(uint32_t flags)=0
virtual ~Compression_Algorithm()