| /*************************************************************************** |
| * lzx.h - LZX decompression routines * |
| * ------------------- * |
| * * |
| * maintainer: Jed Wing <jedwin@ugcs.caltech.edu> * |
| * source: modified lzx.c from cabextract v0.5 * |
| * notes: This file was taken from cabextract v0.5, which was, * |
| * itself, a modified version of the lzx decompression code * |
| * from unlzx. * |
| ***************************************************************************/ |
| |
| /*************************************************************************** |
| * |
| * Copyright(C) Stuart Caie |
| * |
| * This library is free software; you can redistribute it and/or |
| * modify it under the terms of the GNU Lesser General Public |
| * License as published by the Free Software Foundation; either |
| * version 2.1 of the License, or (at your option) any later version. |
| * |
| * This library is distributed in the hope that it will be useful, |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| * Lesser General Public License for more details. |
| * |
| * You should have received a copy of the GNU Lesser General Public |
| * License along with this library; if not, write to the Free Software |
| * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA |
| * |
| ***************************************************************************/ |
| |
| #ifndef INCLUDED_LZX_H |
| #define INCLUDED_LZX_H |
| |
| /* return codes */ |
| #define DECR_OK (0) |
| #define DECR_DATAFORMAT (1) |
| #define DECR_ILLEGALDATA (2) |
| #define DECR_NOMEMORY (3) |
| |
| /* opaque state structure */ |
| struct LZXstate; |
| |
| /* create an lzx state object */ |
| struct LZXstate *LZXinit(int window); |
| |
| /* destroy an lzx state object */ |
| void LZXteardown(struct LZXstate *pState); |
| |
| /* reset an lzx stream */ |
| int LZXreset(struct LZXstate *pState); |
| |
| /* decompress an LZX compressed block */ |
| int LZXdecompress(struct LZXstate *pState, |
| unsigned char *inpos, |
| unsigned char *outpos, |
| int inlen, |
| int outlen); |
| |
| #endif /* INCLUDED_LZX_H */ |