NCEPLIBS-bufr
12.1.0
|
Encode character strings and integer values. More...
Go to the source code of this file.
Functions/Subroutines | |
recursive subroutine | ipkm (cbay, nbyt, n) |
Encode an integer value within a specified number of bytes of a character string, up to a maximum of 4 bytes. More... | |
integer *8 function | ipks (val, node) |
Pack a real*8 value into an integer by applying the proper scale and reference values. More... | |
subroutine | pkb (nval, nbits, ibay, ibit) |
Encode an integer value within a specified number of bits of an integer array, starting at the bit immediately after a specified bit within the array. More... | |
subroutine | pkb8 (nval, nbits, ibay, ibit) |
Encode an 8-byte integer value within a specified number of bits of an integer array, starting at the bit immediately after a specified bit within the array. More... | |
subroutine | pkc (chr, nchr, ibay, ibit) |
Encode a character string within a specified number of bytes of an integer array, starting at the bit immediately after a specified bit within the array. More... | |
recursive subroutine ipkm | ( | character*(*), intent(out) | cbay, |
integer, intent(in) | nbyt, | ||
integer, intent(in) | n | ||
) |
Encode an integer value within a specified number of bytes of a character string, up to a maximum of 4 bytes.
This subroutine is the logical inverse of subroutine iupm().
n | - Value to be encoded |
nbyt | - Number of bytes of cbay (up to a maximum of 4) within which to encode n |
cbay | - String of length nbyt bytes containing encoded integer n |
Definition at line 193 of file ciencode.F90.
References bort(), irev(), and x84().
Referenced by bfrini(), pktdd(), readlc(), wrcmps(), and wrtree().
integer*8 function ipks | ( | real*8, intent(in) | val, |
integer, intent(in) | node | ||
) |
Pack a real*8 value into an integer by applying the proper scale and reference values.
Normally the scale and reference values are obtained from index node of the internal jump/link table arrays isc(*) and irf(*); however, the reference value in irf(*) will be overridden if a 2-03 operator is in effect for this node.
val | - User value |
node | - Index into internal jump/link tables |
Definition at line 251 of file ciencode.F90.
References moda_tables::ibt, moda_nrv203::ienrv, moda_nrv203::inodnrv, moda_tables::irf, moda_tables::isc, moda_nrv203::isnrv, moda_nrv203::nnrv, moda_nrv203::nrv, moda_tables::tag, and moda_nrv203::tagnrv.
subroutine pkb | ( | integer, intent(in) | nval, |
integer, intent(in) | nbits, | ||
integer, dimension(*), intent(out) | ibay, | ||
integer, intent(inout) | ibit | ||
) |
Encode an integer value within a specified number of bits of an integer array, starting at the bit immediately after a specified bit within the array.
nval | - Value to be encoded |
nbits | - Number of bits of ibay within which to encode nval |
ibay | - Array containing encoded nval |
ibit | - Bit pointer within ibay
|
Definition at line 139 of file ciencode.F90.
References bort().
Referenced by atrcpt(), cmsgini(), cnved4(), cpyupd(), dxmini(), msgini(), msgupd(), msgwrt(), mvb(), pad(), padmsg(), pkb8(), pkbs1(), stndrd(), wrcmps(), and wrdxtb().
subroutine pkb8 | ( | integer*8, intent(in) | nval, |
integer, intent(in) | nbits, | ||
integer, dimension(*), intent(out) | ibay, | ||
integer, intent(inout) | ibit | ||
) |
Encode an 8-byte integer value within a specified number of bits of an integer array, starting at the bit immediately after a specified bit within the array.
This subroutine will not work properly if nbits is greater than 64.
This subroutine is the logical inverse of subroutine up8().
nval | - Value to be encoded |
nbits | - Number of bits of ibay (up to a maximum of 64) within which to encode nval |
ibay | - Array containing encoded nval |
ibit | - Bit pointer within ibay
|
Definition at line 96 of file ciencode.F90.
subroutine pkc | ( | character*(*), intent(in) | chr, |
integer, intent(in) | nchr, | ||
integer, dimension(*), intent(out) | ibay, | ||
integer, intent(inout) | ibit | ||
) |
Encode a character string within a specified number of bytes of an integer array, starting at the bit immediately after a specified bit within the array.
chr | - String to be encoded |
nchr | - Number of bytes of ibay within which to encode chr (i.e. the number of characters in chr) |
ibay | - Array containing encoded chr |
ibit | - Bit pointer within ibay
|
Definition at line 24 of file ciencode.F90.
Referenced by cmsgini(), dxmini(), msgini(), msgwrt(), stndrd(), wrcmps(), wrdxtb(), writlc(), and wrtree().