56 SUBROUTINE rdmtbb ( LUNSTB, LUNLTB, MXMTBB,
57 . imt, imtv, iogce, iltv,
58 . nmtbb, imfxyn, cmscl, cmsref, cmbw,
59 . cmunit, cmmnem, cmdsc, cmelem )
63 character*200 stline, ltline
64 character*128 bort_str
65 character*6 cmatch,
adn30
67 character cmelem(120,*)
68 character cmunit(14,*)
69 character cmsref(12,*)
71 character cmscl(4,*), cmbw(4,*)
85 CALL
gettbh( lunstb, lunltb,
'B', imt, imtv, iogce, iltv )
91 CALL
getntbe( lunstb, isfxyn, stline, iers )
92 CALL
getntbe( lunltb, ilfxyn, ltline, ierl )
93 DO WHILE ( ( iers .EQ. 0 ) .OR. ( ierl .EQ. 0 ) )
94 IF ( ( iers .EQ. 0 ) .AND. ( ierl .EQ. 0 ) )
THEN
95 IF ( isfxyn .EQ. ilfxyn )
THEN
96 cmatch =
adn30( isfxyn, 6 )
98 ELSE IF ( isfxyn .LT. ilfxyn )
THEN
99 CALL
sntbbe( isfxyn, stline, mxmtbb,
100 . nmtbb, imfxyn, cmscl, cmsref, cmbw,
101 . cmunit, cmmnem, cmdsc, cmelem )
102 CALL
getntbe( lunstb, isfxyn, stline, iers )
104 CALL
sntbbe( ilfxyn, ltline, mxmtbb,
105 . nmtbb, imfxyn, cmscl, cmsref, cmbw,
106 . cmunit, cmmnem, cmdsc, cmelem )
107 CALL
getntbe( lunltb, ilfxyn, ltline, ierl )
109 ELSE IF ( iers .EQ. 0 )
THEN
110 CALL
sntbbe( isfxyn, stline, mxmtbb,
111 . nmtbb, imfxyn, cmscl, cmsref, cmbw,
112 . cmunit, cmmnem, cmdsc, cmelem )
113 CALL
getntbe( lunstb, isfxyn, stline, iers )
114 ELSE IF ( ierl .EQ. 0 )
THEN
115 CALL
sntbbe( ilfxyn, ltline, mxmtbb,
116 . nmtbb, imfxyn, cmscl, cmsref, cmbw,
117 . cmunit, cmmnem, cmdsc, cmelem )
118 CALL
getntbe( lunltb, ilfxyn, ltline, ierl )
123 900
WRITE(bort_str,
'("BUFRLIB: RDMTBB - STANDARD AND LOCAL'//
124 .
' TABLE B FILES BOTH CONTAIN SAME FXY NUMBER: ",5A)')
125 . cmatch(1:1),
'-', cmatch(2:3),
'-', cmatch(4:6)
subroutine rdmtbb(LUNSTB, LUNLTB, MXMTBB, IMT, IMTV, IOGCE, ILTV, NMTBB, IMFXYN, CMSCL, CMSREF, CMBW, CMUNIT, CMMNEM, CMDSC, CMELEM)
THIS SUBROUTINE READS MASTER TABLE B INFORMATION FROM TWO SEPARATE (I.E.
subroutine gettbh(LUNS, LUNL, TAB, IMT, IMTV, IOGCE, ILTV)
THIS SUBROUTINE READS AND PARSES THE HEADER LINES FROM TWO SEPARATE (I.E.
character *(*) function adn30(IDN, L30)
This function converts a descriptor from its bit-wise (integer) representation to its 5 or 6 characte...
subroutine wrdlen
This subroutine figures out some important information about the local machine on which the BUFRLIB s...
subroutine sntbbe(IFXYN, LINE, MXMTBB, NMTBB, IMFXYN, CMSCL, CMSREF, CMBW, CMUNIT, CMMNEM, CMDSC, CMELEM)
THIS SUBROUTINE PARSES AN ENTRY THAT WAS PREVIOUSLY READ FROM AN ASCII MASTER TABLE B FILE AND THEN S...
subroutine bort(STR)
This subroutine calls subroutine errwrt() to log an error message, then calls subroutine bort_exit() ...
subroutine getntbe(LUNT, IFXYN, LINE, IRET)
This subroutine gets the first line of the next entry in the specified ASCII master table B...