#include <CPipeInflate.h>
Inheritance diagram for AxPipe::Stock::CPipeInflate:
Public Member Functions | |
CPipeInflate () | |
Initialize member variables. | |
virtual | ~CPipeInflate () |
Release segment if necessary. | |
bool | OutOpen () |
Initialize ZLib. | |
bool | OutClose () |
Release segment if necessary. | |
void | Out (CSeg *pSeg) |
Inflate each segment as it arrives. | |
Private Attributes | |
longlong | m_cb |
Total number of bytes inflated. | |
z_stream | m_Zstream |
ZLIB internal stream control structure. | |
CSeg * | m_pOutSeg |
Working segment. |
Ensure that this file has an extra include directory so zlib.h is found. Also, either include the zlib project as a static or dynamic library, or manually include the following files for compilation with zlib 1.2.1: inflate.c, adler32.c, crc32.c, inffast.c, inftrees.c, zutil.c
If you define NO_GZIP, the executable shrinks and you don't need crc32.c, but you won't be able to default that format.
Definition at line 51 of file CPipeInflate.h.
|
Release segment if necessary. Clean up if necessary, should only need work to be done on error. Definition at line 49 of file CPipeInflate.cpp. |
|
Inflate each segment as it arrives. Accept each segment as it is passed. It's important that you do not send more data than needed. The compression format is self-terminating, and there must be no data sent after the last byte of the compressed stream. If so, an error is set and that data is discarded. The output is decompressed, but may be sent in multiple segments.
Implements AxPipe::CPipe. Definition at line 93 of file CPipeInflate.cpp. References _T, ASSPTR, AxPipe::ERROR_CODE_DERIVED, AxPipe::ERROR_CODE_STOCK, AxPipe::CPipe::GetSeg(), AxPipe::CSeg::Len(), m_cb, m_pOutSeg, m_Zstream, AxPipe::CSeg::PtrRd(), AxPipe::CSeg::PtrWr(), AxPipe::CPipe::Pump(), AxPipe::CSeg::Release(), AxPipe::CError::SetError(), and AxPipe::CSeg::Size(). |
|
Release segment if necessary. Clean up and call base class CPipe::OutClose()
Reimplemented from AxPipe::CPipe. Definition at line 77 of file CPipeInflate.cpp. References m_pOutSeg, and AxPipe::CSeg::Release(). |
|
Initialize ZLib. Initialize zlib for this inflation.
Reimplemented from AxPipe::CPipe. Definition at line 58 of file CPipeInflate.cpp. References _T, ASSCHK, AxPipe::ERROR_CODE_STOCK, m_cb, m_pOutSeg, m_Zstream, and AxPipe::CError::SetError(). |