NCEPLIBS-bufr
11.6.0
|
Finalize a BUFR message for output and write the message to a BUFR file. More...
Go to the source code of this file.
Functions/Subroutines | |
subroutine | msgwrt (LUNIT, MESG, MGBYT) |
This subroutine performs final checks and updates on a BUFR message before writing it to a specified Fortran logical unit. More... | |
Finalize a BUFR message for output and write the message to a BUFR file.
Definition in file msgwrt.f.
subroutine msgwrt | ( | LUNIT, | |
dimension(*) | MESG, | ||
MGBYT | |||
) |
This subroutine performs final checks and updates on a BUFR message before writing it to a specified Fortran logical unit.
These final checks and updates include:
[in] | LUNIT | – integer: Fortran logical unit number for BUFR file |
[in] | MESG | – integer(*): BUFR message |
[in] | MGBYT | – integer: Size (in bytes) of BUFR message |
Program history log:
Date | Programmer | Comments |
---|---|---|
1994-01-06 | J. Woollen | Original author |
1997-07-29 | J. Woollen | Modified to update the current BUFR version written in Section 0 from 2 to 3 |
1998-07-08 | J. Woollen | Replaced call to Cray library routine ABORT with call to new internal routine bort() |
1998-11-24 | J. Woollen | Modified to zero out the padding bytes written at the end of Section 4 |
2000-09-19 | J. Woollen | Maximum message length increased from 10,000 to 20,000 bytes |
2003-11-04 | J. Ator | Don't write to LUNIT if opened by openbf() using IO = 'NUL' |
2003-11-04 | S. Bender | Added remarks and routine interdependencies |
2003-11-04 | D. Keyser | Unified/portable for WRF; added documentation; outputs more complete diagnostic info when routine terminates abnormally |
2005-11-29 | J. Ator | Use getlens(), iupbs01(), padmsg(), pkbs1() and nmwrd(); added logic to call pkbs1() and/or cnved4() when necessary |
2009-03-23 | J. Ator | Use idxmsg() and errwrt(); add call to atrcpt(); allow standardizing even if data is compressed; work on local copy of input message |
2012-09-15 | J. Woollen | Modified for C/I/O/BUFR interface; call new routine blocks() for file blocking and new C routine cwrbufr() to write BUFR message to disk file |
2014-12-10 | J. Ator | Use modules instead of COMMON blocks |
2019-05-09 | J. Ator | Added dimensions for MSGLEN and MSGTXT |
Definition at line 54 of file msgwrt.f.
References atrcpt(), blocks(), bort(), cnved4(), cwrbufr(), errwrt(), getlens(), idxmsg(), iupbs01(), nmwrd(), padmsg(), pkb(), pkbs1(), pkc(), status(), and stndrd().
Referenced by closmg(), copybf(), copymg(), cpymem(), cpyupd(), msgupd(), wrcmps(), and wrdxtb().