Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-02-21 10:04:56

0001 /* lzo1f.h -- public interface of the LZO1F compression algorithm
0002 
0003    This file is part of the LZO real-time data compression library.
0004 
0005    Copyright (C) 1996-2017 Markus Franz Xaver Johannes Oberhumer
0006    All Rights Reserved.
0007 
0008    The LZO library is free software; you can redistribute it and/or
0009    modify it under the terms of the GNU General Public License as
0010    published by the Free Software Foundation; either version 2 of
0011    the License, or (at your option) any later version.
0012 
0013    The LZO library is distributed in the hope that it will be useful,
0014    but WITHOUT ANY WARRANTY; without even the implied warranty of
0015    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
0016    GNU General Public License for more details.
0017 
0018    You should have received a copy of the GNU General Public License
0019    along with the LZO library; see the file COPYING.
0020    If not, write to the Free Software Foundation, Inc.,
0021    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
0022 
0023    Markus F.X.J. Oberhumer
0024    <markus@oberhumer.com>
0025    http://www.oberhumer.com/opensource/lzo/
0026  */
0027 
0028 
0029 #ifndef __LZO1F_H_INCLUDED
0030 #define __LZO1F_H_INCLUDED 1
0031 
0032 #ifndef __LZOCONF_H_INCLUDED
0033 #include <lzo/lzoconf.h>
0034 #endif
0035 
0036 #ifdef __cplusplus
0037 extern "C" {
0038 #endif
0039 
0040 
0041 /***********************************************************************
0042 //
0043 ************************************************************************/
0044 
0045 /* Memory required for the wrkmem parameter.
0046  * When the required size is 0, you can also pass a NULL pointer.
0047  */
0048 
0049 #define LZO1F_MEM_COMPRESS      ((lzo_uint32_t) (16384L * lzo_sizeof_dict_t))
0050 #define LZO1F_MEM_DECOMPRESS    (0)
0051 
0052 
0053 /* decompression */
0054 LZO_EXTERN(int)
0055 lzo1f_decompress        ( const lzo_bytep src, lzo_uint  src_len,
0056                                 lzo_bytep dst, lzo_uintp dst_len,
0057                                 lzo_voidp wrkmem /* NOT USED */ );
0058 
0059 /* safe decompression with overrun testing */
0060 LZO_EXTERN(int)
0061 lzo1f_decompress_safe   ( const lzo_bytep src, lzo_uint  src_len,
0062                                 lzo_bytep dst, lzo_uintp dst_len,
0063                                 lzo_voidp wrkmem /* NOT USED */ );
0064 
0065 
0066 /***********************************************************************
0067 //
0068 ************************************************************************/
0069 
0070 LZO_EXTERN(int)
0071 lzo1f_1_compress        ( const lzo_bytep src, lzo_uint  src_len,
0072                                 lzo_bytep dst, lzo_uintp dst_len,
0073                                 lzo_voidp wrkmem );
0074 
0075 
0076 /***********************************************************************
0077 // better compression ratio at the cost of more memory and time
0078 ************************************************************************/
0079 
0080 #define LZO1F_999_MEM_COMPRESS  ((lzo_uint32_t) (5 * 16384L * sizeof(short)))
0081 
0082 LZO_EXTERN(int)
0083 lzo1f_999_compress      ( const lzo_bytep src, lzo_uint  src_len,
0084                                 lzo_bytep dst, lzo_uintp dst_len,
0085                                 lzo_voidp wrkmem );
0086 
0087 
0088 
0089 #ifdef __cplusplus
0090 } /* extern "C" */
0091 #endif
0092 
0093 #endif /* already included */
0094 
0095 
0096 /* vim:set ts=4 sw=4 et: */