NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
zlib_compressor::stream_compressor类 参考

流式压缩器 更多...

#include <zlib_compress.hpp>

Public 成员函数

 stream_compressor (compress_level level=compress_level::default_level, compress_strategy strategy=compress_strategy::default_strategy, compress_format format=compress_format::zlib)
 构造函数
 ~stream_compressor ()
 析构函数
 stream_compressor (stream_compressor &&other) noexcept
 移动构造函数
stream_compressoroperator= (stream_compressor &&other) noexcept
 移动赋值运算符
byte_vector compress (const cbyte_view &data, bool finish=false)
 压缩数据
byte_vector compress (string_view data, bool finish=false)
 压缩字符串视图
byte_vector finish ()
 完成压缩并返回剩余数据
void reset (compress_level level=compress_level::default_level, compress_strategy strategy=compress_strategy::default_strategy, compress_format format=compress_format::zlib)
 重置压缩器状态
NEFORCE_NODISCARD size_t bytes_input () const noexcept
 获取输入字节数
NEFORCE_NODISCARD size_t bytes_output () const noexcept
 获取输出字节数
NEFORCE_NODISCARD double compression_ratio () const noexcept
 获取压缩率

详细描述

流式压缩器

支持分块压缩数据,适用于大文件或网络传输场景。 维护压缩状态,可以多次添加数据并最终完成压缩。

在文件 zlib_compress.hpp238 行定义.

构造及析构函数说明

◆ stream_compressor() [1/2]

zlib_compressor::stream_compressor::stream_compressor ( compress_level level = compress_level::default_level,
compress_strategy strategy = compress_strategy::default_strategy,
compress_format format = compress_format::zlib )
explicit

构造函数

参数
level压缩级别,默认为default_level
strategy压缩策略,默认为default_strategy
format压缩格式,默认为zlib
异常
zlib_exception当重置失败时抛出

引用了 default_level, default_strategy, format() , 以及 zlib.

被这些函数引用 operator=(), stream_compressor() , 以及 ~stream_compressor().

◆ stream_compressor() [2/2]

zlib_compressor::stream_compressor::stream_compressor ( stream_compressor && other)
noexcept

移动构造函数

参数
other源对象

引用了 stream_compressor().

成员函数说明

◆ bytes_input()

NEFORCE_NODISCARD size_t zlib_compressor::stream_compressor::bytes_input ( ) const
inlinenoexcept

获取输入字节数

返回
已处理的输入字节数

在文件 zlib_compress.hpp318 行定义.

◆ bytes_output()

NEFORCE_NODISCARD size_t zlib_compressor::stream_compressor::bytes_output ( ) const
inlinenoexcept

获取输出字节数

返回
已产生的输出字节数

在文件 zlib_compress.hpp324 行定义.

◆ compress() [1/2]

byte_vector zlib_compressor::stream_compressor::compress ( const cbyte_view & data,
bool finish = false )

压缩数据

参数
data输入数据视图
finish是否完成(最后一块数据)
返回
压缩后的数据块
异常
zlib_exception当未初始化或压缩失败时抛出

引用了 data() , 以及 finish().

◆ compress() [2/2]

byte_vector zlib_compressor::stream_compressor::compress ( string_view data,
bool finish = false )

压缩字符串视图

参数
data字符串视图
finish是否完成
返回
压缩后的数据块
异常
zlib_exception当未初始化或压缩失败时抛出

引用了 data() , 以及 finish().

◆ compression_ratio()

NEFORCE_NODISCARD double zlib_compressor::stream_compressor::compression_ratio ( ) const
inlinenoexcept

获取压缩率

返回
输出/输入字节比率

在文件 zlib_compress.hpp330 行定义.

◆ finish()

byte_vector zlib_compressor::stream_compressor::finish ( )

完成压缩并返回剩余数据

返回
最后的压缩数据块
异常
zlib_exception当未初始化或压缩失败时抛出

被这些函数引用 compress() , 以及 compress().

◆ operator=()

stream_compressor & zlib_compressor::stream_compressor::operator= ( stream_compressor && other)
noexcept

移动赋值运算符

参数
other源对象
返回
自身引用

引用了 stream_compressor().

◆ reset()

void zlib_compressor::stream_compressor::reset ( compress_level level = compress_level::default_level,
compress_strategy strategy = compress_strategy::default_strategy,
compress_format format = compress_format::zlib )

重置压缩器状态

参数
level新压缩级别,默认为default_level
strategy新压缩策略,默认为default_strategy
format新压缩格式,默认为zlib
异常
zlib_exception当重置失败时抛出

引用了 default_level, default_strategy, format() , 以及 zlib.


该类的文档由以下文件生成: