#ifndef BLUELIB_COMPRESS_COMPRESSOR_H_ #define BLUELIB_COMPRESS_COMPRESSOR_H_ #include #include #include struct b_ringbuffer; struct b_compression_function; enum b_compression_mode; typedef struct b_compressor b_compressor; BLUE_API b_status b_compressor_create( const struct b_compression_function *func, enum b_compression_mode mode, struct b_ringbuffer *inbuf, struct b_ringbuffer *outbuf, b_compressor **out); BLUE_API b_status b_compressor_destroy(b_compressor *compressor); BLUE_API b_status b_compressor_get_buffer_size( const b_compressor *compressor, size_t *inbuf_size, size_t *outbuf_size); BLUE_API b_status b_compressor_step(b_compressor *compressor); BLUE_API b_status b_compressor_end(b_compressor *compressor); BLUE_API b_status b_compressor_reset(b_compressor *compressor); BLUE_API bool b_compressor_eof(const b_compressor *compressor); #endif