]> sigrok.org Git - libsigrok.git/blame - src/minilzo/minilzo.h
output/csv: use intermediate time_t var, silence compiler warning
[libsigrok.git] / src / minilzo / minilzo.h
CommitLineData
0df44c76
GS
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) 1996-2017 Markus Franz Xaver Johannes Oberhumer
6 All Rights Reserved.
7
8 The LZO library is free software; you can redistribute it and/or
9 modify it under the terms of the GNU General Public License as
10 published by the Free Software Foundation; either version 2 of
11 the License, or (at your option) any later version.
12
13 The LZO library is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
17
18 You should have received a copy of the GNU General Public License
19 along with the LZO library; see the file COPYING.
20 If not, write to the Free Software Foundation, Inc.,
21 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
22
23 Markus F.X.J. Oberhumer
24 <markus@oberhumer.com>
25 http://www.oberhumer.com/opensource/lzo/
26 */
27
28/*
29 * NOTE:
30 * the full LZO package can be found at
31 * http://www.oberhumer.com/opensource/lzo/
32 */
33
34
35#ifndef __MINILZO_H_INCLUDED
36#define __MINILZO_H_INCLUDED 1
37
38#define MINILZO_VERSION 0x20a0 /* 2.10 */
39
40#if defined(__LZOCONF_H_INCLUDED)
41# error "you cannot use both LZO and miniLZO"
42#endif
43
44/* internal Autoconf configuration file - only used when building miniLZO */
45#ifdef MINILZO_HAVE_CONFIG_H
46# include <config.h>
47#endif
48#include <limits.h>
49#include <stddef.h>
50
51#ifndef __LZODEFS_H_INCLUDED
52#include "lzodefs.h"
53#endif
54#undef LZO_HAVE_CONFIG_H
55#include "lzoconf.h"
56
57#if !defined(LZO_VERSION) || (LZO_VERSION != MINILZO_VERSION)
58# error "version mismatch in header files"
59#endif
60
61
62#ifdef __cplusplus
63extern "C" {
64#endif
65
66
67/***********************************************************************
68//
69************************************************************************/
70
71/* Memory required for the wrkmem parameter.
72 * When the required size is 0, you can also pass a NULL pointer.
73 */
74
75#define LZO1X_MEM_COMPRESS LZO1X_1_MEM_COMPRESS
76#define LZO1X_1_MEM_COMPRESS ((lzo_uint32_t) (16384L * lzo_sizeof_dict_t))
77#define LZO1X_MEM_DECOMPRESS (0)
78
79
80/* compression */
81LZO_EXTERN(int)
82lzo1x_1_compress ( const lzo_bytep src, lzo_uint src_len,
83 lzo_bytep dst, lzo_uintp dst_len,
84 lzo_voidp wrkmem );
85
86/* decompression */
87LZO_EXTERN(int)
88lzo1x_decompress ( const lzo_bytep src, lzo_uint src_len,
89 lzo_bytep dst, lzo_uintp dst_len,
90 lzo_voidp wrkmem /* NOT USED */ );
91
92/* safe decompression with overrun testing */
93LZO_EXTERN(int)
94lzo1x_decompress_safe ( const lzo_bytep src, lzo_uint src_len,
95 lzo_bytep dst, lzo_uintp dst_len,
96 lzo_voidp wrkmem /* NOT USED */ );
97
98
99#ifdef __cplusplus
100} /* extern "C" */
101#endif
102
103#endif /* already included */
104
105
106/* vim:set ts=4 sw=4 et: */