Sese Framework
x.y.z
A cross-platform framework
|
压缩器 更多...
#include <Compressor.h>
Public 类型 | |
using | OutputStream = sese::io::OutputStream |
Public 成员函数 | |
Compressor (CompressionType type, size_t level, size_t buffer_size=ZLIB_CHUNK_SIZE) | |
virtual | ~Compressor () |
释放资源 | |
void | input (const void *input, unsigned int input_size) |
int | deflate (OutputStream *out) |
int | reset () |
size_t | getTotalIn () const |
size_t | getTotalOut () const |
Private 属性 | |
void * | stream |
size_t | cap = 0 |
表示 buffer 分配空间大小 | |
size_t | length = 0 |
表示 buffer 填充大小 | |
size_t | read = 0 |
表示 buffer 已读部分 | |
unsigned char * | buffer |
内部缓存 buffer | |
压缩器
|
explicit |
|
virtual |
释放资源
int sese::Compressor::deflate | ( | OutputStream * | out | ) |
进行压缩
out | 压缩后的数据输出流 |
Z_OK(0) | 当前缓存块已压缩完成 |
Z_STREAM_ERROR(-2) | 其他错误 |
Z_BUF_ERROR(-5) | 输出流容量不足 |
引用了 read() , 以及 sese::io::OutputStream::write().
|
nodiscard |
当前已处理输入缓存大小
|
nodiscard |
void sese::Compressor::input | ( | const void * | input, |
unsigned int | input_size ) |
设置欲压缩的缓存
input | 欲压缩的缓存 |
input_size | 此缓存的大小 |
int sese::Compressor::reset | ( | ) |
|
private |
内部缓存 buffer
被这些函数引用 Compressor().
|
private |
表示 buffer 分配空间大小
被这些函数引用 Compressor().
|
private |
表示 buffer 填充大小
|
private |
表示 buffer 已读部分
|
private |
被这些函数引用 Compressor().