NCEPLIBS-bufr  11.5.0
 All Data Structures Files Functions Variables Pages
rdmemm.f File Reference

Read a specified BUFR message from internal arrays. More...

Go to the source code of this file.

Functions/Subroutines

subroutine rdmemm (IMSG, SUBSET, JDATE, IRET)
 This subroutine reads a specified BUFR message from internal arrays in memory, so that it is now in scope for processing via a subsequent call to subroutine rdmems(). More...
 

Detailed Description

Read a specified BUFR message from internal arrays.

Definition in file rdmemm.f.

Function/Subroutine Documentation

subroutine rdmemm (   IMSG,
character*8  SUBSET,
  JDATE,
  IRET 
)

This subroutine reads a specified BUFR message from internal arrays in memory, so that it is now in scope for processing via a subsequent call to subroutine rdmems().

BUFR messages should already be stored within internal arrays in memory via one or more previous calls to subroutine ufbmem().

Author
J. Woollen
Date
1994-01-06
Parameters
[in]IMSG- integer: Number of BUFR message to be read into scope for further processing, counting from the beginning of the internal arrays in memory
[out]SUBSET- character*8: Table A mnemonic for type of BUFR message that was read into scope (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 into scope, in format of either YYMMDDHH or YYYYMMDDHH, depending on the most recent call to subroutine datelen()
[out]IRET- integer: return code
  • 0 = requested message was successfully read into scope
  • -1 = requested message number could not be found in internal arrays

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"; modified to make Y2K compliant
  • 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); increased MAXMEM from 4 Mb to 8 Mb
  • 2000-09-19 J. Woollen – Removed message decoding logic that had been replicated in this and other read routines and consolidated it into a new routine cktaba(); maximum message length increased from 10,000 to 20,000 bytes
  • 2001-08-15 D. Keyser – Increased MAXMEM from 8 Mb to 16 Mb
  • 2003-11-04 S. Bender – Added remarks and routine interdependencies
  • 2003-11-04 D. Keyser – Unified/portable for WRF; added history documentation
  • 2004-08-09 J. Ator – Maximum message length increased from 20,000 to 50,000 bytes
  • 2004-11-15 D. Keyser – Increased MAXMEM from 16 Mb to 50 Mb
  • 2009-03-23 J. Ator – Modified to handle embedded BUFR table (dictionary) messages; use errwrt()
  • 2014-12-10 J. Ator – Use modules instead of COMMON blocks

Definition at line 62 of file rdmemm.f.

References bort(), cktaba(), dxinit(), errwrt(), makestab(), status(), stbfdx(), and wtstat().

Referenced by readmm(), ufbmms(), ufbrms(), and ufbtam().