NCEPLIBS-bufr
11.5.0
|
Go to the source code of this file.
Functions/Subroutines | |
subroutine | rdbfdx (LUNIT, LUN) |
BEGINNING AT THE CURRENT FILE POINTER LOCATION WITHIN LUNIT, THIS SUBROUTINE READS A COMPLETE DICTIONARY TABLE (I.E. More... | |
Definition in file rdbfdx.f.
subroutine rdbfdx | ( | LUNIT, | |
LUN | |||
) |
BEGINNING AT THE CURRENT FILE POINTER LOCATION WITHIN LUNIT, THIS SUBROUTINE READS A COMPLETE DICTIONARY TABLE (I.E.
ONE OR MORE ADJACENT BUFR DX (DICTIONARY) MESSAGES) INTO INTERNAL MEMORY ARRAYS IN MODULE TABABD.
PROGRAM HISTORY LOG: 1994-01-06 J. WOOLLEN – ORIGINAL AUTHOR 1995-06-28 J. WOOLLEN – INCREASED THE SIZE OF INTERNAL BUFR TABLE ARRAYS IN ORDER TO HANDLE BIGGER FILES 1996-12-17 J. WOOLLEN – FIXED FOR SOME MVS COMPILER'S TREATMENT OF INTERNAL READS (INCREASES PORTABILITY) 1998-07-08 J. WOOLLEN – REPLACED CALL TO CRAY LIBRARY ROUTINE "ABORT" WITH CALL TO NEW INTERNAL BUFRLIB ROUTINE "BORT"; CORRECTED SOME MINOR ERRORS 1999-11-18 J. WOOLLEN – THE NUMBER OF BUFR FILES WHICH CAN BE OPENED AT ONE TIME INCREASED FROM 10 TO 32 (NECESSARY IN ORDER TO PROCESS MULTIPLE BUFR FILES UNDER THE MPI) 2000-09-19 J. WOOLLEN – MAXIMUM MESSAGE LENGTH INCREASED FROM 10,000 TO 20,000 BYTES 2003-11-04 S. BENDER – ADDED REMARKS/BUFRLIB ROUTINE INTERDEPENDENCIES 2003-11-04 D. KEYSER – UNIFIED/PORTABLE FOR WRF; ADDED DOCUMENTATION (INCLUDING HISTORY); OUTPUTS MORE COMPLETE DIAGNOSTIC INFO WHEN ROUTINE TERMINATES ABNORMALLY 2004-08-09 J. ATOR – MAXIMUM MESSAGE LENGTH INCREASED FROM 20,000 TO 50,000 BYTES 2005-11-29 J. ATOR – USE GETLENS, IUPBS01 AND RDMSGW 2009-03-23 J. ATOR – USE STNTBIA; MODIFY LOGIC TO HANDLE BUFR TABLE MESSAGES ENCOUNTERED ANYWHERE IN THE FILE (AND NOT JUST AT THE BEGINNING!) 2012-09-15 J. WOOLLEN – MODIFIED FOR C/I/O/BUFR INTERFACE; REPLACE FORTRAN BACKSPACE WITH C BACKBUFR 2014-12-10 J. ATOR – USE MODULES INSTEAD OF COMMON BLOCKS
USAGE: CALL RDBFDX (LUNIT, LUN) INPUT ARGUMENT LIST: LUNIT - INTEGER: FORTRAN LOGICAL UNIT NUMBER FOR BUFR FILE LUN - INTEGER: I/O STREAM INDEX INTO INTERNAL MEMORY ARRAYS (ASSOCIATED WITH FILE CONNECTED TO LOGICAL UNIT LUNIT)
INPUT FILES: UNIT "LUNIT" - BUFR FILE
REMARKS:
THIS SUBROUTINE PERFORMS A FUNCTION SIMILAR TO BUFR ARCHIVE LIBRARY SUBROUTINE RDUSDX, EXCEPT THAT RDUSDX READS FROM A FILE CONTAINING A USER-SUPPLIED BUFR DICTIONARY TABLE IN CHARACTER FORMAT. SEE THE DOCBLOCK IN RDUSDX FOR A DESCRIPTION OF THE ARRAYS THAT ARE FILLED IN MODULE TABABD.
THIS SUBROUTINE PERFORMS A FUNCTION SIMILAR TO BUFR ARCHIVE LIBRARY SUBROUTINE CPDXMM, EXCEPT THAT CPDXMM WRITES TO THE INTERNAL MEMORY ARRAYS IN MODULE MSGMEM, FOR USE WITH A FILE OF BUFR MESSAGES THAT IS BEING READ AND STORED INTO INTERNAL MEMORY BY BUFR ARCHIVE LIBRARY SUBROUTINE UFBMEM.
THIS ROUTINE CALLS: BORT DXINIT ERRWRT IDXMSG IUPBS3 MAKESTAB RDMSGW STBFDX BACKBUFR THIS ROUTINE IS CALLED BY: POSAPX READDX READMG Normally not called by any application programs.
Definition at line 70 of file rdbfdx.f.
References backbufr(), bort(), dxinit(), errwrt(), idxmsg(), iupbs3(), makestab(), rdmsgw(), and stbfdx().