fixed_base< T, FIXED_BITS > Class Template Reference

Fixed-point template base class. More...

#include <_fixed.h>

List of all members.

Public Types

typedef T value_type

Public Member Functions

 fixed_base () ETL_ATTRIB_INLINE
 fixed_base (const float &f) ETL_ATTRIB_INLINE
 fixed_base (const double &f) ETL_ATTRIB_INLINE
 fixed_base (const long double &f) ETL_ATTRIB_INLINE
 fixed_base (const int &i) ETL_ATTRIB_INLINE
 fixed_base (const int &n, const int &d) ETL_ATTRIB_INLINE
 Fraction constructor.
 fixed_base (const _fixed &x) ETL_ATTRIB_INLINE
 fixed_base (value_type x, raw) ETL_ATTRIB_INLINE
T & data () ETL_ATTRIB_PURE ETL_ATTRIB_INLINE
const T & data () const ETL_ATTRIB_PURE ETL_ATTRIB_INLINE
const _fixedoperator+= (const _fixed &rhs) ETL_ATTRIB_INLINE
const _fixedoperator-= (const _fixed &rhs) ETL_ATTRIB_INLINE
template<typename U>
const _fixedoperator *= (const U &rhs) ETL_ATTRIB_INLINE
template<typename U>
const _fixedoperator/= (const U &rhs) ETL_ATTRIB_INLINE
const _fixedoperator *= (const _fixed &rhs) ETL_ATTRIB_INLINE
const _fixedoperator/= (const _fixed &rhs) ETL_ATTRIB_INLINE
const _fixedoperator *= (const int &rhs) ETL_ATTRIB_INLINE
 fixed*=int
const _fixedoperator/= (const int &rhs) ETL_ATTRIB_INLINE
 fixed/=int
template<typename U>
_fixed operator+ (const U &rhs) const ETL_ATTRIB_INLINE
 fixed + ...
template<typename U>
_fixed operator- (const U &rhs) const ETL_ATTRIB_INLINE
 fixed - ...
template<typename U>
_fixed operator * (const U &rhs) const ETL_ATTRIB_INLINE
 fixed * ...
template<typename U>
_fixed operator/ (const U &rhs) const ETL_ATTRIB_INLINE
 fixed / ...
_fixed operator+ (const _fixed &rhs) const ETL_ATTRIB_INLINE
_fixed operator- (const _fixed &rhs) const ETL_ATTRIB_INLINE
_fixed operator * (const _fixed &rhs) const ETL_ATTRIB_INLINE
_fixed operator/ (const _fixed &rhs) const ETL_ATTRIB_INLINE
_fixed operator * (const int &rhs) const ETL_ATTRIB_INLINE
 fixed * int
_fixed operator/ (const int &rhs) const ETL_ATTRIB_INLINE
 fixed / int
_fixed operator * (const float &rhs) const ETL_ATTRIB_INLINE
 fixed * float
_fixed operator * (const double &rhs) const ETL_ATTRIB_INLINE
 fixed * double
_fixed operator- () const ETL_ATTRIB_INLINE
 operator float () const ETL_ATTRIB_INLINE
 operator double () const ETL_ATTRIB_INLINE
 operator long double () const ETL_ATTRIB_INLINE
 operator int () const ETL_ATTRIB_INLINE
 operator bool () const ETL_ATTRIB_INLINE
_fixed floor () const
_fixed ceil () const
_fixed round () const
bool operator== (const _fixed &rhs) const
bool operator!= (const _fixed &rhs) const
bool operator< (const _fixed &rhs) const
bool operator> (const _fixed &rhs) const
bool operator<= (const _fixed &rhs) const
bool operator>= (const _fixed &rhs) const

Private Types

typedef fixed_base< T, FIXED_BITS > _fixed
typedef fixed_base< T, FIXED_BITS > self_type

Static Private Member Functions

static bool _TYPE_SMALLER_THAN_INT () ETL_ATTRIB_CONST ETL_ATTRIB_INLINE
static bool _USING_ALL_BITS () ETL_ATTRIB_CONST ETL_ATTRIB_INLINE
static value_type _ONE () ETL_ATTRIB_CONST ETL_ATTRIB_INLINE
static value_type _F_MASK () ETL_ATTRIB_CONST ETL_ATTRIB_INLINE
static float _EPSILON () ETL_ATTRIB_CONST ETL_ATTRIB_INLINE

Private Attributes

_data

Classes

class  raw


Detailed Description

template<class T, unsigned int FIXED_BITS>
class fixed_base< T, FIXED_BITS >

Fixed-point template base class.

========================================================================

A more detailed description needs to be written.

Definition at line 99 of file _fixed.h.


Member Typedef Documentation

template<class T, unsigned int FIXED_BITS>
typedef T fixed_base< T, FIXED_BITS >::value_type

Definition at line 102 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
typedef fixed_base<T,FIXED_BITS> fixed_base< T, FIXED_BITS >::_fixed [private]

Definition at line 106 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
typedef fixed_base<T,FIXED_BITS> fixed_base< T, FIXED_BITS >::self_type [private]

Definition at line 107 of file _fixed.h.


Constructor & Destructor Documentation

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS >::fixed_base (  )  [inline]

Definition at line 176 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS >::fixed_base ( const float &  f  )  [inline]

Definition at line 184 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS >::fixed_base ( const double &  f  )  [inline]

Definition at line 191 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS >::fixed_base ( const long double &  f  )  [inline]

Definition at line 198 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS >::fixed_base ( const int &  i  )  [inline]

Definition at line 205 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS >::fixed_base ( const int &  n,
const int &  d 
) [inline]

Fraction constructor.

Definition at line 212 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS >::fixed_base ( const _fixed x  )  [inline]

Definition at line 180 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS >::fixed_base ( value_type  x,
raw   
) [inline]

Definition at line 209 of file _fixed.h.


Member Function Documentation

template<class T, unsigned int FIXED_BITS>
bool fixed_base< T, FIXED_BITS >::_TYPE_SMALLER_THAN_INT (  )  [inline, static, private]

Definition at line 217 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
bool fixed_base< T, FIXED_BITS >::_USING_ALL_BITS (  )  [inline, static, private]

Definition at line 223 of file _fixed.h.

Referenced by fixed_base< T, FIXED_BITS >::_F_MASK(), and fixed_base< T, FIXED_BITS >::_ONE().

template<class T, unsigned int FIXED_BITS>
T fixed_base< T, FIXED_BITS >::_ONE (  )  [inline, static, private]

Definition at line 229 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_USING_ALL_BITS().

Referenced by fixed_base< T, FIXED_BITS >::_EPSILON(), fixed_base< T, FIXED_BITS >::_F_MASK(), fixed_base< T, FIXED_BITS >::ceil(), fixed_base< T, FIXED_BITS >::operator double(), fixed_base< T, FIXED_BITS >::operator float(), fixed_base< T, FIXED_BITS >::operator long double(), and fixed_base< T, FIXED_BITS >::round().

template<class T, unsigned int FIXED_BITS>
T fixed_base< T, FIXED_BITS >::_F_MASK (  )  [inline, static, private]

Definition at line 235 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_ONE(), and fixed_base< T, FIXED_BITS >::_USING_ALL_BITS().

Referenced by fixed_base< T, FIXED_BITS >::ceil(), fixed_base< T, FIXED_BITS >::floor(), and fixed_base< T, FIXED_BITS >::round().

template<class T, unsigned int FIXED_BITS>
float fixed_base< T, FIXED_BITS >::_EPSILON (  )  [inline, static, private]

Definition at line 241 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_ONE().

template<class T, unsigned int FIXED_BITS>
T & fixed_base< T, FIXED_BITS >::data (  )  [inline]

Definition at line 248 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_data.

Referenced by fastangle::cos::cos(), fastangle::tan::get(), fastangle::cos::get(), fastangle::sin::get(), fixed_base< T, FIXED_BITS >::operator!=(), fixed_base< T, FIXED_BITS >::operator<(), fixed_base< T, FIXED_BITS >::operator<=(), fixed_base< T, FIXED_BITS >::operator==(), fixed_base< T, FIXED_BITS >::operator>(), fixed_base< T, FIXED_BITS >::operator>=(), fastangle::sin::sin(), and fastangle::tan::tan().

template<class T, unsigned int FIXED_BITS>
const T & fixed_base< T, FIXED_BITS >::data (  )  const [inline]

Definition at line 254 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_data.

template<class T, unsigned int FIXED_BITS>
const _fixed& fixed_base< T, FIXED_BITS >::operator+= ( const _fixed rhs  ) 

template<class T, unsigned int FIXED_BITS>
const _fixed& fixed_base< T, FIXED_BITS >::operator-= ( const _fixed rhs  ) 

template<class T, unsigned int FIXED_BITS>
template<typename U>
const fixed_base< T, FIXED_BITS > & fixed_base< T, FIXED_BITS >::operator *= ( const U &  rhs  )  [inline]

Definition at line 305 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
template<typename U>
const fixed_base< T, FIXED_BITS > & fixed_base< T, FIXED_BITS >::operator/= ( const U &  rhs  )  [inline]

Definition at line 311 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
const _fixed& fixed_base< T, FIXED_BITS >::operator *= ( const _fixed rhs  ) 

template<class T, unsigned int FIXED_BITS>
const _fixed& fixed_base< T, FIXED_BITS >::operator/= ( const _fixed rhs  ) 

template<class T, unsigned int FIXED_BITS>
const fixed_base< T, FIXED_BITS > & fixed_base< T, FIXED_BITS >::operator *= ( const int &  rhs  )  [inline]

fixed*=int

Definition at line 318 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_data.

template<class T, unsigned int FIXED_BITS>
const fixed_base< T, FIXED_BITS > & fixed_base< T, FIXED_BITS >::operator/= ( const int &  rhs  )  [inline]

fixed/=int

Definition at line 325 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_data.

template<class T, unsigned int FIXED_BITS>
template<typename U>
fixed_base< T, FIXED_BITS > fixed_base< T, FIXED_BITS >::operator+ ( const U &  rhs  )  const [inline]

fixed + ...

Definition at line 376 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
template<typename U>
fixed_base< T, FIXED_BITS > fixed_base< T, FIXED_BITS >::operator- ( const U &  rhs  )  const [inline]

fixed - ...

Definition at line 383 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::operator-().

template<class T, unsigned int FIXED_BITS>
template<typename U>
fixed_base< T, FIXED_BITS > fixed_base< T, FIXED_BITS >::operator * ( const U &  rhs  )  const [inline]

fixed * ...

Definition at line 390 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
template<typename U>
fixed_base< T, FIXED_BITS > fixed_base< T, FIXED_BITS >::operator/ ( const U &  rhs  )  const [inline]

fixed / ...

Definition at line 397 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
_fixed fixed_base< T, FIXED_BITS >::operator+ ( const _fixed rhs  )  const

template<class T, unsigned int FIXED_BITS>
_fixed fixed_base< T, FIXED_BITS >::operator- ( const _fixed rhs  )  const

template<class T, unsigned int FIXED_BITS>
_fixed fixed_base< T, FIXED_BITS >::operator * ( const _fixed rhs  )  const

template<class T, unsigned int FIXED_BITS>
_fixed fixed_base< T, FIXED_BITS >::operator/ ( const _fixed rhs  )  const

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS > fixed_base< T, FIXED_BITS >::operator * ( const int &  rhs  )  const [inline]

fixed * int

Definition at line 404 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_data.

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS > fixed_base< T, FIXED_BITS >::operator/ ( const int &  rhs  )  const [inline]

fixed / int

Definition at line 429 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_data.

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS > fixed_base< T, FIXED_BITS >::operator * ( const float &  rhs  )  const [inline]

fixed * float

Definition at line 414 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS > fixed_base< T, FIXED_BITS >::operator * ( const double &  rhs  )  const [inline]

fixed * double

Definition at line 421 of file _fixed.h.

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS > fixed_base< T, FIXED_BITS >::operator- (  )  const [inline]

Definition at line 458 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_data.

Referenced by fixed_base< T, FIXED_BITS >::operator-().

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS >::operator float (  )  const [inline]

Definition at line 465 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_data, and fixed_base< T, FIXED_BITS >::_ONE().

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS >::operator double (  )  const [inline]

Definition at line 471 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_data, and fixed_base< T, FIXED_BITS >::_ONE().

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS >::operator long double (  )  const [inline]

Definition at line 477 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_data, and fixed_base< T, FIXED_BITS >::_ONE().

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS >::operator int (  )  const [inline]

Definition at line 483 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_data.

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS >::operator bool (  )  const [inline]

Definition at line 489 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_data.

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS > fixed_base< T, FIXED_BITS >::floor (  )  const [inline]

Definition at line 496 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_data, and fixed_base< T, FIXED_BITS >::_F_MASK().

Referenced by floor().

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS > fixed_base< T, FIXED_BITS >::ceil (  )  const [inline]

Definition at line 504 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_data, fixed_base< T, FIXED_BITS >::_F_MASK(), and fixed_base< T, FIXED_BITS >::_ONE().

Referenced by ceil().

template<class T, unsigned int FIXED_BITS>
fixed_base< T, FIXED_BITS > fixed_base< T, FIXED_BITS >::round (  )  const [inline]

Definition at line 515 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::_data, fixed_base< T, FIXED_BITS >::_F_MASK(), and fixed_base< T, FIXED_BITS >::_ONE().

Referenced by round().

template<class T, unsigned int FIXED_BITS>
bool fixed_base< T, FIXED_BITS >::operator== ( const _fixed rhs  )  const [inline]

Definition at line 166 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::data().

template<class T, unsigned int FIXED_BITS>
bool fixed_base< T, FIXED_BITS >::operator!= ( const _fixed rhs  )  const [inline]

Definition at line 167 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::data().

template<class T, unsigned int FIXED_BITS>
bool fixed_base< T, FIXED_BITS >::operator< ( const _fixed rhs  )  const [inline]

Definition at line 168 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::data().

template<class T, unsigned int FIXED_BITS>
bool fixed_base< T, FIXED_BITS >::operator> ( const _fixed rhs  )  const [inline]

Definition at line 169 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::data().

template<class T, unsigned int FIXED_BITS>
bool fixed_base< T, FIXED_BITS >::operator<= ( const _fixed rhs  )  const [inline]

Definition at line 170 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::data().

template<class T, unsigned int FIXED_BITS>
bool fixed_base< T, FIXED_BITS >::operator>= ( const _fixed rhs  )  const [inline]

Definition at line 171 of file _fixed.h.

References fixed_base< T, FIXED_BITS >::data().


Member Data Documentation

template<class T, unsigned int FIXED_BITS>
T fixed_base< T, FIXED_BITS >::_data [private]

Definition at line 104 of file _fixed.h.

Referenced by fixed_base< T, FIXED_BITS >::ceil(), fixed_base< T, FIXED_BITS >::data(), fixed_base< T, FIXED_BITS >::floor(), fixed_base< T, FIXED_BITS >::operator *(), fixed_base< T, FIXED_BITS >::operator *=(), fixed_base< T, FIXED_BITS >::operator bool(), fixed_base< T, FIXED_BITS >::operator double(), fixed_base< T, FIXED_BITS >::operator float(), fixed_base< T, FIXED_BITS >::operator int(), fixed_base< T, FIXED_BITS >::operator long double(), fixed_base< T, FIXED_BITS >::operator-(), fixed_base< T, FIXED_BITS >::operator/(), fixed_base< T, FIXED_BITS >::operator/=(), and fixed_base< T, FIXED_BITS >::round().


The documentation for this class was generated from the following file:
Generated on Sun Oct 28 03:51:07 2007 for ETL by  doxygen 1.5.3-20071008