rlenc.h

Go to the documentation of this file.
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 

Generated on Tue Dec 18 16:52:45 2007 for OPERA BUFR software by  doxygen 1.5.4