NCEPLIBS-bufr 11.7.1
closmg.f File Reference

Close and write the current message to a BUFR file that was previously opened for writing. More...

Go to the source code of this file.

Functions/Subroutines

subroutine closmg (LUNIN)
 This subroutine closes the BUFR message that is currently open for writing within internal arrays associated with logical unit ABS(LUNIN), and it then writes the message to that logical unit. More...
 

Detailed Description

Close and write the current message to a BUFR file that was previously opened for writing.

Definition in file closmg.f.

Function/Subroutine Documentation

◆ closmg()

subroutine closmg (   LUNIN)

This subroutine closes the BUFR message that is currently open for writing within internal arrays associated with logical unit ABS(LUNIN), and it then writes the message to that logical unit.

Authors
J. Woollen
D. Keyser
Date
1994-01-06
Parameters
[in]LUNIN– integer: Absolute value is Fortran logical unit number for BUFR file

Logical unit ABS(LUNIN) should have already been opened for output operations via a previous call to subroutine openbf().

If LUNIN < 0, then any message containing zero data subsets will not be written to logical unit ABS(LUNIN) for the remainder of the life of the application program. This includes suppressing the writing of any dummy messages containing dump center and initiation times that normally appear in the first 2 messages of NCEP dump files.

Program history log:

Date Programmer Comments
1994-01-06 J. Woollen Original author
1998-07-08 J. Woollen Replaced call to Cray library routine "ABORT" with call to new internal 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)
2000-09-19 J. Woollen Maximum message length increased from 10,000 to 20,000 bytes
2003-05-19 J. Woollen Corrected a bug which prevented the dump center and initiation time messages from being written out
2003-11-04 J. Ator Added documentation
2003-11-04 S. Bender Added remarks and routine interdependencies
2003-11-04 D. Keyser Unified/portable for WRF; added history documentation; 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-05-26 D. Keyser Add LUNIN < 0 option to suppress writing of all future zero-subset messsages to ABS(LUNIN)
2014-12-10 J. Ator Use modules instead of COMMON blocks

Definition at line 40 of file closmg.f.

References bort(), moda_bitbuf::mbay, moda_bitbuf::mbyt, msgwrt(), status(), wrcmps(), and wtstat().

Referenced by closbf(), makestab(), openmb(), openmg(), and writsa().