template<typename Readable>
vt::util::compress::Decompressor struct

A streaming decompressor for reading an input buffer with brotli compression.

Base classes

struct DecompressorBase
Base class for decompressor without the stream type to avoid propagation.

Constructors, destructors, conversion operators

Decompressor(Readable in_r, std::size_t buf_len_ = 1<<16) explicit
Construct the decompressor.
~Decompressor() virtual

Public functions

auto read(uint8_t* output_buffer, std::size_t bytes_to_output) -> std::size_t override
Read bytes into output buffer.
auto done() const -> bool override
Whether we are done with decompressing the file.

Protected functions

auto getMoreInput() -> bool
Get more input, we need it to keep streaming output.

Function documentation

template<typename Readable>
vt::util::compress::Decompressor<Readable>::Decompressor(Readable in_r, std::size_t buf_len_ = 1<<16) explicit

Construct the decompressor.

Parameters
in_r in the stream-like readable to read from
buf_len_ in the temporary buffer length

template<typename Readable>
std::size_t vt::util::compress::Decompressor<Readable>::read(uint8_t* output_buffer, std::size_t bytes_to_output) override

Read bytes into output buffer.

Parameters
output_buffer in the output buffer
bytes_to_output in the number of bytes in the output buffer
Returns how many bytes it actually read into the buffer

template<typename Readable>
bool vt::util::compress::Decompressor<Readable>::done() const override

Whether we are done with decompressing the file.

Returns whether we are done

template<typename Readable>
bool vt::util::compress::Decompressor<Readable>::getMoreInput() protected

Get more input, we need it to keep streaming output.

Returns whether more input is available