Man page - templatesgrid(3)
Packages contains this manual
- g2c_get_drs_template(3)
- sbits(3)
- cmplxpack(3)
- g2_unpack4.c(3)
- g2_info.c(3)
- reduce(3)
- g2c_get_msg(3)
- specpack(3)
- g2intu(3)
- int_power.c(3)
- bytes_to_bms(3)
- g2c_file_io_byte(3)
- dimid(3)
- idrtnum(3)
- g2ccsv.c(3)
- g2c_pngpackd(3)
- g2c_file_io(3)
- decenc_png.c(3)
- g2_miss.c(3)
- file(3)
- g2c_open_index1(3)
- g2_unpack2(3)
- g2int(3)
- pngunpack(3)
- specpack.c(3)
- g2cutil.c(3)
- g2c_rw_section6_metadata(3)
- g2_addgrid(3)
- g2c_next_g2cid(3)
- sec_len(3)
- g2c_inq_dim(3)
- jpcunpack.c(3)
- png_stream(3)
- maplen(3)
- minute(3)
- subcenter(3)
- g2c_inq(3)
- g2_unpack5.c(3)
- g2c_file_io_template(3)
- dec_aec(3)
- griddef(3)
- num_opt(3)
- g2num(3)
- decenc_openjpeg.c(3)
- g2c_file_io_ubyte(3)
- map(3)
- bytes_to_msg(3)
- g1num(3)
- jpcunpack_int(3)
- g2c_aecunpackd(3)
- num_local(3)
- pngpack_int(3)
- read_hdr_rec2(3)
- g2_addfield(3)
- aecpack.c(3)
- section_number(3)
- status(3)
- bytes_to_sec(3)
- g2_addfield.c(3)
- drstemplates.c(3)
- year(3)
- g2c_degrib2(3)
- g2_create.c(3)
- misspack(3)
- version(3)
- enc_aec(3)
- g2c_dec_jpeg2000(3)
- g2c_enc_jpeg2000(3)
- extgridtemplate(3)
- next(3)
- section_offset(3)
- g2c_open(3)
- read_msg_metadata(3)
- num_data_points(3)
- unpacked(3)
- jpcpack(3)
- igdtnum(3)
- g2_gribend(3)
- bytes_in_msg(3)
- g2c_file_io_ulonglong(3)
- discipline(3)
- dim(3)
- g2c_rw_section1_metadata(3)
- g2_create(3)
- free_metadata(3)
- g2c_open_index(3)
- g2c_find_table(3)
- g2_unpack7.c(3)
- g2c_csv_init(3)
- templatesgrid(3)
- g2c_log_section(3)
- g2c_csv_strsep(3)
- main(3)
- g2c_param_all(3)
- data_def(3)
- g2c_log_section1(3)
- aecunpack_int(3)
- g2_getfld(3)
- reduce.c(3)
- pack_gp(3)
- g2c_gbit_int(3)
- extpdstemplate(3)
- g2cio.c(3)
- g2c_inq_prod(3)
- sec1_len(3)
- g2c_file(3)
- g2c_start_index_record_lf(3)
- int_dec_jpeg2000(3)
- g2c_seekmsg(3)
- g2_addlocal(3)
- g2c_set_log_level(3)
- g2cat(3)
- gbits.c(3)
- g2c_get_pds_template(3)
- numoct_opt(3)
- g2c_aecpackd(3)
- simunpack.c(3)
- igdtlen(3)
- grib2.h(3)
- g2c_table(3)
- g2c_jpcunpackf(3)
- num(3)
- expanded(3)
- getgridtemplate(3)
- g2c_file_io_longlong(3)
- gbit(3)
- g2c_rw_section5_metadata(3)
- sig_ref_time(3)
- g2c_find_desc(3)
- g2c_write_index(3)
- month(3)
- g2_unpack1.c(3)
- idrtlen(3)
- g2c_free_tables(3)
- g2_getfld.c(3)
- decenc_aec.c(3)
- g2c_start_index1_record(3)
- fld(3)
- g2cinq.c(3)
- g2c_pngunpackd(3)
- g2c_file_io_uint(3)
- num_fields(3)
- g2cdegrib2.c(3)
- format_level(3)
- gtemplate(3)
- decenc_jpeg2000.c(3)
- g2c_add_file(3)
- f(3)
- source_grid_def(3)
- g2c_compare(3)
- g2_unpack6(3)
- msg(3)
- g2_unpack1(3)
- compack(3)
- g2c_start_index_record(3)
- g2c_file_io_short(3)
- g2c_inq_dim_info(3)
- bmap(3)
- len(3)
- g2c_get_datetime(3)
- g2_unpack4(3)
- master_version(3)
- ndpts(3)
- abbrev(3)
- igdtmpl(3)
- prod_def(3)
- comunpack(3)
- center(3)
- pdstemplates.c(3)
- hton64(3)
- field_num(3)
- simpack.c(3)
- g2_gribend.c(3)
- ipdtnum(3)
- g2c_jpcunpackd(3)
- type(3)
- title(3)
- rdieee(3)
- getdrstemplate(3)
- bytes_to_data(3)
- code(3)
- add_section(3)
- g2c_rw_section3_metadata(3)
- g2c_unpack7_int(3)
- extdrstemplate(3)
- dec_png(3)
- getpoly.c(3)
- specunpack(3)
- entry(3)
- num_messages(3)
- g2c_log_file(3)
- g2c_file_io_int(3)
- mkieee(3)
- cmplxpack.c(3)
- dec_jpeg2000(3)
- g2_addgrid.c(3)
- num_sections(3)
- getpoly(3)
- g2c_dec_png(3)
- g1ver(3)
- ibmap(3)
- sec(3)
- user_flush_data(3)
- g2c_jpcpackd(3)
- jpcpack_int(3)
- template_len(3)
- g2float(3)
- g2c_rw_section4_metadata(3)
- local_version(3)
- indicator(3)
- compack.c(3)
- g2c_get_pds_template_extension(3)
- seekgb(3)
- g2c_get_level_desc(3)
- g2c_enc_png(3)
- gbits(3)
- pngunpack.c(3)
- msg_num(3)
- bytes_to_local(3)
- pngpack.c(3)
- user_read_data(3)
- g2cprod.c(3)
- local(3)
- specunpack.c(3)
- jpcpack.c(3)
- day(3)
- g2c_close(3)
- add_msg(3)
- aecpack(3)
- ngrdpts(3)
- g2cparams.c(3)
- g2_unpack3(3)
- list_opt(3)
- template(3)
- pngpack(3)
- g2c_inq_msg(3)
- g2cid(3)
- mkieee.c(3)
- g2c_aecunpackf(3)
- g2cfile.c(3)
- value(3)
- g2_free.c(3)
- ipdtlen(3)
- g2_free(3)
- g2_info(3)
- g2_addlocal.c(3)
- idsectlen(3)
- g2c_get_prod(3)
- g2c_gbits_int(3)
- simunpack(3)
- int_power(3)
- enc_png(3)
- section1(3)
- idsect(3)
- g2c_strerror(3)
- g2c_pngunpackf(3)
- ntoh64(3)
- templatespds(3)
- g2disc(3)
- coord_list(3)
- idrtmpl(3)
- grib2_int.h(3)
- user_write_data(3)
- rdieee.c(3)
- aecunpack(3)
- g2c_file_io_ushort(3)
- g2_unpack2.c(3)
- hour(3)
- gridtemplates.c(3)
- find_available_g2cid(3)
- interp_list(3)
- getdim(3)
- g2c_param_g2tog1(3)
- getgridindex(3)
- g2c_jpcpackf(3)
- g2_unpack6.c(3)
- comunpack.c(3)
- g2c_find_msg2(3)
- getpdstemplate(3)
- g2c_get_prod_sections(3)
- g2c_degrib2.c(3)
- g2_unpack7(3)
- extlen(3)
- aecunpack.c(3)
- param(3)
- seekgb.c(3)
- g2c_find_desc_str(3)
- misspack.c(3)
- optional(3)
- g2_unpack3.c(3)
- doc(3)
- g2ccompare.c(3)
- g2c_get_grid_template(3)
- g2c_param_g1tog2(3)
- g2c_unpack7(3)
- templatesdrs(3)
- g2c_get_grid_template_extension(3)
- path(3)
- grid_def(3)
- needext(3)
- prev(3)
- sec_info(3)
- ext(3)
- g2c_inq_msg_time(3)
- g2c_aecpackf(3)
- pngunpack_int(3)
- g2c_compare.c(3)
- g2c_param_abbrev(3)
- name(3)
- g2c_find_entry(3)
- sbit(3)
- read_hdr_rec1(3)
- gribfield(3)
- sec_num(3)
- g2cindex.c(3)
- locallen(3)
- sec_id(3)
- pack_gp.c(3)
- g2_miss(3)
- getdim.c(3)
- jpcunpack(3)
- g2_unpack5(3)
- g2c_pngpackf(3)
- read_metadata(3)
- g2c_check_msg(3)
- util.c(3)
- num_coord(3)
- desc(3)
- getpdsindex(3)
- interp_opt(3)
- getdrsindex(3)
- g2c_print_tables(3)
- enc_jpeg2000(3)
- ipdtmpl(3)
- aecpack_int(3)
- g2c_index.c(3)
- simpack(3)
- determine_dims(3)
- ifldnum(3)
apt-get install libg2c-dev
Manual
gridtemplates.c
NAMESYNOPSIS
Functions
Variables
Detailed Description
Program History Log
Function Documentation
gtemplate * extgridtemplate (g2int number, g2int * template)
int g2c_get_grid_template (int grid_template_num, int * maplen, int * map,int * needext)
int g2c_get_grid_template_extension (int grid_template_num, int * template,int * extlen, int * ext)
static g2int getgridindex (g2int number) [static]
gtemplate * getgridtemplate (g2int number)
Variable Documentation
const struct gridtemplate templatesgrid[G2C_MAX_GDS_TEMPLATE] [static]
Author
NAME
gridtemplates.c - Returns grid template information for a specified Grid Definition Template for Section 3 - the Grid Definition Section (GDS).
SYNOPSIS
#include βgrib2_int.hβ
Functions
gtemplate
*
extgridtemplate
(
g2int
number,
g2int
*template)
This subroutine generates the remaining octet map for a
given Grid Definition Template, if required.
int
g2c_get_grid_template
(int grid_template_num, int
*maplen, int *map, int *needext)
Get grid template information.
int
g2c_get_grid_template_extension
(int
grid_template_num, int *template, int *extlen, int *ext)
Get grid template extension information.
static
g2int getgridindex
(
g2int
number)
This function returns the index of specified Grid Definition
Template in array templates for [Section 3 - the Grid
Definition Section
(GDS)](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_sect3.shtml).
gtemplate
*
getgridtemplate
(
g2int
number)
This subroutine returns grid template information for a
specified Grid Definition Template for [Section 3 - the Grid
Definition Section
(GDS)](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_sect3.shtml).
Variables
static const
struct gridtemplate
templatesgrid
[
G2C_MAX_GDS_TEMPLATE
]
Templates grid.
Detailed Description
Returns grid template information for a specified Grid Definition Template for Section 3 - the Grid Definition Section (GDS).
Each Template has three parts:
|
1. |
The number of entries in the template (mapgridlen). |
||
|
2. |
A map of the template (mapgrid), which contains the number of octets in which to pack each of the template values. |
||
|
3. |
A logical value (needext) that indicates whether the Template needs to be extended. |
In some cases the number of entries in a template can vary depending upon values specified in the βstaticβ part of the template. (See Template 3.120 as an example).
Note
Array mapgrid contains the number of octets in which the corresponding template values will be stored. A negative value in mapgrid is used to indicate that the corresponding template entry can contain negative values. This information is used later when packing (or unpacking) the template data values. Negative data values in GRIB are stored with the left most bit set to one, and a negative number of octets value in mapgrid indicates that this possibility should be considered. The number of octets used to store the data value in this case would be the absolute value of the negative value in mapgrid.
Program History Log
Date Programmer Comments 2001-06-28 Gilbert Initial 2007-08-16 Vuong Added GDT 3.204 Curvilinear Orthogonal Grid 2008-07-08 Vuong Added GDT 3.32768 Rotate Lat/Lon E-grid (Arakawa) 2009-01-14 Vuong Changed structure name template to gtemplate 2010-05-11 Vuong Added GDT 3.32769 Rotate Lat/Lon Non-E Staggered grid (Arakawa) 2013-08-06 Vuong Added GDT 3.4, 3.5, 3.12, 3.101, 3.140 2022-10-16 Hartnett Added g2c_get_grid_template() . 2025-01-06 Stahl Added GDT 3.13, 3.23, 3.33, 3.61, 3.62, 3.63, 3.150
Author
Stephen Gilbert
Date
2001-06-28
Definition in file gridtemplates.c .
Function Documentation
gtemplate * extgridtemplate (g2int number, g2int * template)
This subroutine generates the remaining octet map for a given Grid Definition Template, if required. Some Templates can vary depending on data values given in an earlier part of the Template, and it is necessary to know some of the earlier entry values to generate the full octet map of the Template.
This function allocates memory for the extension. The pointer ext in the gtemplate struct must be freed to prevent memory leaks.
Parameters
number
The number of the
Grid Definition Template that is being requested.
template
The grid definition template array.
Returns
Pointer to the returned template struct. Returns NULL pointer, if template not found.
Author
Stephen Gilbert
Date
2000-05-09
Definition at line 241 of file gridtemplates.c .
References getgridindex() , and getgridtemplate() .
Referenced by g2_addgrid() , g2_unpack3() , and g2c_get_grid_template_extension() .
int g2c_get_grid_template (int grid_template_num, int * maplen, int * map,int * needext)
Get grid template information. The grid template consists of a template map, its length, and, for some templates, an extra extension map, and its length. If an extension is needed, use g2c_get_grid_template_extension() to get it.
Parameters
grid_template_num
The
grid template number.
maplen
Pointer that gets the length of the map. Ignored
if NULL.
map
Pointer that gets the map as an array of int. Memory
must be allocated by caller. Ignored if NULL.
needext
Pointer that a non-zero value if an extension to
this template is needed. Ignored if NULL.
Returns
|
β’ |
G2C_NOERROR No error. |
|||
|
β’ |
G2C_ENOTEMPLATE Template not found. |
Author
Ed Hartnett
Date
10/16/22
Definition at line 391 of file gridtemplates.c .
References G2C_ENOTEMPLATE , G2C_MAX_GDS_TEMPLATE , G2C_NOERROR , and templatesgrid .
Referenced by g2c_rw_section3_metadata() .
int g2c_get_grid_template_extension (int grid_template_num, int * template,int * extlen, int * ext)
Get grid template extension information.
Parameters
grid_template_num
The
grid template number.
template
Pointer to array that contains the template
values.
extlen
Pointer that gets the length of the extension.
Ignored if NULL.
ext
Pointer that gets template extension array, if there
is one. Memory must be allocated by the caller. Ignored if
NULL.
Returns
|
β’ |
G2C_NOERROR No error. |
|||
|
β’ |
G2C_EINVAL Invalid input. |
|||
|
β’ |
G2C_ENOTEMPLATE Template not found. |
|||
|
β’ |
G2C_ENOMEM Out of memory. |
Author
Ed Hartnett
Date
10/16/22
Definition at line 316 of file gridtemplates.c .
References gtemplate::ext , extgridtemplate() , gtemplate::extlen , G2C_EINVAL , G2C_ENOMEM , G2C_ENOTEMPLATE , G2C_MAX_GDS_TEMPLATE , G2C_NOERROR , and templatesgrid .
static g2int getgridindex (g2int number) [static]
This function returns the index of specified Grid Definition Template in array templates for [Section 3 - the Grid Definition Section (GDS)](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_sect3.shtml).
Parameters
number The number of the Grid Definition Template being requested.
Returns
Index of the Grid Definition Template(GDT) in array templates, if template exists. -1, otherwise.
Author
Stephen Gilbert
Date
2001-06-28
Definition at line 155 of file gridtemplates.c .
References G2C_MAX_GDS_TEMPLATE , getgridindex() , and templatesgrid .
Referenced by extgridtemplate() , getgridindex() , and getgridtemplate() .
gtemplate * getgridtemplate (g2int number)
This subroutine returns grid template information for a specified Grid Definition Template for [Section 3 - the Grid Definition Section (GDS)](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_sect3.shtml). The number of entries in the template is returned along with a map of the number of octets occupied by each entry. Also, a flag is returned to indicate whether the template would need to be extended.
This function allocates storage for the template. The returned pointer must be freed by the caller.
Parameters
number The number of the Grid Definition Template that is being requested.
Returns
Pointer to the returned template struct (must be freed by caller). Returns NULL pointer, if template not found.
Author
Stephen Gilbert
Date
2000-05-09
Definition at line 193 of file gridtemplates.c .
References getgridindex() , and templatesgrid .
Referenced by extgridtemplate() , g2_addgrid() , and g2_unpack3() .
Variable Documentation
const struct gridtemplate templatesgrid[G2C_MAX_GDS_TEMPLATE] [static]
Templates grid.
Definition at line 58 of file gridtemplates.c .
Referenced by g2c_get_grid_template() , g2c_get_grid_template_extension() , getgridindex() , and getgridtemplate() .
Author
Generated automatically by Doxygen for NCEPLIBS-g2c from the source code.