NCEPLIBS-bufr 11.7.1
|
Fortran language code for debufr utility. More...
Go to the source code of this file.
Modules | |
module | share_table_info |
This module is used within the debufr utility to share information between subroutine fdebufr() and subroutine openbt(), since the latter is not called by the former but rather is called directly from within the BUFRLIB software. | |
Functions/Subroutines | |
subroutine | fdebufr (ofile, tbldir, lentd, tblfil, prmstg, basic, forcemt, cfms) |
This subroutine reads, decodes, and generates a verbose output listing of the contents of every BUFR message from within the input file that was previously opened via a call to subroutine cobfl() with io = 'r'. More... | |
subroutine | openbt (lundx, mtyp) |
This subroutine overrides the placeholder subroutine of the same name within the BUFRLIB distribution package. More... | |
Fortran language code for debufr utility.
Definition in file debufr.f.
subroutine fdebufr | ( | character*(*) | ofile, |
character*(*) | tbldir, | ||
lentd, | |||
character*(*) | tblfil, | ||
character*(*) | prmstg, | ||
character*1 | basic, | ||
character*1 | forcemt, | ||
character*1 | cfms | ||
) |
This subroutine reads, decodes, and generates a verbose output listing of the contents of every BUFR message from within the input file that was previously opened via a call to subroutine cobfl() with io = 'r'.
[in] | ofile | – character*(*): File to contain verbose output listing of contents of each decoded BUFR message |
[in] | tbldir | – character*(*): Directory containing DX and/or master BUFR tables to be used for decoding |
[in] | lentd | – integer: length of tbldir string |
[in] | tblfil | – character*(*): File containing DX BUFR table information to be used for decoding
|
[in] | prmstg | – character*(*): String of up to 20 comma-separated PARAMETER=VALUE pairs to be used to dynamically allocate memory within the BUFRLIB software, overriding the default VALUE that would otherwise be used for each such PARAMETER.
|
[in] | basic | – character: Indicator as to whether only "basic" information in Sections 0-3 should be decoded from each BUFR message:
|
[in] | forcemt | – character: Indicator as to whether master BUFR tables should be used for decoding, regardless of whether the input file contains any embedded DX BUFR table messages:
|
[in] | cfms | – character: Indicator as to whether code and flag table meanings should be read from master BUFR tables and included in the print output:
|
Program history log:
Date | Programmer | Comments |
---|---|---|
2009-07-01 | J. Ator | Original author |
2012-06-18 | J. Ator | Added tblfil argument and options to decode files according to DX dictionary information |
2012-12-07 | J. Ator | Added forcemt and lentd arguments |
2013-10-07 | J. Ator | Print Section 1 tank receipt time information for NCEP/NCO BUFR messages if available |
2013-11-15 | J. Ator | Added check for missing or unreadable tblfil |
2014-09-15 | J. Ator | Confirm BUFR file was opened (i.e. at least one good return from crbmg() before calling dxdump() |
2018-01-19 | J. Ator | Added print of code and flag table meanings |
2018-03-01 | J. Ator | Added print of data types and subtypes from code and flag tables |
2018-09-05 | J. Ator | Added prmstg argument |
2019-02-01 | J. Ator | Remove limit on length of prmstg |
2021-02-24 | J. Ator | Use all formatted writes, for consistent output between builds using 4-byte vs. 8-byte integers |
Definition at line 86 of file debufr.f.
References codflg(), crbmg(), datelen(), dxdump(), getcfmng(), idxmsg(), ireadsb(), isetprm(), iupbs01(), iupbs3(), mtinfo(), openbf(), parstr(), readerme(), rtrcptb(), strnum(), strsuc(), ufdump(), and upds3().
subroutine openbt | ( | lundx, | |
mtyp | |||
) |
This subroutine overrides the placeholder subroutine of the same name within the BUFRLIB distribution package.
Given the data category for a BUFR message, it opens the appropriate DX BUFR tables file to use in reading/decoding the message.
[in] | mtyp | – integer: Data category of BUFR message |
[out] | lundx | – integer: Fortran logical unit number for DX BUFR tables file to use in reading/decoding the message
|
Program history log: