Telnet++  3.1.0.2
A C++ library for interacting with Telnet streams
compressor.hpp
1 #pragma once
2 
3 #include "telnetpp/options/mccp/codec.hpp"
4 
5 #include <memory>
6 
7 //* =========================================================================
11 //* =========================================================================
13 
14 //* =========================================================================
16 //* =========================================================================
17 class TELNETPP_EXPORT compressor // NOLINT
19 {
20 public:
21  //* =====================================================================
23  //* =====================================================================
24  compressor();
25 
26  //* =====================================================================
28  //* =====================================================================
29  ~compressor() override;
30 
31 private:
32  //* =====================================================================
34  //* =====================================================================
35  void do_start() override;
36 
37  //* =====================================================================
39  //* =====================================================================
40  void do_finish(continuation const &cont) override;
41 
42  //* =====================================================================
53  //* =====================================================================
54  telnetpp::bytes transform_chunk(
55  telnetpp::bytes data, continuation const &cont) override;
56 
57  struct impl;
58  std::unique_ptr<impl> pimpl_;
59 };
60 
61 } // namespace telnetpp::options::mccp::zlib
Represents an object that can transform (encode or decode) arbitrary byte sequences....
Definition: codec.hpp:17
Represents an object that can compress arbitrary byte sequences.
Definition: compressor.hpp:19
Implementation of the compressor/decompressor functionality for use with a telnetpp::options::mccp::c...