/* This file is part of libmspack. * (C) 2003-2004 Stuart Caie. * * libmspack is free software; you can redistribute it and/or modify it under * the terms of the GNU Lesser General Public License (LGPL) version 2.1 * * For further details, see the file COPYING.LIB distributed with libmspack */ namespace LibMSPackSharp.Compression { public enum InflateErrorCode { INF_ERR_OK = 0, /// /// Unknown block type /// INF_ERR_BLOCKTYPE = -1, /// /// Block size complement mismatch /// INF_ERR_COMPLEMENT = -2, /// /// Error from flush_window callback /// INF_ERR_FLUSH = -3, /// /// Too many bits in bit buffer /// INF_ERR_BITBUF = -4, /// /// Too many symbols in blocktype 2 header /// INF_ERR_SYMLENS = -5, /// /// Failed to build bitlens huffman table /// INF_ERR_BITLENTBL = -6, /// /// Failed to build literals huffman table /// INF_ERR_LITERALTBL = -7, /// /// Failed to build distance huffman table /// INF_ERR_DISTANCETBL = -8, /// /// Bitlen RLE code goes over table size /// INF_ERR_BITOVERRUN = -9, /// /// Invalid bit-length code /// INF_ERR_BADBITLEN = -10, /// /// Out-of-range literal code /// INF_ERR_LITCODE = -11, /// /// Out-of-range distance code /// INF_ERR_DISTCODE = -12, /// /// Somehow, distance is beyond 32k /// INF_ERR_DISTANCE = -13, /// /// Out of bits decoding huffman symbol /// INF_ERR_HUFFSYM = -14, } public enum LZSSMode { LZSS_MODE_EXPAND = 0, LZSS_MODE_MSHELP = 1, LZSS_MODE_QBASIC = 2, } public enum LZXBlockType : byte { LZX_BLOCKTYPE_INVALID0 = 0, LZX_BLOCKTYPE_VERBATIM = 1, LZX_BLOCKTYPE_ALIGNED = 2, LZX_BLOCKTYPE_UNCOMPRESSED = 3, LZX_BLOCKTYPE_INVALID4 = 4, LZX_BLOCKTYPE_INVALID5 = 5, LZX_BLOCKTYPE_INVALID6 = 6, LZX_BLOCKTYPE_INVALID7 = 7, } }