NCEPLIBS-bufr  12.0.1
bufr_interface.h
Go to the documentation of this file.
1 
13 #pragma once
14 
15 void cobfl(char *bfl, char io);
16 void crbmg(char *bmg, int mxmb, int *nmb, int *iret);
17 void cwbmg(char *bmg, int nmb, int *iret);
18 void ccbfl(void);
19 
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23 
32  void open_f(int unit, const char* filepath);
33 
41  void close_f(int unit);
42 
55  void openbf_f(int bufr_unit, const char* cio, int table_file_id);
56 
66  void closbf_f(int bufr_unit);
67 
75  void exitbufr_f();
76 
93  int ireadmg_f(int bufr_unit, char* subset, int* iddate, int subset_len);
94 
108  int ireadsb_f(int bufr_unit);
109 
124  void ufbint_f(int bufr_unit, void** c_data, int dim_1, int dim_2,
125  int* iret, const char* table_b_mnemonic);
126 
141  void ufbrep_f(int bufr_unit, void** c_data, int dim_1, int dim_2,
142  int* iret, const char* table_b_mnemonic);
143 
155  void mtinfo_f(const char* path, int file_unit_1, int file_unit_2);
156 
169  void status_f(int file_unit, int* lun, int* il, int* im);
170 
186  void nemdefs_f(int file_unit,
187  const char* mnemonic,
188  char* unit_c,
189  int unit_str_len,
190  char* desc_c,
191  int desc_str_len,
192  int* iret);
193 
210  void nemspecs_f(int file_unit,
211  const char* mnemonic,
212  int mnemonic_idx,
213  int* scale,
214  int* reference,
215  int* bits,
216  int* iret);
217 
231  void nemtab_f(int lun,
232  const char* mnemonic,
233  int* descriptor,
234  char* table_type,
235  int* table_idx);
236 
252  void nemtbb_f(int lun,
253  int table_idx,
254  char* unit_str,
255  int unit_str_len,
256  int* scale,
257  int* reference,
258  int* bits);
259 
268  void get_isc_f(int** isc_ptr, int* isc_size);
269 
278  void get_link_f(int** link_ptr, int* link_size);
279 
288  void get_itp_f(int** itp_ptr, int* itp_size);
289 
299  void get_typ_f(char** typ_ptr, int* typ_len, int* mem_size);
300 
310  void get_tag_f(char** tag_ptr, int* tag_len, int* mem_size);
311 
320  void get_jmpb_f(int** jmpb_ptr, int* jmpb_size);
321 
322 
331  void get_irf_f(int** irf_ptr, int* irf_size);
332 
341  void get_inode_f(int lun, int* start_node);
342 
351  void get_nval_f(int lun, int* num_nodes);
352 
362  void get_val_f(int lun, double** val_ptr, int* val_size);
363 
373  void get_inv_f(int lun, int** inv_ptr, int* inv_size);
374 
387  void readlc_f(int lunit, const char* str_id, char* output_str, int output_str_len);
388 
395 
408  int iupbs01_f(int *bufr, char* mnemonic);
409 
419  int igetprm_f(char *cprmnm);
420 
431  int isetprm_f(char *cprmnm, int ipval);
432 
443  void maxout_f(int max0);
444 
454  int igetmxby_f(void);
455 
470  void ufbseq_f(int bufr_unit, void** c_data, int dim_1, int dim_2,
471  int* iret, const char* table_d_mnemonic);
472 
489  int ireadns_f(int bufr_unit, char* subset, int* iddate, int subset_len);
490 
502  int ibfms_f(double r8val);
503 
516  void openmb_f(int bufr_unit, char *c_subset, int iddate);
517 
528  void bvers_f(char *cverstr, int cverstr_len);
529 
540  void cmpmsg_f(char *cf);
541 
542 #ifdef __cplusplus
543 }
544 #endif
void closbf_f(int bufr_unit)
Close a previously opened file and disconnect it from the library.
void get_jmpb_f(int **jmpb_ptr, int *jmpb_size)
Get copy of the moda_tables JMPB array.
int isetprm_f(char *cprmnm, int ipval)
Define a customized parameter value for dynamic allocation.
int igetprm_f(char *cprmnm)
Get the current value of a parameter.
void ufbrep_f(int bufr_unit, void **c_data, int dim_1, int dim_2, int *iret, const char *table_b_mnemonic)
Read/write one or more data values from/to a data subset.
void get_nval_f(int lun, int *num_nodes)
Get the number of values in the current subset.
void get_inode_f(int lun, int *start_node)
Get the bufr node idx for the start node of the subset.
void cobfl(char *bfl, char io)
Open a new file for reading or writing BUFR messages via a C language interface.
Definition: crwbmg.c:120
void cwbmg(char *bmg, int nmb, int *iret)
Write a BUFR message to the file that was opened via the most recent call to function cobfl() with io...
Definition: crwbmg.c:269
void get_val_f(int lun, double **val_ptr, int *val_size)
Get pointer to the moda_usrint VAL array.
int iupbs01_f(int *bufr, char *mnemonic)
Read a data value from Section 0 or Section 1 of a BUFR message.
void ufbseq_f(int bufr_unit, void **c_data, int dim_1, int dim_2, int *iret, const char *table_d_mnemonic)
Read/write an entire sequence of data values from/to a data subset.
int igetmxby_f(void)
Get the maximum length of a BUFR message that can be written to an output file.
void maxout_f(int max0)
Define a customized maximum length for output BUFR messages.
int ireadsb_f(int bufr_unit)
Read the next data subset from a BUFR message.
void openbf_f(int bufr_unit, const char *cio, int table_file_id)
Connect a new file to the library, or initialize the library, or change verbosity associated with alr...
void get_tag_f(char **tag_ptr, int *tag_len, int *mem_size)
Get copy of the moda_tables TAG array.
void get_inv_f(int lun, int **inv_ptr, int *inv_size)
Get pointer to the moda_usrint INV array.
void nemspecs_f(int file_unit, const char *mnemonic, int mnemonic_idx, int *scale, int *reference, int *bits, int *iret)
Get the scale factor, reference value and bit width associated with a specified occurrence of a Table...
void status_f(int file_unit, int *lun, int *il, int *im)
Check whether a file is connected to the library.
void get_typ_f(char **typ_ptr, int *typ_len, int *mem_size)
Get copy of the moda_tables TYP array.
void get_link_f(int **link_ptr, int *link_size)
Get copy of the moda_tables LINK array.
void crbmg(char *bmg, int mxmb, int *nmb, int *iret)
Read the next BUFR message from the file that was opened via the most recent call to function cobfl()...
Definition: crwbmg.c:201
int ireadmg_f(int bufr_unit, char *subset, int *iddate, int subset_len)
Read the next message from a BUFR file.
int ibfms_f(double r8val)
Test whether a data value is "missing".
void get_isc_f(int **isc_ptr, int *isc_size)
Get copy of the moda_tables ISC array.
void mtinfo_f(const char *path, int file_unit_1, int file_unit_2)
Specify location of master BUFR tables on local file system.
void nemdefs_f(int file_unit, const char *mnemonic, char *unit_c, int unit_str_len, char *desc_c, int desc_str_len, int *iret)
Get the element name and units associated with a Table B mnemonic.
void openmb_f(int bufr_unit, char *c_subset, int iddate)
Open a new message for output in a BUFR file that was previously opened for writing.
void close_f(int unit)
Close a Fortran file from a C program.
void ccbfl(void)
Close all files that were opened via previous calls to function cobfl().
Definition: crwbmg.c:296
void ufbint_f(int bufr_unit, void **c_data, int dim_1, int dim_2, int *iret, const char *table_b_mnemonic)
Read/write one or more data values from/to a data subset.
void readlc_f(int lunit, const char *str_id, char *output_str, int output_str_len)
Function used to get long strings from the BUFR file.
int ireadns_f(int bufr_unit, char *subset, int *iddate, int subset_len)
Read the next data subset from a BUFR file.
void exitbufr_f()
Reset the library.
void nemtbb_f(int lun, int table_idx, char *unit_str, int unit_str_len, int *scale, int *reference, int *bits)
Get information about a Table B descriptor.
void open_f(int unit, const char *filepath)
Open a Fortran file from a C program.
void delete_table_data_f()
Deletes the copies of the moda_tables arrays.
void nemtab_f(int lun, const char *mnemonic, int *descriptor, char *table_type, int *table_idx)
Get information about a descriptor.
void bvers_f(char *cverstr, int cverstr_len)
Get the version number of the NCEPLIBS-bufr software.
void get_irf_f(int **irf_ptr, int *irf_size)
Get copy of the moda_tables IRF array.
void get_itp_f(int **itp_ptr, int *itp_size)
Get copy of the moda_tables ITP array.
void cmpmsg_f(char *cf)
Specify the use of compression when writing BUFR messages.