NCEPLIBS-bufr 11.7.1
readmm.f
Go to the documentation of this file.
1C> @file
2C> @brief Read a specified BUFR message from internal arrays.
3
4C> This subroutine reads a specified BUFR message from internal
5C> arrays in memory, so that it is now in scope for processing
6C> via a subsequent call to subroutine rdmems().
7C>
8C> <p>BUFR messages should already be stored within internal
9C> arrays in memory via one or more previous calls to
10C> subroutine ufbmem().
11C>
12C> <p>This subroutine is similar to subroutine rdmemm(), except that
13C> it increments the value of IMSG prior to returning to the calling
14C> program, which in turn allows the subroutine to be easily called
15C> within an iterative program loop.
16C>
17C> @author J. Woollen
18C> @date 1999-11-18
19C>
20C> @param[in,out] IMSG -- integer: Message pointer within internal arrays
21C> - On input, IMSG is the number of the BUFR
22C> message to be read into scope for further
23C> processing, counting from the beginning of
24C> the internal arrays in memory
25C> - On output, IMSG is incremented by one from
26C> its input value
27C> @param[out] SUBSET -- character*8: Table A mnemonic for type of BUFR
28C> message that was read into scope
29C> (see [DX BUFR Tables](@ref dfbftab) for
30C> further information about Table A mnemonics)
31C> @param[out] JDATE -- integer: Date-time stored within Section 1 of
32C> BUFR message that was read into scope,
33C> in format of either YYMMDDHH or YYYYMMDDHH,
34C> depending on the most
35C> recent call to subroutine datelen()
36C> @param[out] IRET -- integer: return code
37C> - 0 = requested message was
38C> successfully read into scope
39C> - -1 = requested message number could not
40C> be found in internal arrays
41C>
42C> <b>Program history log:</b>
43C> | Date | Programmer | Comments |
44C> | -----|------------|----------|
45C> | 1999-11-18 | J. Woollen | Original author |
46C> | 2000-09-19 | J. Woollen | Maximum message length increased from 10,000 to 20,000 bytes |
47C> | 2001-08-15 | D. Keyser | Increased MAXMEM from 8 Mb to 16 Mb |
48C> | 2003-11-04 | S. Bender | Added remarks and routine interdependencies |
49C> | 2003-11-04 | D. Keyser | Unified/portable for WRF; added documentation; outputs more complete diagnostic info when routine terminates abnormally |
50C> | 2004-08-09 | J. Ator | Maximum message length increased from 20,000 to 50,000 bytes |
51C> | 2004-11-15 | D. Keyser | Increased MAXMEM from 16 Mb to 50 Mb |
52C> | 2009-03-23 | J. Ator | Rewrote to call rdmemm() |
53C>
54 SUBROUTINE readmm(IMSG,SUBSET,JDATE,IRET)
55
56 CHARACTER*8 SUBSET
57
58C-----------------------------------------------------------------------
59C-----------------------------------------------------------------------
60
61 CALL rdmemm(imsg,subset,jdate,iret)
62
63 imsg = imsg+1
64
65 RETURN
66 END
subroutine rdmemm(IMSG, SUBSET, JDATE, IRET)
This subroutine reads a specified BUFR message from internal arrays in memory, so that it is now in s...
Definition: rdmemm.f:50
subroutine readmm(IMSG, SUBSET, JDATE, IRET)
This subroutine reads a specified BUFR message from internal arrays in memory, so that it is now in s...
Definition: readmm.f:55