91 DO WHILE ( .NOT. done )
92 CALL
rdmsgw( lunit, mgwa, ier )
93 IF ( ier .EQ. -1 )
THEN
103 ELSE IF ( ier .EQ. -2 )
THEN
105 ELSE IF (
idxmsg(mgwa) .NE. 1 )
THEN
114 ELSE IF (
iupbs3(mgwa,
'NSUB') .EQ. 0 )
THEN
130 IF ( iprt .GE. 2 )
THEN
131 CALL
errwrt(
'+++++++++++++++++++++++++++++++++++++++++++++++++')
132 WRITE ( unit=errstr, fmt=
'(A,I3,A)' )
133 .
'BUFRLIB: RDBFDX - STORED NEW DX TABLE CONSISTING OF (',
136 errstr =
'WILL APPLY THIS TABLE TO ALL SUBSEQUENT DATA IN '//
137 .
'FILE UNTIL NEXT DX TABLE IS FOUND'
139 CALL
errwrt(
'+++++++++++++++++++++++++++++++++++++++++++++++++')
146 900 CALL
bort(
'BUFRLIB: RDBFDX - ERROR READING A BUFR DICTIONARY '//
function iupbs3(MBAY, S3MNEM)
This function returns a specified value from within Section 3 of a BUFR message.
void backbufr(f77int *nfile)
This subroutine backspaces a BUFR file by one BUFR message.
subroutine rdmsgw(LUNIT, MESG, IRET)
THIS SUBROUTINE READS THE NEXT BUFR MESSAGE FROM LOGICAL UNIT LUNIT AS AN ARRAY OF INTEGER WORDS...
subroutine dxinit(LUN, IOI)
THIS SUBROUTINE INITIALIZES THE INTERNAL ARRAYS (IN MODULE TABABD) HOLDING THE DICTIONARY TABLE...
function idxmsg(MESG)
This function determines whether a given BUFR message contains DX BUFR tables information that was ge...
subroutine makestab
THIS SUBROUTINE CONSTRUCTS AN INTERNAL JUMP/LINK TABLE WITHIN MODULE TABLES, USING THE INFORMATION WI...
subroutine errwrt(STR)
This subroutine allows the user to specify a custom location for the logging of error and diagnostic ...
subroutine stbfdx(LUN, MESG)
THIS SUBROUTINE COPIES A BUFR TABLE (DICTIONARY) MESSAGE FROM THE INPUT ARRAY MESG INTO THE INTERNAL ...
subroutine rdbfdx(LUNIT, LUN)
BEGINNING AT THE CURRENT FILE POINTER LOCATION WITHIN LUNIT, THIS SUBROUTINE READS A COMPLETE DICTION...
subroutine bort(STR)
This subroutine calls subroutine errwrt() to log an error message, then calls subroutine bort_exit() ...