NCEPLIBS-bufr 11.7.1
ufbget.f File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine ufbget (LUNIT, TAB, I1, IRET, STR)
 THIS SUBROUTINE UNPACKS AND RETURNS THE VALUES FOR ONE- DIMENSIONAL DESCRIPTORS IN THE INPUT STRING WITHOUT ADVANCING THE SUBSET POINTER. More...
 

Detailed Description

Author
WOOLLEN
Date
1994-01-06

Definition in file ufbget.f.

Function/Subroutine Documentation

◆ ufbget()

subroutine ufbget (   LUNIT,
real*8, dimension(i1)  TAB,
  I1,
  IRET,
character*(*)  STR 
)

THIS SUBROUTINE UNPACKS AND RETURNS THE VALUES FOR ONE- DIMENSIONAL DESCRIPTORS IN THE INPUT STRING WITHOUT ADVANCING THE SUBSET POINTER.

PROGRAM HISTORY LOG: 1994-01-06 J. WOOLLEN – ORIGINAL AUTHOR 1998-07-08 J. WOOLLEN – REPLACED CALL TO CRAY LIBRARY ROUTINE "ABORT" WITH CALL TO NEW INTERNAL BUFRLIB ROUTINE "BORT"; IMPROVED MACHINE PORTABILITY 1998-10-27 J. WOOLLEN – MODIFIED TO CORRECT PROBLEMS CAUSED BY IN- LINING CODE WITH FPP DIRECTIVES 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 2002-05-14 J. WOOLLEN – REMOVED OLD CRAY COMPILER DIRECTIVES 2003-11-04 S. BENDER – ADDED REMARKS/BUFRLIB ROUTINE INTERDEPENDENCIES 2003-11-04 D. KEYSER – MAXJL (MAXIMUM NUMBER OF JUMP/LINK ENTRIES) INCREASED FROM 15000 TO 16000 (WAS IN VERIFICATION VERSION); 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 2012-03-02 J. ATOR – USE FUNCTION UPS 2014-12-10 J. ATOR – USE MODULES INSTEAD OF COMMON BLOCKS 2022-05-06 J. WOOLLEN – REPLACE UPBB WITH UPB8 FOR 8BYTE INTEGERS

USAGE: CALL UFBGET (LUNIT, TAB, I1, IRET, STR) INPUT ARGUMENT LIST: LUNIT - INTEGER: FORTRAN LOGICAL UNIT NUMBER FOR BUFR FILE I1 - INTEGER: LENGTH OF TAB STR - CHARACTER*(*): STRING OF BLANK-SEPARATED TABLE B MNEMONICS IN ONE-TO-ONE CORRESPONDENCE WITH THE WORDS IN THE ARRAY TAB

  • THERE ARE THREE "GENERIC" MNEMONICS NOT RELATED TO TABLE B, THESE RETURN THE FOLLOWING INFORMATION IN CORRESPONDING TAB LOCATION: 'NUL' WHICH ALWAYS RETURNS BMISS ("MISSING") 'IREC' WHICH ALWAYS RETURNS THE CURRENT BUFR MESSAGE (RECORD) NUMBER IN WHICH THIS SUBSET RESIDES 'ISUB' WHICH ALWAYS RETURNS THE CURRENT SUBSET NUMBER OF THIS SUBSET WITHIN THE BUFR MESSAGE (RECORD) NUMBER 'IREC'

OUTPUT ARGUMENT LIST: TAB - REAL*8: (I1) STARTING ADDRESS OF DATA VALUES READ FROM DATA SUBSET IRET - INTEGER: RETURN CODE: 0 = normal return -1 = there are no more subsets in the BUFR message

REMARKS: THIS ROUTINE CALLS: BORT INVWIN STATUS STRING UPB8 UPC UPS USRTPL THIS ROUTINE IS CALLED BY: None Normally called only by application programs.

Definition at line 70 of file ufbget.f.

References modv_bmiss::bmiss, bort(), moda_tables::ibt, invwin(), moda_tables::itp, moda_bitbuf::mbay, moda_bitbuf::mbyt, status(), string(), upb8(), upc(), ups(), and usrtpl().