Mercurial > forge
diff main/fixed/src/int/fixed.h @ 9481:d84d2fea3c90 octave-forge
Re-enable compilation of fixed package
author | jordigh |
---|---|
date | Wed, 22 Feb 2012 22:07:33 +0000 |
parents | f8d77845533f |
children |
line wrap: on
line diff
--- a/main/fixed/src/int/fixed.h Wed Feb 22 21:56:05 2012 +0000 +++ b/main/fixed/src/int/fixed.h Wed Feb 22 22:07:33 2012 +0000 @@ -158,14 +158,14 @@ #ifdef _MSC_VER FixedPoint (const long double x) { *this = FixedPoint((const double)x); } - - operator double () const { return fixedpoint(); } #endif FixedPoint (const FixedPoint &x) : number(x.number), decsize(x.decsize), intsize(x.intsize), filter(x.filter), value(x.value) { } + operator double () const { return fixedpoint(); } + // Changing FixedPoint dynamic FixedPoint chintsize (const int n) { @@ -229,6 +229,23 @@ // FixedPoint operators + friend FixedPoint operator + (const FixedPoint &x, int y) { return x + FixedPoint (y); } + + friend FixedPoint operator - (const FixedPoint &x, int y) { return x - FixedPoint (y); } + + friend FixedPoint operator * (const FixedPoint &x, int y) { return x * FixedPoint (y); } + + friend FixedPoint operator / (const FixedPoint &x, int y) { return x / FixedPoint (y); } + + friend FixedPoint operator + (int x, const FixedPoint &y) { return FixedPoint (x) + y; } + + friend FixedPoint operator - (int x, const FixedPoint &y) { return FixedPoint (x) - y; } + + friend FixedPoint operator * (int x, const FixedPoint &y) { return FixedPoint (x) * y; } + + friend FixedPoint operator / (int x, const FixedPoint &y) { return FixedPoint (x) / y; } + + friend FixedPoint operator + (const FixedPoint &x, const FixedPoint &y); friend FixedPoint operator - (const FixedPoint &x, const FixedPoint &y); @@ -243,6 +260,30 @@ // FixedPoint comparators + friend OCTAVE_FIXED_API bool operator == (int x, const FixedPoint &y) { return FixedPoint (x) == y; } + + friend OCTAVE_FIXED_API bool operator != (int x, const FixedPoint &y) { return FixedPoint (x) != y; } + + friend OCTAVE_FIXED_API bool operator > (int x, const FixedPoint &y) { return FixedPoint (x) > y; } + + friend OCTAVE_FIXED_API bool operator >= (int x, const FixedPoint &y) { return FixedPoint (x) >= y; } + + friend OCTAVE_FIXED_API bool operator < (int x, const FixedPoint &y) { return FixedPoint (x) < y; } + + friend OCTAVE_FIXED_API bool operator <= (int x, const FixedPoint &y) { return FixedPoint (x) <= y; } + + friend OCTAVE_FIXED_API bool operator == (const FixedPoint& y, int x) { return x == FixedPoint (y); } + + friend OCTAVE_FIXED_API bool operator != (const FixedPoint& y, int x) { return x != FixedPoint (y); } + + friend OCTAVE_FIXED_API bool operator > (const FixedPoint& y, int x) { return x > FixedPoint (y); } + + friend OCTAVE_FIXED_API bool operator >= (const FixedPoint& y, int x) { return x >= FixedPoint (y); } + + friend OCTAVE_FIXED_API bool operator < (const FixedPoint& y, int x) { return x < FixedPoint (y); } + + friend OCTAVE_FIXED_API bool operator <= (const FixedPoint& y, int x) { return x <= FixedPoint (y); } + friend OCTAVE_FIXED_API bool operator == (const FixedPoint &x, const FixedPoint &y); friend OCTAVE_FIXED_API bool operator != (const FixedPoint &x, const FixedPoint &y);