// Emacs style mode select -*- C++ -*- //----------------------------------------------------------------------------- // // $Id:$ // // minilzo.h -- mini subset of the LZO real-time data compression library // // This file is part of the LZO real-time data compression library. // // Copyright (C) 2005 Markus Franz Xaver Johannes Oberhumer // Copyright (C) 2004 Markus Franz Xaver Johannes Oberhumer // Copyright (C) 2003 Markus Franz Xaver Johannes Oberhumer // Copyright (C) 2002 Markus Franz Xaver Johannes Oberhumer // Copyright (C) 2001 Markus Franz Xaver Johannes Oberhumer // Copyright (C) 2000 Markus Franz Xaver Johannes Oberhumer // Copyright (C) 1999 Markus Franz Xaver Johannes Oberhumer // Copyright (C) 1998 Markus Franz Xaver Johannes Oberhumer // Copyright (C) 1997 Markus Franz Xaver Johannes Oberhumer // Copyright (C) 1996 Markus Franz Xaver Johannes Oberhumer // All Rights Reserved. // // The LZO library is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License, // version 2, as published by the Free Software Foundation. // // The LZO 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 General Public License for more details. // // You should have received a copy of the GNU General Public License // along with the LZO library; see the file COPYING. // If not, write to the Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. // // Markus F.X.J. Oberhumer // // http://www.oberhumer.com/opensource/lzo/ // //----------------------------------------------------------------------------- // // * NOTE: // * the full LZO package can be found at // * http://www.oberhumer.com/opensource/lzo/ // #ifndef __MINILZO_H #define __MINILZO_H #define MINILZO_VERSION 0x2020 #ifdef __LZOCONF_H # error "you cannot use both LZO and miniLZO" #endif #undef LZO_HAVE_CONFIG_H #include "lzoconf.h" #if !defined(LZO_VERSION) || (LZO_VERSION != MINILZO_VERSION) # error "version mismatch in header files" #endif #ifdef __cplusplus extern "C" { #endif /*********************************************************************** // ************************************************************************/ /* Memory required for the wrkmem parameter. * When the required size is 0, you can also pass a NULL pointer. */ #define LZO1X_MEM_COMPRESS LZO1X_1_MEM_COMPRESS #define LZO1X_1_MEM_COMPRESS ((lzo_uint32) (16384L * lzo_sizeof_dict_t)) #define LZO1X_MEM_DECOMPRESS (0) /* compression */ LZO_EXTERN(int) lzo1x_1_compress ( const lzo_bytep src, lzo_uint src_len, lzo_bytep dst, lzo_uintp dst_len, lzo_voidp wrkmem ); /* decompression */ LZO_EXTERN(int) lzo1x_decompress ( const lzo_bytep src, lzo_uint src_len, lzo_bytep dst, lzo_uintp dst_len, lzo_voidp wrkmem /* NOT USED */ ); /* safe decompression with overrun testing */ LZO_EXTERN(int) lzo1x_decompress_safe ( const lzo_bytep src, lzo_uint src_len, lzo_bytep dst, lzo_uintp dst_len, lzo_voidp wrkmem /* NOT USED */ ); #ifdef __cplusplus } /* extern "C" */ #endif #endif /* already included */