g2cinq.c(3) Library Functions Manual g2cinq.c(3)

g2cinq.c - Inquiry functions.

#include 'grib2_int.h'
#include <stdarg.h>


EXTERN_MUTEX (m)
If pthreads are enabled, use externally-defined mutex for thread-safety. int g2c_inq (int g2cid, int *num_msg)
Learn about a GRIB2 file. int g2c_inq_dim (int g2cid, int msg_num, int prod_num, int dim_num, size_t *len, char *name, float *val)
Learn about the one of the dimensions of a GRIB2 product. int g2c_inq_dim_info (int g2cid, int msg_num, int prod_num, int dim_num, size_t *len, char *name)
Learn about the one of the dimensions of a GRIB2 product. int g2c_inq_msg (int g2cid, int msg_num, unsigned char *discipline, int *num_fields, int *num_local, short *center, short *subcenter, unsigned char *master_version, unsigned char *local_version)
Learn about a GRIB2 message. int g2c_inq_msg_time (int g2cid, int msg_num, unsigned char *sig_ref_time, short *year, unsigned char *month, unsigned char *day, unsigned char *hour, unsigned char *minute, unsigned char *second)
Learn about the date/time information in a GRIB2 message. int g2c_inq_prod (int g2cid, int msg_num, int prod_num, int *pds_template_len, long long int *pds_template, int *gds_template_len, long long int *gds_template, int *drs_template_len, long long int *drs_template)
Inquire about a product.


G2C_FILE_INFO_T g2c_file [G2C_MAX_FILES+1]
Global file information.

Inquiry functions.

Author

Ed Hartnett

Date

10/21/22

Definition in file g2cinq.c.

If pthreads are enabled, use externally-defined mutex for thread-safety.

Learn about a GRIB2 file.

Parameters

g2cid ID of the opened file, as from g2c_open().
num_msg Pointer that gets the number of messages in the file. Ignored if NULL.

Returns

  • G2C_NOERROR No error.
  • G2C_EBADID File ID not found.

Author

Ed Hartnett

Date

10/21/22

Definition at line 31 of file g2cinq.c.

References G2C_EBADID, g2c_file, G2C_MAX_FILES, G2C_NOERROR, MUTEX_LOCK, MUTEX_UNLOCK, and g2c_file_info::num_messages.

Learn about the one of the dimensions of a GRIB2 product. This function will return the size, name, and values along the dimension.

Parameters

g2cid ID of the opened file, as from g2c_open().
msg_num Number of the message in the file, starting with the first message as 0.
prod_num Product number.
dim_num Dimension number, with the first dimension as 0.
len Pointer that gets the length of this dimension. Ignored if NULL.
name Pointer that gets the name of this dimension. Must have memory of size G2C_MAX_NAME. Ignored if NULL.
val Pointer that gets array of dimension values, of length len. Ignored if NULL.

Returns

  • G2C_NOERROR No error.
  • G2C_EBADID File ID not found.
  • G2C_ENOMSG Message not found.
  • G2C_ENOPRODUCT Product not found.
  • G2C_ENOSECTION GDS not found.

Author

Ed Hartnett

Date

10/21/22

Definition at line 372 of file g2cinq.c.

References G2C_EBADID, G2C_EINVAL, G2C_ENOMSG, G2C_ENOPRODUCT, G2C_ENOSECTION, g2c_file, G2C_MAX_FILES, G2C_MAX_NAME, G2C_NOERROR, g2c_dim_info::len, g2c_message_info::msg_num, MUTEX_LOCK, MUTEX_UNLOCK, g2c_dim_info::name, g2c_message_info::next, g2c_section_info::next, g2c_section_info::prev, g2c_message_info::sec, g2c_section_info::sec_info, g2c_section_info::sec_num, and g2c_dim_info::value.

Referenced by g2c_inq_dim_info().

Learn about the one of the dimensions of a GRIB2 product. This function will return the size and name of the dimension.

Parameters

g2cid ID of the opened file, as from g2c_open().
msg_num Number of the message in the file, starting with the first message as 0.
prod_num Product number.
dim_num Dimension number, with the first dimension as 0.
len Pointer that gets the length of this dimension. Ignored if NULL.
name Pointer that gets the name of this dimension. Must have memory of size G2C_MAX_NAME. Ignored if NULL.

Returns

  • G2C_NOERROR No error.
  • G2C_EBADID File ID not found.
  • G2C_ENOMSG Message not found.
  • G2C_ENOPRODUCT Product not found.
  • G2C_ENOSECTION GDS not found.

Author

Ed Hartnett

Date

10/21/22

Definition at line 468 of file g2cinq.c.

References g2c_inq_dim().

Learn about a GRIB2 message.

Parameters

g2cid ID of the opened file, as from g2c_open().
msg_num Number of the message in the file, starting with the first message as 0.
discipline Pointer that gets the discipline from the message. Ignored if NULL.
num_fields Pointer that gets the number of fields in the message. Ignored if NULL.
num_local Pointer that gets the number of local sections in the message. Ignored if NULL.
center Pointer that gets the code for the producing center from the message. Ignored if NULL.
subcenter Pointer that gets the code for the producing subcenter from the message. Ignored if NULL.
master_version Pointer that gets the master version from the message. Ignored if NULL.
local_version Pointer that gets the local version from the message. Ignored if NULL.

Returns

  • G2C_NOERROR No error.
  • G2C_EBADID File ID not found.
  • G2C_ENOMSG Message not found.

Author

Ed Hartnett

Date

10/21/22

Definition at line 87 of file g2cinq.c.

References g2c_message_info::center, g2c_message_info::discipline, G2C_EBADID, G2C_EINVAL, G2C_ENOMSG, g2c_file, G2C_MAX_FILES, G2C_NOERROR, g2c_message_info::local_version, g2c_message_info::master_version, g2c_message_info::msg_num, MUTEX_LOCK, MUTEX_UNLOCK, g2c_message_info::next, g2c_message_info::num_fields, g2c_message_info::num_local, and g2c_message_info::subcenter.

Learn about the date/time information in a GRIB2 message.

Parameters

g2cid ID of the opened file, as from g2c_open().
msg_num Number of the message in the file, starting with the first message as 0.
sig_ref_time Pointer that gets Significane of reference time value from the message. Ignored if NULL.
year Pointer that gets the year from the message. Ignored if NULL.
month Pointer that gets the month from the message. Ignored if NULL.
day Pointer that gets the day from the message. Ignored if NULL.
hour Pointer that gets the hour from the message. Ignored if NULL.
minute Pointer that gets the minute from the message. Ignored if NULL.
second Pointer that gets the seconds from the message. Ignored if NULL.

Returns

  • G2C_NOERROR No error.
  • G2C_EBADID File ID not found.
  • G2C_ENOMSG Message not found.

Author

Ed Hartnett

Date

10/22/22

Definition at line 170 of file g2cinq.c.

References g2c_message_info::day, G2C_EBADID, G2C_EINVAL, G2C_ENOMSG, g2c_file, G2C_MAX_FILES, G2C_NOERROR, g2c_message_info::hour, g2c_message_info::minute, g2c_message_info::month, g2c_message_info::msg_num, MUTEX_LOCK, MUTEX_UNLOCK, g2c_message_info::next, g2c_message_info::second, g2c_message_info::sig_ref_time, and g2c_message_info::year.

Inquire about a product.

Parameters

g2cid File ID.
msg_num Message number.
prod_num Product number.
pds_template_len PDS template length. Ignored if NULL.
pds_template Pointer that gets the PDS template. Ignored if NULL.
gds_template_len GDS template length. Ignored if NULL.
gds_template Pointer that gets the GDS template. Ignored if NULL.
drs_template_len The DRS template length. Ignored if NULL.
drs_template Pointer that gets the DRS template. Ignored if NULL.

Returns

  • G2C_NOERROR No error.
  • G2C_EBADID File ID not found.
  • G2C_ENOMSG Message not found.
  • G2C_ENOPRODUCT Product not found.
  • G2C_ENOSECTION Section not found.

Author

Ed Hartnett

Date

10/21/22

Definition at line 247 of file g2cinq.c.

References G2C_EBADID, G2C_EINVAL, G2C_ENOMSG, G2C_ENOPRODUCT, G2C_ENOSECTION, g2c_file, G2C_MAX_FILES, G2C_NOERROR, g2c_message_info::msg_num, MUTEX_LOCK, MUTEX_UNLOCK, g2c_message_info::next, g2c_section_info::next, g2c_section_info::prev, g2c_message_info::sec, g2c_section_info::sec_info, g2c_section_info::sec_num, g2c_section_info::template, and g2c_section_info::template_len.

G2C_FILE_INFO_T g2c_file[G2C_MAX_FILES+1] [extern]

Global file information.

Definition at line 10 of file g2cfile.c.

Referenced by g2c_inq(), g2c_inq_dim(), g2c_inq_msg(), g2c_inq_msg_time(), and g2c_inq_prod().

Generated automatically by Doxygen for NCEPLIBS-g2c from the source code.

Version 2.1.0 NCEPLIBS-g2c