NCEPLIBS-g2c
1.7.0
|
Return all the metadata, template values, Bit-map (if applicable), and the unpacked data for a given data field. More...
Go to the source code of this file.
Functions | |
g2int | g2_getfld (unsigned char *cgrib, g2int ifldnum, g2int unpack, g2int expand, gribfield **gfld) |
This subroutine returns all the metadata, template values, bit-map (if applicable), and the unpacked data for a given data field. More... | |
Return all the metadata, template values, Bit-map (if applicable), and the unpacked data for a given data field.
Definition in file g2_getfld.c.
g2int g2_getfld | ( | unsigned char * | cgrib, |
g2int | ifldnum, | ||
g2int | unpack, | ||
g2int | expand, | ||
gribfield ** | gfld | ||
) |
This subroutine returns all the metadata, template values, bit-map (if applicable), and the unpacked data for a given data field.
All of the information returned is stored in a gribfield structure, which is defined in file grib2.h. Users of this routine will need to include grib2.h in their source code that calls this routine.
Since there can be multiple data fields packed into a GRIB2 message, the calling routine indicates which field is being requested with the ifldnum argument.
Date | Programmer | Comments |
---|---|---|
2002-10-28 | Gilbert | Initial |
2013-08-08 | Vuong | Free up memory in array igds - free(igds) |
cgrib | Character pointer to the GRIB2 message. |
ifldnum | Specifies which field in the GRIB2 message to return. The first field is number 1, Fortran style. |
unpack | Boolean value indicating whether to unpack bitmap/data field.
|
expand | Boolean value indicating whether the data points should be expanded to the correspond grid, if a bit-map is present. This argument is ignored if unpack == 0 OR if the returned field does not contain a bit-map.
|
gfld | pointer to structure gribfield containing all decoded data for the data field. |
Routine g2_info() can be used to first determine how many data fields exist in a given GRIB message.
Definition at line 91 of file g2_getfld.c.
References gribfield::bmap, gribfield::coord_list, gribfield::discipline, gribfield::expanded, gribfield::fld, g2_free(), G2_GETFLD_BAD_END, G2_GETFLD_BAD_SEC1, G2_GETFLD_BAD_SEC2, G2_GETFLD_BAD_SEC3, G2_GETFLD_BAD_SEC4, G2_GETFLD_BAD_SEC5, G2_GETFLD_BAD_SEC6, G2_GETFLD_BAD_SEC7, G2_GETFLD_GRIB_VERSION, G2_GETFLD_INVAL, G2_GETFLD_INVAL_SEC, G2_GETFLD_NO_BITMAP, G2_GETFLD_NO_GRIB, G2_GETFLD_WRONG_END, G2_GETFLD_WRONG_NFLDS, G2_NO_ERROR, g2_unpack1(), g2_unpack2(), g2_unpack3(), g2_unpack4(), g2_unpack5(), g2_unpack6(), g2_unpack7(), gbit(), gribfield::griddef, gribfield::ibmap, gribfield::idrtlen, gribfield::idrtmpl, gribfield::idrtnum, gribfield::idsect, gribfield::idsectlen, gribfield::ifldnum, gribfield::igdtlen, gribfield::igdtmpl, gribfield::igdtnum, gribfield::interp_opt, gribfield::ipdtlen, gribfield::ipdtmpl, gribfield::ipdtnum, gribfield::list_opt, gribfield::local, gribfield::locallen, gribfield::ndpts, gribfield::ngrdpts, gribfield::num_coord, gribfield::num_opt, gribfield::numoct_opt, gribfield::unpacked, and gribfield::version.