ftz shaders 0.0.1
HLSL 2021 interface
Loading...
Searching...
No Matches
ftz::ftz32 Struct Reference

Canonical binary32 word wrapper with named HLSL imports and exports. Ordinary aggregate casts/default storage do not normalize or initialize a value; use from_bits(), from_float() or zero(). Treat bits_ as implementation storage. More...

#include <ftz32.h>

Public Member Functions

unsigned int to_bits ()
 Exports the exact stored word without arithmetic.
float to_float ()
 Exports stored bits as an ordinary HLSL float, leaving this value contract.
ftz32 operator+ (ftz32 rhs)
 Uses the selected shader FTZ policy for canonical operands.
ftz32 operator+ (float rhs)
 Imports a raw float operand before the operation.
ftz32 operator- (ftz32 rhs)
 Uses the selected shader FTZ policy for canonical operands.
ftz32 operator- (float rhs)
 Imports a raw float operand before the operation.
ftz32 operator* (ftz32 rhs)
 Uses the selected shader FTZ policy for canonical operands.
ftz32 operator* (float rhs)
 Imports a raw float operand before the operation.
ftz32 operator/ (ftz32 rhs)
 Uses the selected shader FTZ policy for canonical operands.
ftz32 operator/ (float rhs)
 Imports a raw float operand before the operation.
bool operator< (ftz32 rhs)
 Compares canonical values; NaN is unordered and the two zero signs compare equal.
bool operator> (ftz32 rhs)
 Compares canonical values; NaN is unordered and the two zero signs compare equal.
bool operator== (ftz32 rhs)
 Compares canonical values; NaN is unordered and the two zero signs compare equal.
bool operator!= (ftz32 rhs)
 Compares canonical values; NaN is unordered and the two zero signs compare equal.
bool operator<= (ftz32 rhs)
 Compares canonical values; NaN is unordered and the two zero signs compare equal.
bool operator>= (ftz32 rhs)
 Compares canonical values; NaN is unordered and the two zero signs compare equal.
bool operator< (float rhs)
 Imports a raw float operand before the operation.
bool operator> (float rhs)
 Imports a raw float operand before the operation.
bool operator== (float rhs)
 Imports a raw float operand before the operation.
bool operator!= (float rhs)
 Imports a raw float operand before the operation.
bool operator<= (float rhs)
 Imports a raw float operand before the operation.
bool operator>= (float rhs)
 Imports a raw float operand before the operation.

Static Public Member Functions

static ftz32 from_bits (unsigned int bits)
 Imports a binary32 word and replaces a subnormal magnitude with signed zero.
static ftz32 from_float (float value)
 Imports a float through its bits and normalizes subnormals.
static ftz32 unsafe_from_float32 (float value)
 Wraps bits unchanged; the caller must supply normal, signed zero, infinity or NaN.
static ftz32 zero ()
 Returns positive zero.

Detailed Description

Canonical binary32 word wrapper with named HLSL imports and exports. Ordinary aggregate casts/default storage do not normalize or initialize a value; use from_bits(), from_float() or zero(). Treat bits_ as implementation storage.

Definition at line 20 of file ftz32.h.


The documentation for this struct was generated from the following file: