NCEPLIBS-bufr
12.1.0
|
Print the contents of a data subset or DX BUFR table. More...
Go to the source code of this file.
Functions/Subroutines | |
recursive subroutine | dxdump (lunit, ldxot) |
Print a copy of the DX BUFR table associated with a specified Fortran logical unit. More... | |
recursive subroutine | getabdb (lunit, tabdb, itab, jtab) |
Get Table B and Table D information from the internal DX BUFR tables. More... | |
recursive subroutine | ufbdmp (lunin, luprt) |
Print a verbose listing of the contents of a data subset, including all data values and replicated sequences, as well as jump/link table information and other internal subset pointers. More... | |
recursive subroutine | ufdump (lunit, luprt) |
Print a verbose listing of the contents of a data subset, including all data values and replicated sequences, as well as the meanings of data values which are code or flag table entries. More... | |
Print the contents of a data subset or DX BUFR table.
Definition in file dumpdata.F90.
recursive subroutine dxdump | ( | integer, intent(in) | lunit, |
integer, intent(in) | ldxot | ||
) |
Print a copy of the DX BUFR table associated with a specified Fortran logical unit.
This subroutine is especially useful for learning the structure of existing BUFR files which contain DX BUFR table information embedded as BUFR messages within those files. The DX BUFR table is printed using the same ASCII format described in the documentation for DX BUFR Tables, so the output file is suitable for use as Fortran logical unit LUNDX in subsequent calls to subroutine openbf() for reading or writing additional BUFR files with the same structure.
lunit | - Fortran logical unit number for BUFR file |
ldxot | - Fortran logical unit number for print output |
Logical unit lunit must be open for either input or output operations via a previous call to subroutine openbf(). Logical unit ldxot must already be associated with a filename on the local system, typically via a Fortran "OPEN" statement.
Definition at line 579 of file dumpdata.F90.
References bort(), moda_nmikrp::irp, moda_nmikrp::krp, moda_nmikrp::nem, nemtbd(), moda_tababd::ntba, moda_tababd::ntbb, moda_tababd::ntbd, status(), strsuc(), moda_tababd::taba, moda_tababd::tabb, moda_tababd::tabd, and x84().
Referenced by fdebufr_c(), and gettab().
recursive subroutine getabdb | ( | integer, intent(in) | lunit, |
character*128, dimension(*), intent(out) | tabdb, | ||
integer, intent(in) | itab, | ||
integer, intent(out) | jtab | ||
) |
Get Table B and Table D information from the internal DX BUFR tables.
The information is returned in a memory array in a pre-defined ASCII format.
lunit | - Fortran logical unit number for BUFR file |
itab | - Dimensioned size of tabdb array; used by the subroutine to ensure that it doesn't overflow the tabdb array |
tabdb | - Internal Table B and Table D information |
jtab | - Number of entries stored within tabdb |
Definition at line 828 of file dumpdata.F90.
References moda_nmikrp::irp, moda_nmikrp::krp, moda_nmikrp::nem, nemtbd(), moda_tababd::ntbb, moda_tababd::ntbd, status(), moda_tababd::tabb, moda_tababd::tabd, x48(), and x84().
recursive subroutine ufbdmp | ( | integer, intent(in) | lunin, |
integer, intent(in) | luprt | ||
) |
Print a verbose listing of the contents of a data subset, including all data values and replicated sequences, as well as jump/link table information and other internal subset pointers.
This subroutine is similar to subroutine ufdump(), but it prints different characteristics of each data subset, and in a slightly different format. However, both subroutines can be useful for different diagnostic purposes, and both can also be run interactively to scroll through the contents of a data subset.
Logical unit abs(lunin) should have already been opened for input operations via a previous call to subroutine openbf(), and a BUFR data subset should have already been read into internal arrays via a previous call to one of the subset-reading subroutines.
Except when luprt = 0, logical unit luprt must already be associated with a filename on the local system, typically via a Fortran "OPEN" statement. When luprt = 0, the subroutine will run interactively and print to standard output, scrolling 20 lines at a time and prompting each time whether to quit and return to the application program (by typing 'q' then '<Enter>') or continue scrolling (by typing anything else).
lunin | - Absolute value is Fortran logical unit number for BUFR file
|
luprt | - Fortran logical unit number for print output:
|
Definition at line 41 of file dumpdata.F90.
References bort(), ibfms(), moda_tables::ibt, icbfms(), moda_msgcwd::inode, moda_usrint::inv, moda_tables::irf, moda_tables::isc, isize(), moda_tables::itp, moda_tables::jmpb, moda_tables::jump, moda_tables::link, nemtab(), moda_usrint::nval, readlc(), status(), moda_tababd::tabb, moda_tables::tag, moda_tables::typ, upftbv(), moda_usrint::val, and x84().
recursive subroutine ufdump | ( | integer, intent(in) | lunit, |
integer, intent(in) | luprt | ||
) |
Print a verbose listing of the contents of a data subset, including all data values and replicated sequences, as well as the meanings of data values which are code or flag table entries.
This subroutine is similar to subroutine ufbdmp(), but it prints different characteristics of each data subset, and in a slightly different format. However, both subroutines can be useful for different diagnostic purposes, and both can also be run interactively to scroll through the contents of a data subset.
Logical unit lunit should have already been opened for input operations via a previous call to subroutine openbf(), and a BUFR data subset should have already been read into internal arrays via a previous call to one of the subset-reading subroutines.
Except when luprt = 0, logical unit luprt must already be associated with a filename on the local system, typically via a Fortran "OPEN" statement. When luprt = 0, the subroutine will run interactively and print to standard output, scrolling 20 lines at a time and prompting each time whether to quit and return to the application program (by typing 'q' then '<Enter>') or continue scrolling (by typing anything else).
In order for the meanings of code and flag table values to be included in the output, a previous call to subroutine codflg() must have been made with argument cf = 'Y'. Otherwise, only the code and flag table values themselves will be printed.
lunit | - Fortran logical unit number for BUFR file |
luprt | - Fortran logical unit number for print output
|
Definition at line 227 of file dumpdata.F90.
References bort(), moda_tablef::cdmf, fstag(), ibfms(), moda_tables::ibt, icbfms(), moda_msgcwd::inode, moda_nrv203::inodnrv, moda_usrint::inv, ireadmt(), moda_tables::irf, moda_tables::isc, isize(), moda_tables::itp, nemtab(), moda_nrv203::nnrv, moda_usrint::nrfelm, moda_msgcwd::nsub, numtbd(), moda_usrint::nval, readlc(), status(), strsuc(), moda_tababd::tabb, moda_tables::tag, moda_tables::typ, upftbv(), moda_usrint::val, and x84().
Referenced by fdebufr_c(), readbp(), and readmp().