#include <FloatingPointComparision.hpp>
Classes | |
union | FloatingPointUnion |
Public Types | |
typedef TypeWithSize< sizeof(RawType)> ::UInt | Bits |
Public Member Functions | |
bool | AlmostEquals (const FloatingPoint &rhs) const |
const Bits & | bits () const |
Bits | exponent_bits () const |
FloatingPoint (const RawType &x) | |
Bits | fraction_bits () const |
bool | is_nan () const |
Bits | sign_bit () const |
Static Public Member Functions | |
static RawType | Infinity () |
static RawType | Max () |
static RawType | ReinterpretBits (const Bits bits) |
Static Public Attributes | |
static const size_t | kBitCount = 8*sizeof(RawType) |
static const size_t | kExponentBitCount = kBitCount - 1 - kFractionBitCount |
static const Bits | kExponentBitMask = ~(kSignBitMask | kFractionBitMask) |
static const size_t | kFractionBitCount |
static const Bits | kFractionBitMask |
static const size_t | kMaxUlps = 4 |
static const Bits | kSignBitMask = static_cast<Bits>(1) << (kBitCount - 1) |
Static Private Member Functions | |
static Bits | DistanceBetweenSignAndMagnitudeNumbers (const Bits &sam1, const Bits &sam2) |
static Bits | SignAndMagnitudeToBiased (const Bits &sam) |
Private Attributes | |
FloatingPointUnion | u_ |
Definition at line 105 of file FloatingPointComparision.hpp.
typedef TypeWithSize<sizeof(RawType)>::UInt FloatingPoint< RawType >::Bits |
Definition at line 109 of file FloatingPointComparision.hpp.
FloatingPoint< RawType >::FloatingPoint | ( | const RawType & | x | ) | [inline, explicit] |
Definition at line 153 of file FloatingPointComparision.hpp.
bool FloatingPoint< RawType >::AlmostEquals | ( | const FloatingPoint< RawType > & | rhs | ) | const [inline] |
Definition at line 201 of file FloatingPointComparision.hpp.
const Bits& FloatingPoint< RawType >::bits | ( | ) | const [inline] |
Definition at line 177 of file FloatingPointComparision.hpp.
static Bits FloatingPoint< RawType >::DistanceBetweenSignAndMagnitudeNumbers | ( | const Bits & | sam1, |
const Bits & | sam2 | ||
) | [inline, static, private] |
Definition at line 244 of file FloatingPointComparision.hpp.
Bits FloatingPoint< RawType >::exponent_bits | ( | ) | const [inline] |
Definition at line 180 of file FloatingPointComparision.hpp.
Bits FloatingPoint< RawType >::fraction_bits | ( | ) | const [inline] |
Definition at line 183 of file FloatingPointComparision.hpp.
static RawType FloatingPoint< RawType >::Infinity | ( | ) | [inline, static] |
Definition at line 167 of file FloatingPointComparision.hpp.
bool FloatingPoint< RawType >::is_nan | ( | ) | const [inline] |
Definition at line 189 of file FloatingPointComparision.hpp.
static RawType FloatingPoint< RawType >::Max | ( | ) | [static] |
static RawType FloatingPoint< RawType >::ReinterpretBits | ( | const Bits | bits | ) | [inline, static] |
Definition at line 160 of file FloatingPointComparision.hpp.
Bits FloatingPoint< RawType >::sign_bit | ( | ) | const [inline] |
Definition at line 186 of file FloatingPointComparision.hpp.
static Bits FloatingPoint< RawType >::SignAndMagnitudeToBiased | ( | const Bits & | sam | ) | [inline, static, private] |
Definition at line 232 of file FloatingPointComparision.hpp.
const size_t FloatingPoint< RawType >::kBitCount = 8*sizeof(RawType) [static] |
Definition at line 114 of file FloatingPointComparision.hpp.
const size_t FloatingPoint< RawType >::kExponentBitCount = kBitCount - 1 - kFractionBitCount [static] |
Definition at line 121 of file FloatingPointComparision.hpp.
const Bits FloatingPoint< RawType >::kExponentBitMask = ~(kSignBitMask | kFractionBitMask) [static] |
Definition at line 131 of file FloatingPointComparision.hpp.
const size_t FloatingPoint< RawType >::kFractionBitCount [static] |
std::numeric_limits<RawType>::digits - 1
Definition at line 117 of file FloatingPointComparision.hpp.
const Bits FloatingPoint< RawType >::kFractionBitMask [static] |
~static_cast<Bits>(0) >> (kExponentBitCount + 1)
Definition at line 127 of file FloatingPointComparision.hpp.
const size_t FloatingPoint< RawType >::kMaxUlps = 4 [static] |
Definition at line 145 of file FloatingPointComparision.hpp.
const Bits FloatingPoint< RawType >::kSignBitMask = static_cast<Bits>(1) << (kBitCount - 1) [static] |
Definition at line 124 of file FloatingPointComparision.hpp.
FloatingPointUnion FloatingPoint< RawType >::u_ [private] |
Definition at line 251 of file FloatingPointComparision.hpp.