OpenVDB
12.0.0
|
#include <openvdb/Platform.h>
#include <openvdb/version.h>
#include <iostream>
#include <stdint.h>
#include <stdio.h>
#include <limits>
Go to the source code of this file.
Classes | |
union | imath_half_uif |
a type for both C-only programs and C++ to use the same utilities More... | |
class | half |
class | numeric_limits< openvdb::math::internal::half > |
Namespaces | |
openvdb | |
openvdb::v12_0 | |
openvdb::v12_0::math | |
openvdb::v12_0::math::internal | |
std | |
Macros | |
#define | IMATH_HALF_NO_LOOKUP_TABLE |
#define | VDBB_HALF_DENORM_MIN 5.96046448e-08 |
Smallest positive denormalized half. More... | |
#define | VDB_HALF_NRM_MIN 6.10351562e-05 |
Smallest positive normalized half. More... | |
#define | VDB_HALF_MIN 6.10351562e-05f |
Smallest positive normalized half. More... | |
#define | VDB_HALF_MAX 65504.0 |
Largest positive half. More... | |
#define | VDB_HALF_EPSILON 0.00097656 |
Smallest positive e for which half(1.0 + e) != half(1.0) More... | |
#define | VDB_HALF_MANT_DIG 11 |
Number of digits in mantissa (significand + hidden leading 1) More... | |
#define | VDB_HALF_DIG 3 |
#define | VDB_HALF_DECIMAL_DIG 5 |
#define | VDB_HALF_RADIX 2 |
Base of the exponent. More... | |
#define | VDBB_HALF_DENORM_MIN_EXP -13 |
#define | VDB_HALF_MAX_EXP 16 |
#define | VDBB_HALF_DENORM_MIN_10_EXP -4 |
#define | VDB_HALF_MAX_10_EXP 4 |
Typedefs | |
typedef union openvdb::v12_0::math::internal::imath_half_uif | imath_half_uif_t |
a type for both C-only programs and C++ to use the same utilities More... | |
typedef uint16_t | imath_half_bits_t |
a type for both C-only programs and C++ to use the same utilities More... | |
typedef imath_half_bits_t | half |
if we're in a C-only context, alias the half bits type to half More... | |
Functions | |
static float | imath_half_to_float (imath_half_bits_t h) |
static imath_half_bits_t | imath_float_to_half (float f) |
OPENVDB_API void | printBits (std::ostream &os, half h) |
OPENVDB_API void | printBits (std::ostream &os, float f) |
OPENVDB_API void | printBits (char c[19], half h) |
OPENVDB_API void | printBits (char c[35], float f) |
OPENVDB_API std::ostream & | operator<< (std::ostream &os, half h) |
Output h to os, formatted as a float. More... | |
OPENVDB_API std::istream & | operator>> (std::istream &is, half &h) |
Input h from is. More... | |
#define IMATH_HALF_NO_LOOKUP_TABLE |
#define VDB_HALF_DECIMAL_DIG 5 |
Number of base-10 digits that are necessary to uniquely represent all distinct values:
ceil(HALF_MANT_DIG * log10(2) + 1) => 4.31... -> 5
#define VDB_HALF_DIG 3 |
Number of base 10 digits that can be represented without change:
floor( (HALF_MANT_DIG - 1) * log10(2) ) => 3.01... -> 3
#define VDB_HALF_EPSILON 0.00097656 |
Smallest positive e for which half(1.0 + e) != half(1.0)
#define VDB_HALF_MANT_DIG 11 |
Number of digits in mantissa (significand + hidden leading 1)
#define VDB_HALF_MAX 65504.0 |
Largest positive half.
#define VDB_HALF_MAX_10_EXP 4 |
Maximum positive integer such that 10 raised to that power is a normalized half
#define VDB_HALF_MAX_EXP 16 |
Maximum positive integer such that HALF_RADIX
raised to the power of one less than that integer is a normalized half
#define VDB_HALF_MIN 6.10351562e-05f |
Smallest positive normalized half.
#define VDB_HALF_NRM_MIN 6.10351562e-05 |
Smallest positive normalized half.
#define VDB_HALF_RADIX 2 |
Base of the exponent.
#define VDBB_HALF_DENORM_MIN 5.96046448e-08 |
Smallest positive denormalized half.
#define VDBB_HALF_DENORM_MIN_10_EXP -4 |
Minimum positive integer such that 10 raised to that power is a normalized half
#define VDBB_HALF_DENORM_MIN_EXP -13 |
Minimum negative integer such that HALF_RADIX
raised to the power of one less than that integer is a normalized half