Botan 2.13.0 Crypto and TLS for C++11

- Main Page
- Namespaces
- Classes
- Files

- File List
- File Members

zlib.h
Go to the documentation of this file.
1 /*
2 * Zlib Compressor
3 * (C) 2001 Peter J Jones
4 * 2001-2007,2014 Jack Lloyd
5 *
6 * Botan is released under the Simplified BSD License (see license.txt)
7 */
8
9 #ifndef BOTAN_ZLIB_H_
10 #define BOTAN_ZLIB_H_
11
12 #include <botan/compression.h>
13
14 namespace Botan {
15
16 /**
17 * Zlib Compression
18 */
19 class BOTAN_PUBLIC_API(2,0) Zlib_Compression final : public Stream_Compression
20 {
21 public:
22 std::string name() const override { return "Zlib_Compression"; }
23 private:
24 Compression_Stream* make_stream(size_t level) const override;
25 };
26
27 /**
28 * Zlib Decompression
29 */
30 class BOTAN_PUBLIC_API(2,0) Zlib_Decompression final : public Stream_Decompression
31 {
32 public:
33 std::string name() const override { return "Zlib_Decompression"; }
34 private:
35 Compression_Stream* make_stream() const override;
36 };
37
38 /**
39 * Deflate Compression
40 */
41 class BOTAN_PUBLIC_API(2,0) Deflate_Compression final : public Stream_Compression
42 {
43 public:
44 std::string name() const override { return "Deflate_Compression"; }
45 private:
46 Compression_Stream* make_stream(size_t level) const override;
47 };
48
49 /**
50 * Deflate Decompression
51 */
52 class BOTAN_PUBLIC_API(2,0) Deflate_Decompression final : public Stream_Decompression
53 {
54 public:
55 std::string name() const override { return "Deflate_Decompression"; }
56 private:
57 Compression_Stream* make_stream() const override;
58 };
59
60 /**
61 * Gzip Compression
62 */
63 class BOTAN_PUBLIC_API(2,0) Gzip_Compression final : public Stream_Compression
64 {
65 public:
66 explicit Gzip_Compression(uint8_t os_code = 255, uint64_t hdr_time = 0) :
67 m_hdr_time(hdr_time), m_os_code(os_code) {}
68
69 std::string name() const override { return "Gzip_Compression"; }
70 private:
71 Compression_Stream* make_stream(size_t level) const override;
72 const uint64_t m_hdr_time;
73 const uint8_t m_os_code;
74 };
75
76 /**
77 * Gzip Decompression
78 */
79 class BOTAN_PUBLIC_API(2,0) Gzip_Decompression final : public Stream_Decompression
80 {
81 public:
82 std::string name() const override { return "Gzip_Decompression"; }
83 private:
84 Compression_Stream* make_stream() const override;
85 };
86
87 }
88
89 #endif
Botan::Gzip_Decompression
Definition: zlib.h:79
Botan::Compression_Stream
Definition: compression.h:170
Botan::Zlib_Compression::name
std::string name() const override
Definition: zlib.h:22
Botan::Gzip_Compression::Gzip_Compression
Gzip_Compression(uint8_t os_code=255, uint64_t hdr_time=0)
Definition: zlib.h:66
Botan::Zlib_Compression
Definition: zlib.h:19
Botan::Zlib_Decompression
Definition: zlib.h:30
final
int(* final)(unsigned char *, CTX *)
Definition: commoncrypto_hash.cpp:28
Botan::Stream_Decompression
Definition: compression.h:216
BOTAN_PUBLIC_API
#define BOTAN_PUBLIC_API(maj, min)
Definition: compiler.h:31
Botan::Deflate_Compression
Definition: zlib.h:41
Botan::Stream_Compression
Definition: compression.h:193
Botan::Gzip_Decompression::name
std::string name() const override
Definition: zlib.h:82
Botan::Deflate_Decompression
Definition: zlib.h:52
Botan::Zlib_Decompression::name
std::string name() const override
Definition: zlib.h:33
Botan
Definition: alg_id.cpp:13
Botan::Deflate_Compression::name
std::string name() const override
Definition: zlib.h:44
Botan::Deflate_Decompression::name
std::string name() const override
Definition: zlib.h:55
Botan::Gzip_Compression
Definition: zlib.h:63
Botan::Gzip_Compression::name
std::string name() const override
Definition: zlib.h:69