50 DO WHILE ( .NOT. done )
52 IF ( ier .EQ. -1 )
THEN
62 ELSE IF ( ier .EQ. -2 )
THEN
89 IF ( iprt .GE. 2 )
THEN
90 CALL errwrt(
'+++++++++++++++++++++++++++++++++++++++++++++++++')
91 WRITE ( unit=errstr, fmt=
'(A,I3,A)' )
92 .
'BUFRLIB: RDBFDX - STORED NEW DX TABLE CONSISTING OF (',
95 errstr =
'WILL APPLY THIS TABLE TO ALL SUBSEQUENT DATA IN '//
96 .
'FILE UNTIL NEXT DX TABLE IS FOUND'
98 CALL errwrt(
'+++++++++++++++++++++++++++++++++++++++++++++++++')
105 900
CALL bort(
'BUFRLIB: RDBFDX - ERROR READING A BUFR DICTIONARY '//
subroutine bort(STR)
Log one error message and abort application program.
subroutine dxinit(LUN, IOI)
This subroutine initializes the internal arrays (in module moda_tababd) holding the DX BUFR table.
subroutine errwrt(STR)
This subroutine allows the user to specify a custom location for the logging of error and diagnostic ...
recursive function idxmsg(MESG)
Check whether a BUFR message contains DX BUFR tables information.
recursive function iupbs3(MBAY, S3MNEM)
This function returns a specified value from within Section 3 of a BUFR message.
subroutine makestab
This subroutine constructs the internal jump/link table within module tables, using all of the intern...
Wrap C NCEPLIBS-bufr functions so they can be called from within the Fortran part of the library.
This module contains a declaration for an array used by various subroutines and functions to hold a t...
integer, dimension(:), allocatable mgwa
Temporary working copy of BUFR message.
subroutine rdbfdx(LUNIT, LUN)
Beginning at the current file pointer location within LUNIT, this subroutine reads a complete DX BUFR...
subroutine rdmsgw(lunit, mesg, iret)
Read the next BUFR message from logical unit lunit as an array of integer words.
subroutine stbfdx(LUN, MESG)
This subroutine copies a DX BUFR tables message from the input array mesg into the internal memory ar...