4#include <system/string.h>
5#include <system/array.h>
6#include <system/date_time.h>
8#include <system/io/compression/details/zlib_compression_flags.h>
9#include <system/io/compression/details/flush_type.h>
11namespace Aspose {
namespace Zip {
19 RTTI_INFO(Aspose::Zip::ZlibCodec, ::System::BaseTypesInfo<::System::Object>);
21 friend class ZlibBaseStream;
32 CompressionStrategy Strategy;
35 ASPOSECPP_SHARED_API ZlibCodec();
38 ASPOSECPP_SHARED_API ZlibCodec(CompressionMode mode);
58 ASPOSECPP_SHARED_API
int get_NextIn()
const;
61 ASPOSECPP_SHARED_API
void set_NextIn(
int value);
65 ASPOSECPP_SHARED_API
int get_AvailableBytesIn()
const;
68 ASPOSECPP_SHARED_API
void set_AvailableBytesIn(
int value);
72 ASPOSECPP_SHARED_API int64_t get_TotalBytesIn()
const;
76 ASPOSECPP_SHARED_API
int get_NextOut()
const;
79 ASPOSECPP_SHARED_API
void set_NextOut(
int value);
83 ASPOSECPP_SHARED_API
int get_AvailableBytesOut()
const;
86 ASPOSECPP_SHARED_API
void set_AvailableBytesOut(
int value);
90 ASPOSECPP_SHARED_API int64_t get_TotalBytesOut()
const;
98 ASPOSECPP_SHARED_API int64_t get_Adler32()
const;
111 ASPOSECPP_SHARED_API
void set_GzComment(
const System::String& value);
114 ASPOSECPP_SHARED_API
void set_GzFileName(
const System::String& value);
126 ASPOSECPP_SHARED_API
int InitializeInflate(
bool expectRfc1950Header =
true);
127 ASPOSECPP_SHARED_API
int InitializeInflate(
int windowBits,
bool expectRfc1950Header =
true);
130 ASPOSECPP_SHARED_API
int InitializeInflate();
133 ASPOSECPP_SHARED_API
int InitializeInflate(
int windowBits);
137 ASPOSECPP_SHARED_API
int Inflate(FlushType flush);
139 ASPOSECPP_SHARED_API
int EndInflate();
141 ASPOSECPP_SHARED_API
int SyncInflate();
144 ASPOSECPP_SHARED_API
int InitializeDeflate();
147 ASPOSECPP_SHARED_API
int InitializeDeflate(CompressionLevel level);
149 ASPOSECPP_SHARED_API
int InitializeDeflate(CompressionLevel level,
bool wantRfc1950Header);
150 ASPOSECPP_SHARED_API
int InitializeDeflate(CompressionLevel level,
int windowBits,
bool wantRfc1950Header =
true);
155 ASPOSECPP_SHARED_API
int InitializeDeflate(CompressionLevel level,
int windowBits);
159 ASPOSECPP_SHARED_API
int Deflate(FlushType flush);
161 ASPOSECPP_SHARED_API
int EndDeflate();
163 ASPOSECPP_SHARED_API
void ResetDeflate();
167 ASPOSECPP_SHARED_API
int SetDeflateParams(CompressionLevel level, CompressionStrategy strategy);
182 std::shared_ptr<void> m_zstrm;
184 std::shared_ptr<void> m_gzhdr;
186 static const size_t s_comment_read_max = 1024;
188 std::vector<uint8_t> m_gzComment;
190 static const size_t s_name_read_max = 1024;
192 std::vector<uint8_t> m_gzName;
Represents a specific date and time value on the time continuum. This type should be allocated on sta...
Definition: date_time.h:50
Base class that enables using methods available for System.Object class in C#. All non-trivial classe...
Definition: object.h:62
Pointer class to wrap types being allocated on heap. Use it to manage memory for classes inheriting O...
Definition: smart_ptr.h:180
String class used across the library. Is a substitute for C# System.String when translating code....
Definition: string.h:122
CompressionLevel
Specifies values that indicate whether a compression operation emphasizes speed or compression size.
Definition: compression_level.h:8
@ Deflate
The deflate compression-decompression algorithm.