25#ifndef JOIN_DATA_ZSTREAM_HPP
26#define JOIN_DATA_ZSTREAM_HPP
52 Zstreambuf (std::streambuf* streambuf,
int format,
bool own =
false);
97 virtual int_type
overflow (int_type c = traits_type::eof ())
override;
103 virtual int_type
sync ()
override;
stream buffer decorator.
Definition streambuf.hpp:38
zlib stream.
Definition zstream.hpp:130
Format
data format.
Definition zstream.hpp:136
@ Zlib
Definition zstream.hpp:138
@ Deflate
Definition zstream.hpp:137
@ Gzip
Definition zstream.hpp:139
Zstream(const Zstream &other)=delete
copy constructor.
Zstream(std::iostream &stream, Format format=Zlib)
create the zlib stream instance.
Definition zstream.cpp:213
virtual ~Zstream()=default
destroy the zlib stream instance.
Zstream & operator=(const Zstream &other)=delete
copy assignment operator.
Zstreambuf _zbuf
zlib stream buffer
Definition zstream.hpp:182
zlib stream buffer.
Definition zstream.hpp:44
void release()
flush pending output and release the zlib contexts.
Definition zstream.cpp:88
Zstreambuf & operator=(const Zstreambuf &other)=delete
copy assignment operator.
virtual int_type underflow() override
reads characters from the associated input sequence to the get area.
Definition zstream.cpp:108
Zstreambuf(std::streambuf *streambuf, int format, bool own=false)
create the zlib stream buffer instance.
Definition zstream.cpp:39
std::unique_ptr< char[]> _buf
internal buffer.
Definition zstream.hpp:123
virtual int_type overflow(int_type c=traits_type::eof()) override
writes characters to the associated output sequence from the put area.
Definition zstream.cpp:152
int _instate
inflate state.
Definition zstream.hpp:117
std::unique_ptr< z_stream > _inflate
inflate context.
Definition zstream.hpp:114
static const std::streamsize _bufsize
internal buffer size.
Definition zstream.hpp:111
Zstreambuf(const Zstreambuf &other)=delete
copy constructor.
virtual ~Zstreambuf()
destroy the zlib stream buffer instance.
Definition zstream.cpp:79
virtual int_type sync() override
synchronizes the buffers with the associated character sequence.
Definition zstream.cpp:199
std::unique_ptr< z_stream > _deflate
deflate context.
Definition zstream.hpp:120
Definition acceptor.hpp:32