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
72 equivalence(strz,rl8z)
79 call x84 ( lstr, my_lstr, 1 )
80 iret =
icbfms( str, my_lstr )
88 numchr = min(lstr,len(str))
95 if ( numchr>=4 .and. numchr<=8 )
then
97 strz(ii:ii) = str(ii:ii)
99 write (zz,
'(z16.16)') rl8z
101 if ( zz(ii:16)==zm_be(ii:16) .or. zz(ii:16)==zm_le(ii:16) )
then
111 strz(1:1) = str(ii:ii)
112 if (
iupm(strz(1:1),8)/=255 )
return
136 use modv_vars,
only: bmiss
172 use modv_vars,
only: bmiss
176 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.