Simple light-weight LZ compression library.

Dependents:   display-puck

Committer:
sigveseb
Date:
Tue Jul 29 14:02:53 2014 +0000
Revision:
1:0c9aeae76ab2
Parent:
0:ce4be867658b
Change to cpp

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sigveseb 0:ce4be867658b 1 /*************************************************************************
sigveseb 0:ce4be867658b 2 * Name: lz.h
sigveseb 0:ce4be867658b 3 * Author: Marcus Geelnard
sigveseb 0:ce4be867658b 4 * Description: LZ77 coder/decoder interface.
sigveseb 0:ce4be867658b 5 * Reentrant: Yes
sigveseb 0:ce4be867658b 6 *-------------------------------------------------------------------------
sigveseb 0:ce4be867658b 7 * Copyright (c) 2003-2006 Marcus Geelnard
sigveseb 0:ce4be867658b 8 *
sigveseb 0:ce4be867658b 9 * This software is provided 'as-is', without any express or implied
sigveseb 0:ce4be867658b 10 * warranty. In no event will the authors be held liable for any damages
sigveseb 0:ce4be867658b 11 * arising from the use of this software.
sigveseb 0:ce4be867658b 12 *
sigveseb 0:ce4be867658b 13 * Permission is granted to anyone to use this software for any purpose,
sigveseb 0:ce4be867658b 14 * including commercial applications, and to alter it and redistribute it
sigveseb 0:ce4be867658b 15 * freely, subject to the following restrictions:
sigveseb 0:ce4be867658b 16 *
sigveseb 0:ce4be867658b 17 * 1. The origin of this software must not be misrepresented; you must not
sigveseb 0:ce4be867658b 18 * claim that you wrote the original software. If you use this software
sigveseb 0:ce4be867658b 19 * in a product, an acknowledgment in the product documentation would
sigveseb 0:ce4be867658b 20 * be appreciated but is not required.
sigveseb 0:ce4be867658b 21 *
sigveseb 0:ce4be867658b 22 * 2. Altered source versions must be plainly marked as such, and must not
sigveseb 0:ce4be867658b 23 * be misrepresented as being the original software.
sigveseb 0:ce4be867658b 24 *
sigveseb 0:ce4be867658b 25 * 3. This notice may not be removed or altered from any source
sigveseb 0:ce4be867658b 26 * distribution.
sigveseb 0:ce4be867658b 27 *
sigveseb 0:ce4be867658b 28 * Marcus Geelnard
sigveseb 0:ce4be867658b 29 * marcus.geelnard at home.se
sigveseb 0:ce4be867658b 30 *************************************************************************/
sigveseb 0:ce4be867658b 31
sigveseb 0:ce4be867658b 32 #ifndef _lz_h_
sigveseb 0:ce4be867658b 33 #define _lz_h_
sigveseb 0:ce4be867658b 34
sigveseb 1:0c9aeae76ab2 35 //#ifdef __cplusplus
sigveseb 1:0c9aeae76ab2 36 //extern "C" {
sigveseb 1:0c9aeae76ab2 37 //#endif
sigveseb 0:ce4be867658b 38
sigveseb 0:ce4be867658b 39
sigveseb 0:ce4be867658b 40 /*************************************************************************
sigveseb 0:ce4be867658b 41 * Function prototypes
sigveseb 0:ce4be867658b 42 *************************************************************************/
sigveseb 0:ce4be867658b 43
sigveseb 0:ce4be867658b 44 int LZ_Compress( unsigned char *in, unsigned char *out,
sigveseb 0:ce4be867658b 45 unsigned int insize );
sigveseb 0:ce4be867658b 46 int LZ_CompressFast( unsigned char *in, unsigned char *out,
sigveseb 0:ce4be867658b 47 unsigned int insize, unsigned int *work );
sigveseb 0:ce4be867658b 48 void LZ_Uncompress( unsigned char *in, unsigned char *out,
sigveseb 0:ce4be867658b 49 unsigned int insize );
sigveseb 0:ce4be867658b 50
sigveseb 0:ce4be867658b 51
sigveseb 1:0c9aeae76ab2 52 //#ifdef __cplusplus
sigveseb 1:0c9aeae76ab2 53 //}
sigveseb 1:0c9aeae76ab2 54 //#endif
sigveseb 0:ce4be867658b 55
sigveseb 0:ce4be867658b 56 #endif /* _lz_h_ */