GlobeEngine
std::numeric_limits< half_float::half > Class Template Reference

#include <Half.h>

Inheritance diagram for std::numeric_limits< half_float::half >:

Static Public Member Functions

static HALF_CONSTEXPR half_float::half min () HALF_NOTHROW
 Smallest positive normal value. More...
 
static HALF_CONSTEXPR half_float::half lowest () HALF_NOTHROW
 Smallest finite value. More...
 
static HALF_CONSTEXPR half_float::half max () HALF_NOTHROW
 Largest finite value. More...
 
static HALF_CONSTEXPR half_float::half epsilon () HALF_NOTHROW
 Difference between one and next representable value. More...
 
static HALF_CONSTEXPR half_float::half round_error () HALF_NOTHROW
 Maximum rounding error. More...
 
static HALF_CONSTEXPR half_float::half infinity () HALF_NOTHROW
 Positive infinity. More...
 
static HALF_CONSTEXPR half_float::half quiet_NaN () HALF_NOTHROW
 Quiet NaN. More...
 
static HALF_CONSTEXPR half_float::half signaling_NaN () HALF_NOTHROW
 Signalling NaN. More...
 
static HALF_CONSTEXPR half_float::half denorm_min () HALF_NOTHROW
 Smallest positive subnormal value. More...
 

Static Public Attributes

static HALF_CONSTEXPR_CONST bool is_signed = true
 Supports signed values. More...
 
static HALF_CONSTEXPR_CONST bool is_exact = false
 Is not exact. More...
 
static HALF_CONSTEXPR_CONST bool is_modulo = false
 Doesn't provide modulo arithmetic. More...
 
static HALF_CONSTEXPR_CONST bool is_iec559 = true
 IEEE conformant. More...
 
static HALF_CONSTEXPR_CONST bool has_infinity = true
 Supports infinity. More...
 
static HALF_CONSTEXPR_CONST bool has_quiet_NaN = true
 Supports quiet NaNs. More...
 
static HALF_CONSTEXPR_CONST float_denorm_style has_denorm = denorm_present
 Supports subnormal values. More...
 
static HALF_CONSTEXPR_CONST float_round_style round_style
 
static HALF_CONSTEXPR_CONST int digits = 11
 Significant digits. More...
 
static HALF_CONSTEXPR_CONST int digits10 = 3
 Significant decimal digits. More...
 
static HALF_CONSTEXPR_CONST int max_digits10 = 5
 Required decimal digits to represent all possible values. More...
 
static HALF_CONSTEXPR_CONST int radix = 2
 Number base. More...
 
static HALF_CONSTEXPR_CONST int min_exponent = -13
 One more than smallest exponent. More...
 
static HALF_CONSTEXPR_CONST int min_exponent10 = -4
 Smallest normalized representable power of 10. More...
 
static HALF_CONSTEXPR_CONST int max_exponent = 16
 One more than largest exponent. More...
 
static HALF_CONSTEXPR_CONST int max_exponent10 = 4
 Largest finitely representable power of 10. More...
 

Detailed Description

template<>
class std::numeric_limits< half_float::half >

Numeric limits for half-precision floats. Because of the underlying single-precision implementation of many operations, it inherits some properties from std::numeric_limits<float>.

Member Function Documentation

static HALF_CONSTEXPR half_float::half std::numeric_limits< half_float::half >::denorm_min ( )
inlinestatic

Smallest positive subnormal value.

static HALF_CONSTEXPR half_float::half std::numeric_limits< half_float::half >::epsilon ( )
inlinestatic

Difference between one and next representable value.

static HALF_CONSTEXPR half_float::half std::numeric_limits< half_float::half >::infinity ( )
inlinestatic

Positive infinity.

static HALF_CONSTEXPR half_float::half std::numeric_limits< half_float::half >::lowest ( )
inlinestatic

Smallest finite value.

static HALF_CONSTEXPR half_float::half std::numeric_limits< half_float::half >::max ( )
inlinestatic

Largest finite value.

static HALF_CONSTEXPR half_float::half std::numeric_limits< half_float::half >::min ( )
inlinestatic

Smallest positive normal value.

static HALF_CONSTEXPR half_float::half std::numeric_limits< half_float::half >::quiet_NaN ( )
inlinestatic

Quiet NaN.

static HALF_CONSTEXPR half_float::half std::numeric_limits< half_float::half >::round_error ( )
inlinestatic

Maximum rounding error.

static HALF_CONSTEXPR half_float::half std::numeric_limits< half_float::half >::signaling_NaN ( )
inlinestatic

Signalling NaN.

Member Data Documentation

HALF_CONSTEXPR_CONST int std::numeric_limits< half_float::half >::digits = 11
static

Significant digits.

HALF_CONSTEXPR_CONST int std::numeric_limits< half_float::half >::digits10 = 3
static

Significant decimal digits.

HALF_CONSTEXPR_CONST float_denorm_style std::numeric_limits< half_float::half >::has_denorm = denorm_present
static

Supports subnormal values.

HALF_CONSTEXPR_CONST bool std::numeric_limits< half_float::half >::has_infinity = true
static

Supports infinity.

HALF_CONSTEXPR_CONST bool std::numeric_limits< half_float::half >::has_quiet_NaN = true
static

Supports quiet NaNs.

HALF_CONSTEXPR_CONST bool std::numeric_limits< half_float::half >::is_exact = false
static

Is not exact.

HALF_CONSTEXPR_CONST bool std::numeric_limits< half_float::half >::is_iec559 = true
static

IEEE conformant.

HALF_CONSTEXPR_CONST bool std::numeric_limits< half_float::half >::is_modulo = false
static

Doesn't provide modulo arithmetic.

HALF_CONSTEXPR_CONST bool std::numeric_limits< half_float::half >::is_signed = true
static

Supports signed values.

HALF_CONSTEXPR_CONST int std::numeric_limits< half_float::half >::max_digits10 = 5
static

Required decimal digits to represent all possible values.

HALF_CONSTEXPR_CONST int std::numeric_limits< half_float::half >::max_exponent = 16
static

One more than largest exponent.

HALF_CONSTEXPR_CONST int std::numeric_limits< half_float::half >::max_exponent10 = 4
static

Largest finitely representable power of 10.

HALF_CONSTEXPR_CONST int std::numeric_limits< half_float::half >::min_exponent = -13
static

One more than smallest exponent.

HALF_CONSTEXPR_CONST int std::numeric_limits< half_float::half >::min_exponent10 = -4
static

Smallest normalized representable power of 10.

HALF_CONSTEXPR_CONST int std::numeric_limits< half_float::half >::radix = 2
static

Number base.

HALF_CONSTEXPR_CONST float_round_style std::numeric_limits< half_float::half >::round_style
static
Initial value:
= (std::numeric_limits<float>::round_style==
half_float::half::round_style) ? half_float::half::round_style : round_indeterminate

Rounding mode. Due to the mix of internal single-precision computations (using the rounding mode of the underlying single-precision implementation) with explicit truncation of the single-to-half conversions, the actual rounding mode is indeterminate.


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