Pyrogenesis  13997
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
Decompressor_ZLib Class Reference
Inheritance diagram for Decompressor_ZLib:
CodecZLibStream Codec_ZLib ICodec

Public Member Functions

 Decompressor_ZLib ()
 
virtual ~Decompressor_ZLib ()
 
virtual size_t MaxOutputSize (size_t inSize) const
 
virtual Status Reset ()
 clear all previous state and prepare for reuse. More...
 
virtual Status Process (const u8 *in, size_t inSize, u8 *out, size_t outSize, size_t &inConsumed, size_t &outProduced)
 process (i.e. More...
 
virtual Status Finish (u32 &checksum, size_t &outProduced)
 Flush buffers and make sure all output has been produced. More...
 
- Public Member Functions inherited from Codec_ZLib
u32 UpdateChecksum (u32 checksum, const u8 *in, size_t inSize) const
 update a checksum to reflect the contents of a buffer. More...
 
- Public Member Functions inherited from ICodec
virtual ~ICodec ()
 note: the implementation should not check whether any data remains - codecs are sometimes destroyed without completing a transfer. More...
 

Additional Inherited Members

- Protected Types inherited from CodecZLibStream
typedef int ZEXPORT(* ZLibFunc )(z_streamp strm, int flush)
 
- Protected Member Functions inherited from CodecZLibStream
 CodecZLibStream ()
 
Status CallStreamFunc (ZLibFunc func, int flush, const u8 *in, const size_t inSize, u8 *out, const size_t outSize, size_t &inConsumed, size_t &outProduced)
 
- Protected Member Functions inherited from Codec_ZLib
u32 InitializeChecksum ()
 
- Static Protected Member Functions inherited from CodecZLibStream
static Status LibError_from_zlib (int zlib_ret)
 
static void WarnIfZLibError (int zlib_ret)
 
- Protected Attributes inherited from CodecZLibStream
z_stream m_zs
 
u32 m_checksum
 

Detailed Description

Definition at line 240 of file codec_zlib.cpp.

Constructor & Destructor Documentation

Decompressor_ZLib::Decompressor_ZLib ( )
inline

Definition at line 243 of file codec_zlib.cpp.

virtual Decompressor_ZLib::~Decompressor_ZLib ( )
inlinevirtual

Definition at line 250 of file codec_zlib.cpp.

Member Function Documentation

virtual Status Decompressor_ZLib::Finish ( u32 checksum,
size_t &  outProduced 
)
inlinevirtual

Flush buffers and make sure all output has been produced.

Parameters
checksumChecksum over all input data.
outProduced
Returns
error status for the entire operation.

Implements ICodec.

Definition at line 280 of file codec_zlib.cpp.

virtual size_t Decompressor_ZLib::MaxOutputSize ( size_t  inSize) const
inlinevirtual
Returns
an upper bound on the output size for the given amount of input. this is used when allocating a single buffer for the whole operation.

Implements ICodec.

Definition at line 256 of file codec_zlib.cpp.

virtual Status Decompressor_ZLib::Process ( const u8 in,
size_t  inSize,
u8 out,
size_t  outSize,
size_t &  inConsumed,
size_t &  outProduced 
)
inlinevirtual

process (i.e.

compress or decompress) data.

Parameters
in
inSize
out
outSizeBytes remaining in the output buffer; shall not be zero.
inConsumed,outProducedHow many bytes in the input and output buffers were used. either or both of these can be zero if the input size is small or there's not enough output space.

Implements ICodec.

Definition at line 273 of file codec_zlib.cpp.

virtual Status Decompressor_ZLib::Reset ( )
inlinevirtual

clear all previous state and prepare for reuse.

this is as if the object were destroyed and re-created, but more efficient since it avoids reallocating a considerable amount of memory (about 200KB for LZ).

Implements ICodec.

Definition at line 266 of file codec_zlib.cpp.


The documentation for this class was generated from the following file: