61 SUBROUTINE rdmtbb ( LUNSTB, LUNLTB, MXMTBB,
62 . imt, imtv, iogce, iltv,
63 . nmtbb, imfxyn, cmscl, cmsref, cmbw,
64 . cmunit, cmmnem, cmdsc, cmelem )
66 character*200 stline, ltline
67 character*128 bort_str
68 character*6 cmatch,
adn30
70 character cmelem(120,*)
71 character cmunit(24,*)
72 character cmsref(12,*)
74 character cmscl(4,*), cmbw(4,*)
88 CALL
gettbh( lunstb, lunltb,
'B', imt, imtv, iogce, iltv )
94 CALL
getntbe( lunstb, isfxyn, stline, iers )
95 CALL
getntbe( lunltb, ilfxyn, ltline, ierl )
96 DO WHILE ( ( iers .EQ. 0 ) .OR. ( ierl .EQ. 0 ) )
97 IF ( ( iers .EQ. 0 ) .AND. ( ierl .EQ. 0 ) )
THEN
98 IF ( isfxyn .EQ. ilfxyn )
THEN
99 cmatch =
adn30( isfxyn, 6 )
101 ELSE IF ( isfxyn .LT. ilfxyn )
THEN
102 CALL
sntbbe( isfxyn, stline, mxmtbb,
103 . nmtbb, imfxyn, cmscl, cmsref, cmbw,
104 . cmunit, cmmnem, cmdsc, cmelem )
105 CALL
getntbe( lunstb, isfxyn, stline, iers )
107 CALL
sntbbe( ilfxyn, ltline, mxmtbb,
108 . nmtbb, imfxyn, cmscl, cmsref, cmbw,
109 . cmunit, cmmnem, cmdsc, cmelem )
110 CALL
getntbe( lunltb, ilfxyn, ltline, ierl )
112 ELSE IF ( iers .EQ. 0 )
THEN
113 CALL
sntbbe( isfxyn, stline, mxmtbb,
114 . nmtbb, imfxyn, cmscl, cmsref, cmbw,
115 . cmunit, cmmnem, cmdsc, cmelem )
116 CALL
getntbe( lunstb, isfxyn, stline, iers )
117 ELSE IF ( ierl .EQ. 0 )
THEN
118 CALL
sntbbe( ilfxyn, ltline, mxmtbb,
119 . nmtbb, imfxyn, cmscl, cmsref, cmbw,
120 . cmunit, cmmnem, cmdsc, cmelem )
121 CALL
getntbe( lunltb, ilfxyn, ltline, ierl )
126 900
WRITE(bort_str,
'("BUFRLIB: RDMTBB - STANDARD AND LOCAL'//
127 .
' TABLE B FILES BOTH CONTAIN SAME FXY NUMBER: ",5A)')
128 . 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 ASCII files (one standard and one ...
subroutine gettbh(LUNS, LUNL, TAB, IMT, IMTV, IOGCE, ILTV)
This subroutine reads the header lines from two separate ASCII files (one standard and one local) con...
character *(*) function adn30(IDN, L30)
This function converts an FXY value 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 stores an entry that was previously read from an ASCII master Table B file into a set...
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 reads the first line of the next entry from the specified ASCII master table B...