#ifndef NME_FIXED_POINT_H #define NME_FIXED_POINT_H namespace nme { template struct FixedPoint { int x; int y; enum { Bits = FIXED }; inline FixedPoint() {} inline FixedPoint(int inX,int inY) :x(inX), y(inY) {} inline FixedPoint(double inX,double inY) { x = (int)(inX * (double)(1<>Bits; }; inline int Y() const { return y>>Bits; }; inline int X(int inAABits) const { return x>>(Bits-inAABits); }; inline int Y(int inAABits) const { return y>>(Bits-inAABits); }; inline FixedPoint(const FixedPoint &inRHS) :x(inRHS.x), y(inRHS.y) {} inline FixedPoint(const ImagePoint &inRHS) : x(inRHS.x<>(int inShift) const { return FixedPoint(x>>inShift,y>>inShift); } inline FixedPoint operator<<(int inShift) const { return FixedPoint(x< Fixed10; } // end namespace nme #endif