| 1 | /* minilzo.h -- mini subset of the LZO real-time data compression library | 
|---|
| 2 |  | 
|---|
| 3 | This file is part of the LZO real-time data compression library. | 
|---|
| 4 |  | 
|---|
| 5 | Copyright (C) 1999 Markus Franz Xaver Johannes Oberhumer | 
|---|
| 6 | Copyright (C) 1998 Markus Franz Xaver Johannes Oberhumer | 
|---|
| 7 | Copyright (C) 1997 Markus Franz Xaver Johannes Oberhumer | 
|---|
| 8 | Copyright (C) 1996 Markus Franz Xaver Johannes Oberhumer | 
|---|
| 9 |  | 
|---|
| 10 | The LZO library is free software; you can redistribute it and/or | 
|---|
| 11 | modify it under the terms of the GNU General Public License as | 
|---|
| 12 | published by the Free Software Foundation; either version 2 of | 
|---|
| 13 | the License, or (at your option) any later version. | 
|---|
| 14 |  | 
|---|
| 15 | The LZO library is distributed in the hope that it will be useful, | 
|---|
| 16 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 
|---|
| 17 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
|---|
| 18 | GNU General Public License for more details. | 
|---|
| 19 |  | 
|---|
| 20 | You should have received a copy of the GNU General Public License | 
|---|
| 21 | along with the LZO library; see the file COPYING. | 
|---|
| 22 | If not, write to the Free Software Foundation, Inc., | 
|---|
| 23 | 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | 
|---|
| 24 |  | 
|---|
| 25 | Markus F.X.J. Oberhumer | 
|---|
| 26 | <markus.oberhumer@jk.uni-linz.ac.at> | 
|---|
| 27 | http://wildsau.idv.uni-linz.ac.at/mfx/lzo.html | 
|---|
| 28 | */ | 
|---|
| 29 |  | 
|---|
| 30 | /* | 
|---|
| 31 | * NOTE: | 
|---|
| 32 | *   the full LZO package can be found at | 
|---|
| 33 | *   http://wildsau.idv.uni-linz.ac.at/mfx/lzo.html | 
|---|
| 34 | */ | 
|---|
| 35 |  | 
|---|
| 36 |  | 
|---|
| 37 | #ifndef __MINILZO_H | 
|---|
| 38 | #define __MINILZO_H | 
|---|
| 39 |  | 
|---|
| 40 | #define MINILZO_VERSION         0x1060 | 
|---|
| 41 |  | 
|---|
| 42 | #ifdef __LZOCONF_H | 
|---|
| 43 | #  error "you cannot use both LZO and miniLZO" | 
|---|
| 44 | #endif | 
|---|
| 45 |  | 
|---|
| 46 | #undef LZO_HAVE_CONFIG_H | 
|---|
| 47 | #include "lzoconf.h" | 
|---|
| 48 |  | 
|---|
| 49 | #if !defined(LZO_VERSION) || (LZO_VERSION != MINILZO_VERSION) | 
|---|
| 50 | #  error "version mismatch in header files" | 
|---|
| 51 | #endif | 
|---|
| 52 |  | 
|---|
| 53 |  | 
|---|
| 54 | #ifdef __cplusplus | 
|---|
| 55 | extern "C" { | 
|---|
| 56 | #endif | 
|---|
| 57 |  | 
|---|
| 58 |  | 
|---|
| 59 | /*********************************************************************** | 
|---|
| 60 | // | 
|---|
| 61 | ************************************************************************/ | 
|---|
| 62 |  | 
|---|
| 63 | /* Memory required for the wrkmem parameter. | 
|---|
| 64 | * When the required size is 0, you can also pass a NULL pointer. | 
|---|
| 65 | */ | 
|---|
| 66 |  | 
|---|
| 67 | #define LZO1X_MEM_COMPRESS      LZO1X_1_MEM_COMPRESS | 
|---|
| 68 | #define LZO1X_1_MEM_COMPRESS    ((lzo_uint32) (16384L * lzo_sizeof_dict_t)) | 
|---|
| 69 | #define LZO1X_MEM_DECOMPRESS    (0) | 
|---|
| 70 |  | 
|---|
| 71 |  | 
|---|
| 72 | /* compression */ | 
|---|
| 73 | LZO_EXTERN(int) | 
|---|
| 74 | lzo1x_1_compress        ( const lzo_byte *src, lzo_uint  src_len, | 
|---|
| 75 | lzo_byte *dst, lzo_uint *dst_len, | 
|---|
| 76 | lzo_voidp wrkmem ); | 
|---|
| 77 |  | 
|---|
| 78 | /* decompression */ | 
|---|
| 79 | LZO_EXTERN(int) | 
|---|
| 80 | lzo1x_decompress        ( const lzo_byte *src, lzo_uint  src_len, | 
|---|
| 81 | lzo_byte *dst, lzo_uint *dst_len, | 
|---|
| 82 | lzo_voidp wrkmem /* NOT USED */ ); | 
|---|
| 83 |  | 
|---|
| 84 | /* safe decompression with overrun testing */ | 
|---|
| 85 | LZO_EXTERN(int) | 
|---|
| 86 | lzo1x_decompress_safe   ( const lzo_byte *src, lzo_uint  src_len, | 
|---|
| 87 | lzo_byte *dst, lzo_uint *dst_len, | 
|---|
| 88 | lzo_voidp wrkmem /* NOT USED */ ); | 
|---|
| 89 |  | 
|---|
| 90 |  | 
|---|
| 91 | #ifdef __cplusplus | 
|---|
| 92 | } /* extern "C" */ | 
|---|
| 93 | #endif | 
|---|
| 94 |  | 
|---|
| 95 | #endif /* already included */ | 
|---|
| 96 |  | 
|---|