NCEPLIBS-bufr 11.7.1
ufbpos.f File Reference

Jump forwards or backwards to a specified data subset within a BUFR file. More...

Go to the source code of this file.

Functions/Subroutines

subroutine ufbpos (LUNIT, IREC, ISUB, SUBSET, JDATE)
 This subroutine repositions the file pointer to the beginning of a specified data subset within a specified message of a BUFR file, then reads that data subset into internal arrays so that it can be further processed via subsequent calls to any of the values-reading subroutines. More...
 

Detailed Description

Jump forwards or backwards to a specified data subset within a BUFR file.

Definition in file ufbpos.f.

Function/Subroutine Documentation

◆ ufbpos()

subroutine ufbpos (   LUNIT,
  IREC,
  ISUB,
character*8  SUBSET,
  JDATE 
)

This subroutine repositions the file pointer to the beginning of a specified data subset within a specified message of a BUFR file, then reads that data subset into internal arrays so that it can be further processed via subsequent calls to any of the values-reading subroutines.

The specified data subset may be before or after the current location of the file pointer within the BUFR file.

Author
J. Woollen
Date
1995-11-22
Parameters
[in]LUNIT– integer: Fortran logical unit number for BUFR file
[in]IREC– integer: Ordinal number of message to be read, counting from the beginning of the BUFR file, but not counting any messages which contain DX BUFR tables information
[in]ISUB– integer: Ordinal number of data subset to be read from (IREC)th message, counting from the beginning of the message
[out]SUBSET– character*8: Table A mnemonic for type of BUFR message that was read (see DX BUFR Tables for further information about Table A mnemonics)
[out]JDATE– integer: Date-time stored within Section 1 of BUFR message that was read, in format of either YYMMDDHH or YYYYMMDDHH, depending on the most recent call to subroutine datelen()
Remarks
  • Logical unit LUNIT should have already been opened for input operations via a previous call to subroutine openbf().
  • The value specified for IREC should not include any messages which contain DX BUFR tables information.

Program history log:

Date Programmer Comments
1995-11-22 J. Woollen Original author
2005-03-04 D. Keyser Added documentation
2006-04-14 J. Ator Remove unnecessary MOIN initialization
2009-03-23 J. Ator Modified to handle embedded BUFR table (dictionary) messages
2014-12-10 J. Ator Use modules instead of COMMON blocks
2021-10-08 J. Ator Use readsb() to read all subsets from IREC(th) message

Definition at line 50 of file ufbpos.f.

References bort(), cewind(), readmg(), readsb(), status(), and ufbcnt().