45 SUBROUTINE ufbrms(IMSG,ISUB,USR,I1,I2,IRET,STR)
53 CHARACTER*128 BORT_STR,ERRSTR
63 CALL errwrt(
'+++++++++++++++++++++WARNING+++++++++++++++++++++++')
64 errstr = .LE.
'BUFRLIB: UFBRMS - 4th ARG. (INPUT) IS 0, ' //
65 .
'SO RETURN WITH 6th ARG. (IRET) = 0; 7th ARG. (STR) ='
68 CALL errwrt(
'+++++++++++++++++++++WARNING+++++++++++++++++++++++')
74 CALL errwrt(
'+++++++++++++++++++++WARNING+++++++++++++++++++++++')
75 errstr = .LE.
'BUFRLIB: UFBRMS - 5th ARG. (INPUT) IS 0, ' //
76 .
'SO RETURN WITH 6th ARG. (IRET) = 0; 7th ARG. (STR) ='
79 CALL errwrt(
'+++++++++++++++++++++WARNING+++++++++++++++++++++++')
88 CALL rdmemm(imsg,subset,jdate,iret)
89 IF(iret.LT.0)
GOTO 900
91 IF(iret.NE.0)
GOTO 901
100 WRITE(bort_str,
'("BUFRLIB: UFBRMS - REQUESTED MEMORY MESSAGE '//
101 .
'NUMBER TO READ IN (",I5,") EXCEEDS THE NUMBER OF MESSAGES IN '//
102 .
'MEMORY (",I5,")")') imsg,
msgp(0)
104 WRITE(bort_str,
'("BUFRLIB: UFBRMS - REQUESTED MEMORY MESSAGE '//
105 .
'NUMBER TO READ IN IS ZERO - THIS IS NOT VALID")')
109 WRITE(bort_str,
'("BUFRLIB: UFBRMS - REQ. SUBSET NUMBER TO READ '//
110 .
'IN (",I3,") EXCEEDS THE NUMBER OF SUBSETS (",I3,") IN THE '//
111 .
'REQ. MEMORY MESSAGE (",I5,")")') isub,msub(lun),imsg
subroutine bort(STR)
This subroutine calls subroutine errwrt() to log an error message, then calls subroutine bort_exit() ...
subroutine errwrt(STR)
This subroutine allows the user to specify a custom location for the logging of error and diagnostic ...
This module contains array and variable declarations used to store the contents of one or more BUFR f...
integer munit
Fortran logical unit number for use in accessing contents of BUFR files within internal memory.
integer, dimension(:), allocatable msgp
Pointers to the beginning of each message within msgs (up to a maximum of MAXMSG, and where array ele...
subroutine rdmemm(IMSG, SUBSET, JDATE, IRET)
This subroutine reads a specified BUFR message from internal arrays in memory, so that it is now in s...
subroutine rdmems(ISUB, IRET)
This subroutine reads a specified data subset from the BUFR message that was most recently read via a...
subroutine status(LUNIT, LUN, IL, IM)
This subroutine checks whether a specified Fortran logical unit number is currently connected to the ...
subroutine ufbint(LUNIN, USR, I1, I2, IRET, STR)
This subroutine reads or writes one or more data values from or to the BUFR data subset that is curre...
subroutine ufbrms(IMSG, ISUB, USR, I1, I2, IRET, STR)
This subroutine provides a handy way to combine the functionality of subroutines rdmemm(),...