comunpack.c - Unpack a data field that was packed using a complex packing algorithm as defined in the
Contents
Detailed Description
Unpack a data field that was packed using a complex packing algorithm as defined in the GRIB2
documention.
Author
Stephen Gilbert
Date
2002-10-29
Definition in file comunpack.c.
Function Documentation
intcomunpack(unsignedchar*cpack,g2intlensec,g2intidrsnum,g2int*idrstmpl,g2intndpts,float*fld)
Unpack a data field that was packed using a complex packing algorithm, using info from the GRIB2 Data
Representation Template 5.2 or Template 5.3. Supports GRIB2 complex packing templates with or without
spatial differences (i.e. DRTs 5.2 and 5.3).
ProgramHistoryLog
Date Programmer Comments 2002-10-29 Gilbert Initial 2004-12-16 Gilbert Added test (from
Arthur Taylor/MDL) verifying group widths/lengths
Parameterscpack pointer to the packed data field.
lensec length of section 7 (used for error checking).
idrsnum Data Representation Template number. Must equal 2 or 3.
idrstmpl pointer to the array of values for Data Representation Template 5.2 or 5.3
ndpts The number of data values to unpack
fld Contains the unpacked data values. Must be allocated with at least ndpts * sizeof(float) bytes
before calling this routine.
Returns
0 for success, error code otherwise.
Author
Stephen Gilbert
Date
2002-10-29
Definition at line 41 of file comunpack.c.
References gbit(), gbits(), int_power(), LOG, and rdieee().
Referenced by g2c_unpack7_int().
Name
comunpack.c - Unpack a data field that was packed using a complex packing algorithm as defined in the
GRIB2 documention.
Synopsis
#include 'grib2_int.h'
#include <stdio.h>
#include <stdlib.h>
Functions
int comunpack (unsigned char *cpack, g2int lensec, g2int idrsnum, g2int *idrstmpl, g2int ndpts, float
*fld)
Unpack a data field that was packed using a complex packing algorithm, using info from the GRIB2 Data
Representation Template 5.2 or Template 5.3.
