[ VIGRA Homepage | Class Index | Function Index | File Index | Main Page ]

details Functions for FixedPoint VIGRA

#include "vigra/fixedpoint.hxx" More...

Functions

template<class TARGET, unsigned IntBits, unsigned FracBits> TARGET fixed_point_cast (FixedPoint< IntBits, FracBits > v)
template<unsigned IntBits1, unsigned FracBits1, unsigned IntBits2, unsigned FracBits2> bool operator== (FixedPoint< IntBits1, FracBits1 > l, FixedPoint< IntBits2, FracBits2 > r)
 equal

template<unsigned IntBits1, unsigned FracBits1, unsigned IntBits2, unsigned FracBits2> bool operator!= (FixedPoint< IntBits1, FracBits1 > l, FixedPoint< IntBits2, FracBits2 > r)
 not equal

template<unsigned IntBits1, unsigned FracBits1, unsigned IntBits2, unsigned FracBits2> bool operator< (FixedPoint< IntBits1, FracBits1 > l, FixedPoint< IntBits2, FracBits2 > r)
 less than

template<unsigned IntBits1, unsigned FracBits1, unsigned IntBits2, unsigned FracBits2> bool operator<= (FixedPoint< IntBits1, FracBits1 > l, FixedPoint< IntBits2, FracBits2 > r)
 less or equal

template<unsigned IntBits1, unsigned FracBits1, unsigned IntBits2, unsigned FracBits2> bool operator> (FixedPoint< IntBits1, FracBits1 > l, FixedPoint< IntBits2, FracBits2 > r)
 greater

template<unsigned IntBits1, unsigned FracBits1, unsigned IntBits2, unsigned FracBits2> bool operator>= (FixedPoint< IntBits1, FracBits1 > l, FixedPoint< IntBits2, FracBits2 > r)
 greater or equal

template<unsigned IntBits1, unsigned FracBits1, unsigned IntBits2, unsigned FracBits2> FixedPointTraits< FixedPoint<
IntBits1, FracBits1 >, FixedPoint<
IntBits2, FracBits2
> >::PlusType 
operator+ (FixedPoint< IntBits1, FracBits1 > l, FixedPoint< IntBits2, FracBits2 > r)
 addition with automatic determination of the appropriate result type.

template<unsigned IntBits1, unsigned FracBits1, unsigned IntBits2, unsigned FracBits2, unsigned IntBits3, unsigned FracBits3> void add (FixedPoint< IntBits1, FracBits1 > l, FixedPoint< IntBits2, FracBits2 > r, FixedPoint< IntBits3, FracBits3 > &result)
 addition with enforced result type.

template<unsigned IntBits1, unsigned FracBits1, unsigned IntBits2, unsigned FracBits2> FixedPointTraits< FixedPoint<
IntBits1, FracBits1 >, FixedPoint<
IntBits2, FracBits2
> >::MinusType 
operator- (FixedPoint< IntBits1, FracBits1 > l, FixedPoint< IntBits2, FracBits2 > r)
 subtraction with automatic determination of the appropriate result type.

template<unsigned IntBits1, unsigned FracBits1, unsigned IntBits2, unsigned FracBits2, unsigned IntBits3, unsigned FracBits3> void sub (FixedPoint< IntBits1, FracBits1 > l, FixedPoint< IntBits2, FracBits2 > r, FixedPoint< IntBits3, FracBits3 > &result)
 subtraction with enforced result type.

template<unsigned IntBits1, unsigned FracBits1, unsigned IntBits2, unsigned FracBits2> FixedPointTraits< FixedPoint<
IntBits1, FracBits1 >, FixedPoint<
IntBits2, FracBits2
> >::MultipliesType 
operator * (FixedPoint< IntBits1, FracBits1 > l, FixedPoint< IntBits2, FracBits2 > r)
 multiplication with automatic determination of the appropriate result type.

template<unsigned IntBits1, unsigned FracBits1, unsigned IntBits2, unsigned FracBits2, unsigned IntBits3, unsigned FracBits3> void mul (FixedPoint< IntBits1, FracBits1 > l, FixedPoint< IntBits2, FracBits2 > r, FixedPoint< IntBits3, FracBits3 > &result)
 multiplication with enforced result type.

template<unsigned IntBits, unsigned FracBits> SquareRootTraits< FixedPoint<
IntBits, FracBits > >::SquareRootResult 
sqrt (FixedPoint< IntBits, FracBits > v)
 square root.

template<unsigned IntBits, unsigned FracBits> FixedPoint< IntBits, FracBits > abs (FixedPoint< IntBits, FracBits > v)
 absolute value.

template<unsigned IntBits, unsigned FracBits> FixedPointTraits< FixedPoint<
IntBits, FracBits >, FixedPoint<
IntBits, FracBits > >::MultipliesType 
squaredNorm (FixedPoint< IntBits, FracBits > v)
 squared norm (same as v*v).

template<unsigned IntBits, unsigned FracBits> FixedPoint< IntBits, FracBits > norm (FixedPoint< IntBits, FracBits > const &v)
 norm (same as abs).

template<unsigned IntBits, unsigned FracBits> FixedPoint< 0, FracBits > frac (FixedPoint< IntBits, FracBits > v)
 fractional part.

template<unsigned IntBits, unsigned FracBits> FixedPoint< 0, FracBits > dual_frac (FixedPoint< IntBits, FracBits > v)
 dual fractional part: 1 - frac(v).

template<unsigned IntBits, unsigned FracBits> int floor (FixedPoint< IntBits, FracBits > v)
 rounding down.

template<unsigned IntBits, unsigned FracBits> int ceil (FixedPoint< IntBits, FracBits > v)
 rounding up.

template<unsigned IntBits, unsigned FracBits> int round (FixedPoint< IntBits, FracBits > v)
 rounding to the nearest integer.



Detailed Description


#include "vigra/fixedpoint.hxx"

These functions fulfill the requirements of an AlgebraicRing.

Namespace: vigra


Function Documentation


TARGET fixed_point_cast FixedPoint< IntBits, FracBits >    v

 

Convert a FixedPoint to a built-in type. If the target is integral, the value is rounded.
Usage:

        FixedPoint<16,15> fp(...);
        
        double d = fixed_point_cast<double>(fp);

© Ullrich Köthe (koethe@informatik.uni-hamburg.de)
Cognitive Systems Group, University of Hamburg, Germany

html generated using doxygen and Python
VIGRA 1.5.0 (7 Dec 2006)