Qt 5.9 | Qt Core | <QFloat16>

Qt 5.9.9 Reference Documentation

# <QFloat16>

This documentation was introduced in Qt 5.9.

## Functions

bool | qFuzzyCompare(qfloat16 p1, qfloat16 p2)
bool | qIsFinite(qfloat16 f)
bool | qIsInf(qfloat16 f)
bool | qIsNaN(qfloat16 f)
qint64 | qRound64(qfloat16 value)
int | qRound(qfloat16 value)

This header file provides support for half-precision (16-bit) floating point data with the class `qfloat16`. It is fully compliant with IEEE 754 as a storage type. This implies that any arithmetic operation on a `qfloat16` instance results in the value first being converted to a `float`. This conversion to and from `float` is performed by hardware when possible, but on processors that do not natively support half-precision, the conversion is performed through a sequence of lookup table operations.

`qfloat16` should be treated as if it were a POD (plain old data) type. Consequently, none of the supported operations need any elaboration beyond stating that it supports all arithmetic operators incident to floating point types.

## Function Documentation

### bool qFuzzyCompare(qfloat16 p1, qfloat16 p2)

Compares the floating point value p1 and p2 and returns `true` if they are considered equal, otherwise `false`.

The two numbers are compared in a relative way, where the exactness is stronger the smaller the numbers are.

### bool qIsFinite(qfloat16 f)

Returns true if the `qfloat16` f is a finite number.

See also qIsFinite.

### bool qIsInf(qfloat16 f)

Returns true if the `qfloat16` f is equivalent to infinity.

See also qIsInf.

### bool qIsNaN(qfloat16 f)

Returns true if the `qfloat16` f is not a number (NaN).

See also qIsNaN.

### qint64 qRound64(qfloat16 value)

Rounds value to the nearest 64-bit integer.

See also qRound64.

### int qRound(qfloat16 value)

Rounds value to the nearest integer.

See also qRound.