71 SUBROUTINE ufbinx(LUNIT,IMSG,ISUB,USR,I1,I2,IRET,STR)
77 CHARACTER*128 BORT_STR
85 CALL status(lunit,lun,il,im)
93 CALL openbf(lunit,
'INX',lunit)
110 CALL readmg(lunit,subset,jdate,jret)
111 IF(jret.LT.0)
GOTO 901
118 IF(nsub(lun).GT.msub(lun))
GOTO 902
120 CALL upb(nbyt,16,
mbay(1,lun),ibit)
122 nsub(lun) = nsub(lun) + 1
126 IF(jret.NE.0)
GOTO 902
128 CALL ufbint(lunit,usr,i1,i2,iret,str)
149901
WRITE(bort_str,
'("BUFRLIB: UFBINX - HIT END OF FILE BEFORE '//
150 .
'READING REQUESTED MESSAGE NO.",I5," IN BUFR FILE CONNECTED TO'//
151 .
' UNIT",I4)') imsg,lunit
153902
WRITE(bort_str,
'("BUFRLIB: UFBINX - ALL SUBSETS READ BEFORE '//
154 .
'READING REQ. SUBSET NO.",I3," IN REQ. MSG NO.",I5," IN BUFR '//
155 .
'FILE CONNECTED TO UNIT",I4)') isub,imsg,lunit
subroutine bort(STR)
This subroutine calls subroutine errwrt() to log an error message, then calls subroutine bort_exit() ...
subroutine closbf(LUNIT)
This subroutine closes the connection between logical unit LUNIT and the BUFRLIB software.
This module contains array and variable declarations used to store BUFR messages internally for multi...
integer, dimension(:), allocatable mbyt
Length (in bytes) of current BUFR message for each internal I/O stream.
integer, dimension(:,:), allocatable mbay
Current BUFR message for each internal I/O stream.
subroutine openbf(LUNIT, IO, LUNDX)
This subroutine connects a new file to the BUFRLIB software for input or output operations.
subroutine readmg(LUNXX, SUBSET, JDATE, IRET)
This subroutine reads the next BUFR message from logical unit ABS(LUNXX) into internal arrays.
subroutine readsb(LUNIT, IRET)
This subroutine reads the next data subset from a BUFR message into internal arrays.
subroutine rewnbf(LUNIT, ISR)
THIS SUBROUTINE, DEPENDING ON THE VALUE OF ISR, WILL EITHER: 1) STORE THE CURRENT PARAMETERS ASSOCIAT...
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 ufbinx(LUNIT, IMSG, ISUB, USR, I1, I2, IRET, STR)
THIS SUBROUTINE EITHER OPENS A BUFR FILE CONNECTED TO LOGICAL UNIT LUNIT FOR INPUT OPERATIONS (IF IT ...
subroutine upb(NVAL, NBITS, IBAY, IBIT)
THIS SUBROUTINE UNPACKS AND RETURNS A BINARY INTEGER CONTAINED WITHIN NBITS BITS OF IBAY,...