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)
198900
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')
subroutine bort(STR)
This subroutine calls subroutine errwrt() to log an error message, then calls subroutine bort_exit() ...
subroutine cmsgini(LUN, MESG, SUBSET, IDATE, NSUB, NBYT)
THIS SUBROUTINE INITIALIZES A NEW BUFR MESSAGE FOR OUTPUT IN COMPRESSED BUFR.
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 nemtab(LUN, NEMO, IDN, TAB, IRET)
This subroutine returns information about a descriptor from the internal DX BUFR tables,...
subroutine nemtba(LUN, NEMO, MTYP, MSBT, INOD)
This subroutine searches for a descriptor within Table A of the internal DX BUFR tables.
subroutine pkb(NVAL, NBITS, IBAY, IBIT)
This subroutine encodes an integer value within a specified number of bits of an integer array,...
subroutine pkc(CHR, NCHR, IBAY, IBIT)
This subroutine encodes a character string within a specified number of bits of an integer array,...