24 integer function ibfms ( r8val )
result ( iret )
26 use modv_vars,
only: bmiss
30 real*8,
intent(in) :: r8val
32 if ( r8val == bmiss )
then
55 recursive integer function icbfms ( str, lstr )
result ( iret )
57 use modv_vars,
only: im8b
61 character*(*),
intent(in) :: str
64 character*16,
parameter :: zm_be =
'202020E076483742'
65 character*16,
parameter :: zm_le =
'42374876E8000000'
69 integer,
intent(in) :: lstr
70 integer my_lstr, numchr, ii,
iupm
73 equivalence(strz,rl8z)
80 call x84 ( lstr, my_lstr, 1 )
81 iret =
icbfms( str, my_lstr )
89 numchr = min(lstr,len(str))
96 if ( numchr>=4 .and. numchr<=8 )
then
98 strz(ii:ii) = str(ii:ii)
100 write (zz,
'(z16.16)') transfer(rl8z,il8z)
102 if ( zz(ii:16)==zm_be(ii:16) .or. zz(ii:16)==zm_le(ii:16) )
then
112 strz(1:1) = str(ii:ii)
113 if (
iupm(strz(1:1),8)/=255 )
return
137 use modv_vars,
only: bmiss
173 use modv_vars,
only: bmiss
177 real*8,
intent(in) :: xmiss
recursive integer function iupm(cbay, nbits)
Decode an integer value from within a specified number of bits of a character string,...
real *8 function getbmiss()
Get the current placeholder value which represents "missing" data when reading from or writing to BUF...
recursive integer function icbfms(str, lstr)
Check whether a character string returned from a previous call to subroutine readlc() was encoded as ...
subroutine setbmiss(xmiss)
Specify a customized value to represent "missing" data when reading from or writing to BUFR files.
integer function ibfms(r8val)
Check whether a real*8 data value returned from a previous call to any of the NCEPLIBS-bufr values-re...
subroutine x84(iin8, iout4, nval)
Encode one or more 8-byte integer values as 4-byte integer values.