00001 /*------------------------------------------------------------------------ 00002 00003 BUFR encoding and decoding software and library 00004 Copyright (c) 2007, Institute of Broadband Communication, TU-Graz 00005 on behalf of EUMETNET OPERA, http://www.knmi.nl/opera 00006 00007 This library is free software; you can redistribute it and/or 00008 modify it under the terms of the GNU Lesser General Public 00009 License as published by the Free Software Foundation; version 2.1 00010 of the License. 00011 00012 This library is distributed in the hope that it will be useful, 00013 but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00015 Lesser General Public License for more details. 00016 00017 You should have received a copy of the GNU Lesser General Public 00018 License along with this library; if not, write to the Free Software 00019 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00020 00021 ---------------------------------------------------------------------------- 00022 00023 FILE: RLENC.H 00024 IDENT: $Id: rlenc.h,v 1.6 2007/12/18 14:40:58 fuxi Exp $ 00025 00026 AUTHOR: Konrad Koeck 00027 Institute of Communication and Wave Propagation, 00028 Technical University Graz, Austria 00029 00030 VERSION NUMBER:3.0 00031 00032 DATE CREATED: 18-DEC-2001 00033 00034 STATUS: DEVELOPMENT FINISHED 00035 00036 00037 FUNCTIONAL DESCRIPTION: 00038 ----------------------- 00039 function prototype for rlenc.c 00040 00041 AMENDMENT RECORD: 00042 00043 ISSUE DATE SCNREF CHANGE DETAILS 00044 ----- ---- ------ -------------- 00045 V2.0 18-DEC-2001 Koeck Initial Issue 00046 00047 $Log: rlenc.h,v $ 00048 Revision 1.6 2007/12/18 14:40:58 fuxi 00049 added licence header 00050 00051 Revision 1.5 2007/12/07 08:35:33 fuxi 00052 update to version 3.0 00053 00054 Revision 1.4 2005/04/04 14:56:09 helmutp 00055 update to version 2.3 00056 00057 Revision 1.3 2003/03/27 17:17:39 helmutp 00058 update to version 2.2 00059 00060 Revision 1.2 2003/03/06 17:12:32 helmutp 00061 update to version 2.1 00062 00063 Revision 1.1 2003/02/28 13:41:12 helmutp 00064 Initial revision 00065 00066 --------------------------------------------------------------------------- */ 00067 00075 #ifndef RLENC_H_INCLUDED 00076 #define RLENC_H_INCLUDED 00077 00078 int rlenc_from_file (char* infile, int nrows, int ncols, varfl** vals, 00079 int* nvals, int depth); 00080 int rlenc_from_mem (unsigned short* img, int nrows, int ncols, varfl** vals, 00081 int* nvals); 00082 int rldec_to_file (char* outfile, varfl* vals, int depth, int* nvals); 00083 int rldec_to_mem (varfl* vals, unsigned short* *img, int* nvals, int* nrows, 00084 int* ncols); 00085 int rlenc_compress_line_new (int line, unsigned int* src, int ncols, 00086 varfl** dvals, int* nvals); 00087 void rldec_decompress_line (varfl* vals, unsigned int* dest, int* ncols, 00088 int* nvals) ; 00089 void rldec_get_size (varfl* vals, int* nrows, int* ncols); 00090 00091 /* old functions */ 00092 int rlenc (char *infile, int nrows, int ncols, varfl **vals, size_t *nvals); 00093 int rldec (char *outfile, varfl *vals, size_t *nvals); 00094 int rlenc_compress_line (int line, unsigned char *src, int ncols, 00095 varfl **dvals, size_t *nvals); 00096 00097 00098 00099 #endif 00100 00101 /* end of file */ 00102
1.5.4