Simple light-weight LZ compression library.
lz.h@0:ce4be867658b, 2014-07-17 (annotated)
- Committer:
- sigveseb
- Date:
- Thu Jul 17 14:16:11 2014 +0000
- Revision:
- 0:ce4be867658b
- Child:
- 1:0c9aeae76ab2
-
Who changed what in which revision?
User | Revision | Line number | New 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 | 0:ce4be867658b | 35 | #ifdef __cplusplus |
sigveseb | 0:ce4be867658b | 36 | extern "C" { |
sigveseb | 0:ce4be867658b | 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 | 0:ce4be867658b | 52 | #ifdef __cplusplus |
sigveseb | 0:ce4be867658b | 53 | } |
sigveseb | 0:ce4be867658b | 54 | #endif |
sigveseb | 0:ce4be867658b | 55 | |
sigveseb | 0:ce4be867658b | 56 | #endif /* _lz_h_ */ |