Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
gte::BSNumber< UIntegerType > Class Template Reference

#include <GteBSNumber.h>

Public Member Functions

 BSNumber ()
 
 BSNumber (BSNumber const &number)
 
 BSNumber (float number)
 
 BSNumber (double number)
 
 BSNumber (int32_t number)
 
 BSNumber (uint32_t number)
 
 BSNumber (int64_t number)
 
 BSNumber (uint64_t number)
 
 BSNumber (BSNumber &&number)
 
int32_t GetBiasedExponent () const
 
int32_t GetExponent () const
 
int32_t GetSign () const
 
UIntegerType const & GetUInteger () const
 
 operator double () const
 
 operator float () const
 
bool operator!= (BSNumber const &number) const
 
BSNumber operator* (BSNumber const &number) const
 
BSNumberoperator*= (BSNumber const &number)
 
BSNumber operator+ () const
 
BSNumber operator+ (BSNumber const &number) const
 
BSNumberoperator+= (BSNumber const &number)
 
BSNumber operator- () const
 
BSNumber operator- (BSNumber const &number) const
 
BSNumberoperator-= (BSNumber const &number)
 
bool operator< (BSNumber const &number) const
 
bool operator<= (BSNumber const &number) const
 
BSNumberoperator= (BSNumber const &number)
 
BSNumberoperator= (BSNumber &&number)
 
bool operator== (BSNumber const &number) const
 
bool operator> (BSNumber const &number) const
 
bool operator>= (BSNumber const &number) const
 
bool Read (std::ifstream &input)
 
bool Write (std::ofstream &output) const
 

Private Member Functions

template<typename IEEE >
void ConvertFrom (typename IEEE::FloatType number)
 
template<typename IEEE >
IEEE::FloatType ConvertTo () const
 
template<typename IEEE >
IEEE::UIntType GetTrailing (int32_t normal, int32_t sigma) const
 

Static Private Member Functions

static BSNumber AddIgnoreSign (BSNumber const &n0, BSNumber const &n1, int32_t resultSign)
 
static bool EqualIgnoreSign (BSNumber const &n0, BSNumber const &n1)
 
static bool LessThanIgnoreSign (BSNumber const &n0, BSNumber const &n1)
 
static BSNumber SubIgnoreSign (BSNumber const &n0, BSNumber const &n1, int32_t resultSign)
 

Private Attributes

int32_t mBiasedExponent
 
int32_t mSign
 
UIntegerType mUInteger
 

Friends

class BSRational< UIntegerType >
 
class UnitTestBSNumber
 

Detailed Description

template<typename UIntegerType>
class gte::BSNumber< UIntegerType >

Definition at line 71 of file GteBSNumber.h.

Constructor & Destructor Documentation

template<typename UIntegerType >
gte::BSNumber< UIntegerType >::BSNumber ( )

Definition at line 172 of file GteBSNumber.h.

template<typename UIntegerType >
gte::BSNumber< UIntegerType >::BSNumber ( BSNumber< UIntegerType > const &  number)

Definition at line 183 of file GteBSNumber.h.

template<typename UIntegerType >
gte::BSNumber< UIntegerType >::BSNumber ( float  number)

Definition at line 189 of file GteBSNumber.h.

template<typename UIntegerType >
gte::BSNumber< UIntegerType >::BSNumber ( double  number)

Definition at line 198 of file GteBSNumber.h.

template<typename UIntegerType >
gte::BSNumber< UIntegerType >::BSNumber ( int32_t  number)

Definition at line 207 of file GteBSNumber.h.

template<typename UIntegerType >
gte::BSNumber< UIntegerType >::BSNumber ( uint32_t  number)

Definition at line 235 of file GteBSNumber.h.

template<typename UIntegerType >
gte::BSNumber< UIntegerType >::BSNumber ( int64_t  number)

Definition at line 254 of file GteBSNumber.h.

template<typename UIntegerType >
gte::BSNumber< UIntegerType >::BSNumber ( uint64_t  number)

Definition at line 282 of file GteBSNumber.h.

template<typename UIntegerType >
gte::BSNumber< UIntegerType >::BSNumber ( BSNumber< UIntegerType > &&  number)

Definition at line 326 of file GteBSNumber.h.

Member Function Documentation

template<typename UIntegerType >
BSNumber< UIntegerType > gte::BSNumber< UIntegerType >::AddIgnoreSign ( BSNumber< UIntegerType > const &  n0,
BSNumber< UIntegerType > const &  n1,
int32_t  resultSign 
)
staticprivate

Definition at line 685 of file GteBSNumber.h.

template<typename UIntegerType >
template<typename IEEE >
void gte::BSNumber< UIntegerType >::ConvertFrom ( typename IEEE::FloatType  number)
private

Definition at line 752 of file GteBSNumber.h.

template<typename UIntegerType >
template<typename IEEE >
IEEE::FloatType gte::BSNumber< UIntegerType >::ConvertTo ( ) const
private

Definition at line 827 of file GteBSNumber.h.

template<typename UIntegerType >
bool gte::BSNumber< UIntegerType >::EqualIgnoreSign ( BSNumber< UIntegerType > const &  n0,
BSNumber< UIntegerType > const &  n1 
)
staticprivate

Definition at line 661 of file GteBSNumber.h.

template<typename UIntegerType >
int32_t gte::BSNumber< UIntegerType >::GetBiasedExponent ( ) const
inline

Definition at line 352 of file GteBSNumber.h.

template<typename UIntegerType >
int32_t gte::BSNumber< UIntegerType >::GetExponent ( ) const
inline

Definition at line 358 of file GteBSNumber.h.

template<typename UIntegerType >
int32_t gte::BSNumber< UIntegerType >::GetSign ( ) const
inline

Definition at line 346 of file GteBSNumber.h.

template<typename UIntegerType >
template<typename IEEE >
IEEE::UIntType gte::BSNumber< UIntegerType >::GetTrailing ( int32_t  normal,
int32_t  sigma 
) const
private

Definition at line 902 of file GteBSNumber.h.

template<typename UIntegerType >
UIntegerType const & gte::BSNumber< UIntegerType >::GetUInteger ( ) const
inline

Definition at line 364 of file GteBSNumber.h.

template<typename UIntegerType >
bool gte::BSNumber< UIntegerType >::LessThanIgnoreSign ( BSNumber< UIntegerType > const &  n0,
BSNumber< UIntegerType > const &  n1 
)
staticprivate

Definition at line 669 of file GteBSNumber.h.

template<typename UIntegerType >
gte::BSNumber< UIntegerType >::operator double ( ) const
inline

Definition at line 307 of file GteBSNumber.h.

template<typename UIntegerType >
gte::BSNumber< UIntegerType >::operator float ( ) const
inline

Definition at line 301 of file GteBSNumber.h.

template<typename UIntegerType >
bool gte::BSNumber< UIntegerType >::operator!= ( BSNumber< UIntegerType > const &  number) const

Definition at line 376 of file GteBSNumber.h.

template<typename UIntegerType >
BSNumber< UIntegerType > gte::BSNumber< UIntegerType >::operator* ( BSNumber< UIntegerType > const &  number) const

Definition at line 586 of file GteBSNumber.h.

template<typename UIntegerType >
BSNumber< UIntegerType > & gte::BSNumber< UIntegerType >::operator*= ( BSNumber< UIntegerType > const &  number)

Definition at line 620 of file GteBSNumber.h.

template<typename UIntegerType >
BSNumber< UIntegerType > gte::BSNumber< UIntegerType >::operator+ ( ) const

Definition at line 429 of file GteBSNumber.h.

template<typename UIntegerType >
BSNumber< UIntegerType > gte::BSNumber< UIntegerType >::operator+ ( BSNumber< UIntegerType > const &  number) const

Definition at line 446 of file GteBSNumber.h.

template<typename UIntegerType >
BSNumber< UIntegerType > & gte::BSNumber< UIntegerType >::operator+= ( BSNumber< UIntegerType > const &  number)

Definition at line 604 of file GteBSNumber.h.

template<typename UIntegerType >
BSNumber< UIntegerType > gte::BSNumber< UIntegerType >::operator- ( ) const

Definition at line 435 of file GteBSNumber.h.

template<typename UIntegerType >
BSNumber< UIntegerType > gte::BSNumber< UIntegerType >::operator- ( BSNumber< UIntegerType > const &  number) const

Definition at line 516 of file GteBSNumber.h.

template<typename UIntegerType >
BSNumber< UIntegerType > & gte::BSNumber< UIntegerType >::operator-= ( BSNumber< UIntegerType > const &  number)

Definition at line 612 of file GteBSNumber.h.

template<typename UIntegerType >
bool gte::BSNumber< UIntegerType >::operator< ( BSNumber< UIntegerType > const &  number) const

Definition at line 382 of file GteBSNumber.h.

template<typename UIntegerType >
bool gte::BSNumber< UIntegerType >::operator<= ( BSNumber< UIntegerType > const &  number) const

Definition at line 411 of file GteBSNumber.h.

template<typename UIntegerType >
BSNumber< UIntegerType > & gte::BSNumber< UIntegerType >::operator= ( BSNumber< UIntegerType > const &  number)

Definition at line 313 of file GteBSNumber.h.

template<typename UIntegerType >
BSNumber< UIntegerType > & gte::BSNumber< UIntegerType >::operator= ( BSNumber< UIntegerType > &&  number)

Definition at line 332 of file GteBSNumber.h.

template<typename UIntegerType >
bool gte::BSNumber< UIntegerType >::operator== ( BSNumber< UIntegerType > const &  number) const

Definition at line 370 of file GteBSNumber.h.

template<typename UIntegerType >
bool gte::BSNumber< UIntegerType >::operator> ( BSNumber< UIntegerType > const &  number) const

Definition at line 417 of file GteBSNumber.h.

template<typename UIntegerType >
bool gte::BSNumber< UIntegerType >::operator>= ( BSNumber< UIntegerType > const &  number) const

Definition at line 423 of file GteBSNumber.h.

template<typename UIntegerType >
bool gte::BSNumber< UIntegerType >::Read ( std::ifstream &  input)

Definition at line 645 of file GteBSNumber.h.

template<typename UIntegerType >
BSNumber< UIntegerType > gte::BSNumber< UIntegerType >::SubIgnoreSign ( BSNumber< UIntegerType > const &  n0,
BSNumber< UIntegerType > const &  n1,
int32_t  resultSign 
)
staticprivate

Definition at line 718 of file GteBSNumber.h.

template<typename UIntegerType >
bool gte::BSNumber< UIntegerType >::Write ( std::ofstream &  output) const

Definition at line 628 of file GteBSNumber.h.

Friends And Related Function Documentation

template<typename UIntegerType>
friend class BSRational< UIntegerType >
friend

Definition at line 166 of file GteBSNumber.h.

template<typename UIntegerType>
friend class UnitTestBSNumber
friend

Definition at line 167 of file GteBSNumber.h.

Member Data Documentation

template<typename UIntegerType>
int32_t gte::BSNumber< UIntegerType >::mBiasedExponent
private

Definition at line 161 of file GteBSNumber.h.

template<typename UIntegerType>
int32_t gte::BSNumber< UIntegerType >::mSign
private

Definition at line 160 of file GteBSNumber.h.

template<typename UIntegerType>
UIntegerType gte::BSNumber< UIntegerType >::mUInteger
private

Definition at line 162 of file GteBSNumber.h.


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


geometric_tools_engine
Author(s): Yijiang Huang
autogenerated on Thu Jul 18 2019 04:00:05