NAME
Q_IFRAWMASK
,
Q_IFVALIMASK
, Q_IFVALFMASK
,
Q_GIFRAW
, Q_GIFABSVAL
,
Q_GIFVAL
, Q_SIFVAL
,
Q_SIFVALS
—
fixed-point math functions which
manipulate the combined integer/fractional data bits
SYNOPSIS
#include
<sys/qmath.h>
ITYPE
Q_IFRAWMASK
(QTYPE
q);
ITYPE
Q_IFVALIMASK
(QTYPE
q);
ITYPE
Q_IFVALFMASK
(QTYPE
q);
ITYPE
Q_GIFRAW
(QTYPE
q);
ITYPE
Q_GIFABSVAL
(QTYPE
q);
ITYPE
Q_GIFVAL
(QTYPE
q);
QTYPE
Q_SIFVAL
(QTYPE
q, ITYPE ifv);
QTYPE
Q_SIFVALS
(QTYPE
q, ITYPE iv,
ITYPE fv);
DESCRIPTION
Q_IFRAWMASK
()
returns a q-specific bit mask for
q's combined integer and fractional data bits.
Q_IFVALIMASK
()
and
Q_IFVALFMASK
()
return q-specific bit masks for the integer and
fractional bits of q's combined integer and fractional
data bits value, i.e., are applicable to the values returned by
Q_GIFABSVAL
() and
Q_GIFVAL
().
Q_GIFRAW
()
returns q's raw masked integer/fractional data
bits.
Q_GIFABSVAL
()
and
Q_GIFVAL
()
return the absolute and real values of q's
integer/fractional data bits respectively.
Q_SIFVAL
()
sets q's combined integer/fractional data bits to the
value ifv, whereas
Q_SIFVALS
()
independently sets q's integer and fractional data
bits to the separate values iv and
fv.
All of those functions operate on the following data types: s8q_t, u8q_t, s16q_t, u16q_t, s32q_t, u32q_t, s64q_t, and u64q_t, which are referred to generically as QTYPE. The ITYPE refers to the stdint(7) integer types.
For more details, see qmath(3).
RETURN VALUES
Q_IFRAWMASK
(),
Q_IFVALIMASK
(),
Q_IFVALFMASK
(),
Q_GIFABSVAL
(), Q_GIFVAL
(),
Q_GIFRAW
(), Q_GIFABSVAL
()
and Q_GIFVAL
() return their respective values as
integers of the same underlying ITYPE as q.
Q_SIFVAL
() and
Q_SIFVALS
() return the value of
q post change.
SEE ALSO
HISTORY
The qmath(3) functions first appeared in FreeBSD 13.0.
AUTHORS
The qmath(3) functions and this manual page were written by Lawrence Stewart <lstewart@FreeBSD.org> and sponsored by Netflix, Inc.