10 #ifndef _INC_cStreamZLib_H
11 #define _INC_cStreamZLib_H
12 #ifndef NO_PRAGMA_ONCE
16 #include "../GrayLibBase.h"
#define GRAYCALL
declare calling convention for static functions so everyone knows the arg passing scheme....
Definition: GrayCore.h:36
#define GRAYLIB_LINK
Definition: GrayLibBase.h:35
INT32 HRESULT
_WIN32 style error codes. INT32
Definition: SysTypes.h:465
Definition: cStreamZLib.h:42
UNITTEST_FRIEND(cStreamZLib)
static HRESULT GRAYCALL GetHResultFrom(ZRET_t izRet)
virtual HRESULT FlushX()=0
static HRESULT GRAYCALL Decompress1(void *pDest, size_t nDestSizeMax, const BYTE *pSrc, size_t nSrcSize)
virtual ~cStreamZLibBase()
static HRESULT GRAYCALL Compress1(BYTE *pDest, size_t nDestSizeMax, const void *pSrc, size_t nSrcSize)
struct z_stream_s * m_pzstm
pointer to hidden/opaque/private zlib implementation.
Definition: cStreamZLib.h:52
int get_DataTypeCode() const
e.g. Z_ASCII
int ZRET_t
Definition: cStreamZLib.h:50
Definition: cStreamZLib.h:77
ZRET_t InitializeInt(ZIP_COMPLEV_TYPE nCompLevel=ZIP_COMPLEV_Slow)
virtual HRESULT WriteX(const void *pData, size_t nDataSize) override
virtual ~cStreamZLibCompress()
Definition: cStreamZLib.h:93
HRESULT AdvanceCompressInt(int action)
virtual HRESULT FlushX() override
HRESULT Initialize(cStreamOutput *pOut, ZIP_COMPLEV_TYPE nCompLevel=ZIP_COMPLEV_Slow)
cStreamZLibCompress(size_t nSizeMax=cStream::k_FILE_BLOCK_SIZE, cStreamOutput *pStreamOut=nullptr)
Definition: cStreamZLib.h:89
Definition: cStreamZLib.h:106
cStreamZLibDecompress(size_t nSizeMax=cStream::k_FILE_BLOCK_SIZE, cStreamInput *pInp=nullptr)
Definition: cStreamZLib.h:116
ZRET_t InitializeInt(bool bWeb)
HRESULT Initialize(cStreamInput *pInp, bool bWeb)
virtual ~cStreamZLibDecompress()
Definition: cStreamZLib.h:120
virtual HRESULT FlushX() override
virtual HRESULT ReadX(void *pData, size_t nDataSize) override
static const size_t k_FILE_BLOCK_SIZE
default arbitrary transfer block size. more than this is NOT more efficient.
Definition: cStream.h:89
Definition: cStream.h:126
Definition: cStreamStack.h:17
Definition: cStreamStack.h:41
ZIP_COMPLEV_TYPE
Definition: cStreamZLib.h:27
@ ZIP_COMPLEV_8
Definition: cStreamZLib.h:36
@ ZIP_COMPLEV_6
Definition: cStreamZLib.h:35
@ ZIP_COMPLEV_DirStub
Internal stub for a directory. needs no compression anyhow.
Definition: cStreamZLib.h:30
@ ZIP_COMPLEV_QTY
Definition: cStreamZLib.h:38
@ ZIP_COMPLEV_2
Definition: cStreamZLib.h:34
@ ZIP_COMPLEV_Fast
Fastest = 1=Z_BEST_SPEED.
Definition: cStreamZLib.h:33
@ ZIP_COMPLEV_Def
Default = -1=Z_DEFAULT_COMPRESSION.
Definition: cStreamZLib.h:31
@ ZIP_COMPLEV_None
No compression ?
Definition: cStreamZLib.h:32
@ ZIP_COMPLEV_Slow
Slowest = 9=Z_BEST_COMPRESSION.
Definition: cStreamZLib.h:37