57 SUBROUTINE cmsgini(LUN,MESG,SUBSET,IDATE,NSUB,NBYT)
59 CHARACTER*128 bort_str
74 CALL
nemtba(lun,subset,mtyp,msbt,inod)
75 CALL
nemtab(lun,subset,isub,tab,iret)
76 IF(iret.EQ.0) goto 900
82 mcen = mod(jdate/10**8,100)+1
83 mear = mod(jdate/10**6,100)
84 mmon = mod(jdate/10**4,100)
85 mday = mod(jdate/10**2,100)
86 mour = mod(jdate ,100)
91 IF(mcen.EQ.1) goto 901
93 IF(mear.EQ.0) mcen = mcen-1
94 IF(mear.EQ.0) mear = 100
104 CALL
pkc(bufr , 4 , mesg,mbit)
111 CALL
pkb( 0 , 24 , mesg,mbit)
112 CALL
pkb( 3 , 8 , mesg,mbit)
119 CALL
pkb(len1 , 24 , mesg,mbit)
120 CALL
pkb( 0 , 8 , mesg,mbit)
121 CALL
pkb( 3 , 8 , mesg,mbit)
122 CALL
pkb( 7 , 8 , mesg,mbit)
123 CALL
pkb( 0 , 8 , mesg,mbit)
124 CALL
pkb( 0 , 8 , mesg,mbit)
125 CALL
pkb(mtyp , 8 , mesg,mbit)
126 CALL
pkb(msbt , 8 , mesg,mbit)
127 CALL
pkb( 36 , 8 , mesg,mbit)
128 CALL
pkb( 0 , 8 , mesg,mbit)
129 CALL
pkb(mear , 8 , mesg,mbit)
130 CALL
pkb(mmon , 8 , mesg,mbit)
131 CALL
pkb(mday , 8 , mesg,mbit)
132 CALL
pkb(mour , 8 , mesg,mbit)
133 CALL
pkb(mmin , 8 , mesg,mbit)
134 CALL
pkb(mcen , 8 , mesg,mbit)
141 CALL
pkb(len3 , 24 , mesg,mbit)
142 CALL
pkb( 0 , 8 , mesg,mbit)
143 CALL
pkb(nsub , 16 , mesg,mbit)
144 CALL
pkb( 192 , 8 , mesg,mbit)
145 CALL
pkb(isub , 16 , mesg,mbit)
146 CALL
pkb( 0 , 8 , mesg,mbit)
158 CALL
pkb((nbyt+4) , 24 , mesg,mbit)
159 CALL
pkb( 0 , 8 , mesg,mbit)
192 CALL
pkb(mbyt,24,mesg,mbit)
198 900
WRITE(bort_str,
'("BUFRLIB: CMSGINI - TABLE A MESSAGE TYPE '//
199 .
'MNEMONIC ",A," NOT FOUND IN INTERNAL TABLE D ARRAYS")') subset
202 . (
'BUFRLIB: CMSGINI - BUFR MESSAGE DATE (IDATE) is 0000000000')
function i4dy(IDATE)
This function converts a date-time with a 2-digit year (YYMMDDHH) to a date-time with a 4-digit year ...
subroutine pkc(CHR, NCHR, IBAY, IBIT)
This subroutine encodes a character string within a specified number of bits of an integer array...
subroutine cmsgini(LUN, MESG, SUBSET, IDATE, NSUB, NBYT)
THIS SUBROUTINE INITIALIZES A NEW BUFR MESSAGE FOR OUTPUT IN COMPRESSED BUFR.
subroutine nemtab(LUN, NEMO, IDN, TAB, IRET)
This subroutine returns information about a descriptor from the internal DX BUFR tables, based on the mnemonic associated with that descriptor.
subroutine bort(STR)
This subroutine calls subroutine errwrt() to log an error message, then calls subroutine bort_exit() ...
subroutine pkb(NVAL, NBITS, IBAY, IBIT)
This subroutine encodes an integer value within a specified number of bits of an integer array...
subroutine nemtba(LUN, NEMO, MTYP, MSBT, INOD)
This subroutine searches for a descriptor within Table A of the internal DX BUFR tables.