Back to home page

EIC code displayed by LXR

 
 

    


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

0001 /* lzo1y.h -- public interface of the LZO1Y 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 __LZO1Y_H_INCLUDED
0030 #define __LZO1Y_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 LZO1Y_MEM_COMPRESS      ((lzo_uint32_t) (16384L * lzo_sizeof_dict_t))
0050 #define LZO1Y_MEM_DECOMPRESS    (0)
0051 #define LZO1Y_MEM_OPTIMIZE      (0)
0052 
0053 
0054 /* decompression */
0055 LZO_EXTERN(int)
0056 lzo1y_decompress        ( const lzo_bytep src, lzo_uint  src_len,
0057                                 lzo_bytep dst, lzo_uintp dst_len,
0058                                 lzo_voidp wrkmem /* NOT USED */ );
0059 
0060 /* safe decompression with overrun testing */
0061 LZO_EXTERN(int)
0062 lzo1y_decompress_safe   ( const lzo_bytep src, lzo_uint  src_len,
0063                                 lzo_bytep dst, lzo_uintp dst_len,
0064                                 lzo_voidp wrkmem /* NOT USED */ );
0065 
0066 
0067 /***********************************************************************
0068 //
0069 ************************************************************************/
0070 
0071 LZO_EXTERN(int)
0072 lzo1y_1_compress        ( const lzo_bytep src, lzo_uint  src_len,
0073                                 lzo_bytep dst, lzo_uintp dst_len,
0074                                 lzo_voidp wrkmem );
0075 
0076 
0077 /***********************************************************************
0078 // better compression ratio at the cost of more memory and time
0079 ************************************************************************/
0080 
0081 #define LZO1Y_999_MEM_COMPRESS  ((lzo_uint32_t) (14 * 16384L * sizeof(short)))
0082 
0083 LZO_EXTERN(int)
0084 lzo1y_999_compress      ( const lzo_bytep src, lzo_uint  src_len,
0085                                 lzo_bytep dst, lzo_uintp dst_len,
0086                                 lzo_voidp wrkmem );
0087 
0088 
0089 
0090 /***********************************************************************
0091 //
0092 ************************************************************************/
0093 
0094 LZO_EXTERN(int)
0095 lzo1y_999_compress_dict     ( const lzo_bytep src, lzo_uint  src_len,
0096                                     lzo_bytep dst, lzo_uintp dst_len,
0097                                     lzo_voidp wrkmem,
0098                               const lzo_bytep dict, lzo_uint dict_len );
0099 
0100 LZO_EXTERN(int)
0101 lzo1y_999_compress_level    ( const lzo_bytep src, lzo_uint  src_len,
0102                                     lzo_bytep dst, lzo_uintp dst_len,
0103                                     lzo_voidp wrkmem,
0104                               const lzo_bytep dict, lzo_uint dict_len,
0105                                     lzo_callback_p cb,
0106                                     int compression_level );
0107 
0108 LZO_EXTERN(int)
0109 lzo1y_decompress_dict_safe ( const lzo_bytep src, lzo_uint  src_len,
0110                                    lzo_bytep dst, lzo_uintp dst_len,
0111                                    lzo_voidp wrkmem /* NOT USED */,
0112                              const lzo_bytep dict, lzo_uint dict_len );
0113 
0114 
0115 /***********************************************************************
0116 // optimize a compressed data block
0117 ************************************************************************/
0118 
0119 LZO_EXTERN(int)
0120 lzo1y_optimize          (       lzo_bytep src, lzo_uint  src_len,
0121                                 lzo_bytep dst, lzo_uintp dst_len,
0122                                 lzo_voidp wrkmem /* NOT USED */ );
0123 
0124 
0125 
0126 #ifdef __cplusplus
0127 } /* extern "C" */
0128 #endif
0129 
0130 #endif /* already included */
0131 
0132 
0133 /* vim:set ts=4 sw=4 et: */