Q_IFVALIMASK3
Fixed-point math functions which manipulate the combined integer/fractional data bits
Part of Q_IFRAWMASK(3).
Usage
#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);
Overview
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.
Releases
15 releases since FreeBSD 13.0-RELEASE; the text changed 1 time.