private void DeflateInit(ZLibNative.CompressionLevel compressionLevel, int windowBits, int memLevel, ZLibNative.CompressionStrategy strategy) { ZErrorCode errC; try { errC = ZLibNative.CreateZLibStreamForDeflate(out _zlibStream, compressionLevel, windowBits, memLevel, strategy); } catch (Exception cause) { throw new ZLibException("SR.ZLibErrorDLLLoadError", cause); } switch (errC) { case ZErrorCode.Ok: return; case ZErrorCode.MemError: throw new ZLibException("SR.ZLibErrorNotEnoughMemory", "deflateInit2_", (int)errC, _zlibStream.GetErrorMessage()); case ZErrorCode.VersionError: throw new ZLibException("SR.ZLibErrorVersionMismatch", "deflateInit2_", (int)errC, _zlibStream.GetErrorMessage()); case ZErrorCode.StreamError: throw new ZLibException("SR.ZLibErrorIncorrectInitParameters", "deflateInit2_", (int)errC, _zlibStream.GetErrorMessage()); default: throw new ZLibException("SR.ZLibErrorUnexpected", "deflateInit2_", (int)errC, _zlibStream.GetErrorMessage()); } }
private void InflateInit(int windowBits) { ZLibNative.ErrorCode error; try { error = ZLibNative.CreateZLibStreamForInflate(out _zlibStream, windowBits); } catch (Exception exception) // could not load the ZLib dll { throw new ZLibException("SR.ZLibErrorDLLLoadError", exception); } switch (error) { case ZLibNative.ErrorCode.Ok: // Successful initialization return; case ZLibNative.ErrorCode.MemError: // Not enough memory throw new ZLibException("SR.ZLibErrorNotEnoughMemory", "inflateInit2_", (int)error, _zlibStream.GetErrorMessage()); case ZLibNative.ErrorCode.VersionError: //zlib library is incompatible with the version assumed throw new ZLibException("SR.ZLibErrorVersionMismatch", "inflateInit2_", (int)error, _zlibStream.GetErrorMessage()); case ZLibNative.ErrorCode.StreamError: // Parameters are invalid throw new ZLibException("SR.ZLibErrorIncorrectInitParameters", "inflateInit2_", (int)error, _zlibStream.GetErrorMessage()); default: throw new ZLibException("SR.ZLibErrorUnexpected", "inflateInit2_", (int)error, _zlibStream.GetErrorMessage()); } }
internal static unsafe ZLibNative.ErrorCode DeflateEnd(ref ZLibNative.ZStream stream) { fixed (ZLibNative.ZStream* streamBytes = &stream) { byte* pBytes = (byte*) streamBytes; return (ZLibNative.ErrorCode) deflateEnd(pBytes); } }
internal static unsafe ZLibNative.ErrorCode Deflate(ref ZLibNative.ZStream stream, ZLibNative.FlushCode flush) { fixed (ZLibNative.ZStream* streamBytes = &stream) { byte* pBytes = (byte*) streamBytes; return (ZLibNative.ErrorCode) deflate(pBytes, (int) flush); } }
internal static unsafe ZLibNative.ErrorCode DeflateInit2_( ref ZLibNative.ZStream stream, ZLibNative.CompressionLevel level, ZLibNative.CompressionMethod method, int windowBits, int memLevel, ZLibNative.CompressionStrategy strategy) { fixed (byte* versionString = ZLibVersion) fixed (ZLibNative.ZStream* streamBytes = &stream) { byte* pBytes = (byte*) streamBytes; return (ZLibNative.ErrorCode) deflateInit2_(pBytes, (int) level, (int) method, (int) windowBits, (int) memLevel, (int) strategy, versionString, sizeof(ZLibNative.ZStream)); } }
internal static unsafe ZLibNative.ErrorCode InflateInit2_( ref ZLibNative.ZStream stream, int windowBits) { fixed (byte* versionString = ZLibVersion) fixed (ZLibNative.ZStream* streamBytes = &stream) { byte* pBytes = (byte*) streamBytes; return (ZLibNative.ErrorCode) inflateInit2_(pBytes, (int) windowBits, versionString, sizeof(ZLibNative.ZStream)); } }