view engine/swigwrappers/python/extensions.i.templ @ 646:07b1cf8e92b5

* Major improvements to fife_math.h and added corresponding Python bindings. Users now have access to FIFE's internal math functions. These functions are recommended to be used by all clients if required. Note: this may cause some problems with certain compilers. I hope this wont have to be reverted. TODO: remove the static constant globals somehow. * Adopted the new math functions for all subsystems * Improvements to DeviceCaps. It now detects all possible screen modes. * User can now select 0 for their bpp and it will attempt to initialize SDL with the current screen bpp.
author prock@33b003aa-7bff-0310-803a-e67f0ece8222
date Wed, 13 Oct 2010 20:24:48 +0000
parents c0c3f64bfc2d
children
line wrap: on
line source

namespace FIFE {
	
	%extend PointType2D<int> {
		int getX() { return $self->x; }
		int getY() { return $self->y; }
		void setX(int _x) { $self->x = _x; }
		void setY(int _y) { $self->y = _y; }
		
		std::string __str__() {
			std::stringstream str;
			str << "Point" << *$self;
			return  str.str();
		}
	};
	
	%extend PointType2D<double> {
		double getX() { return $self->x; }
		double getY() { return $self->y; }
		void setX(double _x) { $self->x = _x; }
		void setY(double _y) { $self->y = _y; }
		
		std::string __str__() {
			std::stringstream str;
			str << "DoublePoint" << *$self;
			return  str.str();
		}
	};
	
	%extend PointType3D<int> {
		std::string __str__() {
			std::stringstream str;
			str << "Point3D" << *$self;
			return  str.str();
		}
	};
	
	%extend PointType3D<double> {
		std::string __str__() {
			std::stringstream str;
			str << "DoublePoint3D" << *$self;
			return  str.str();
		}
	};
		
	%extend RectType<int> {
		int getX() { return $self->x; }
		int getY() { return $self->y; }
		void setX(int _x) { $self->x = _x; }
		void setY(int _y) { $self->y = _y; }
	
		int getW() { return $self->w; }
		int getH() { return $self->h; }
		void setW(int _w) { $self->w = _w; }
		void setH(int _h) { $self->h = _h; }
	
		std::string __str__() {
			std::stringstream str;
			str << "Rect" << *$self;
			return  str.str();
		}
	};
			
	%extend RectType<float> {
		float getX() { return $self->x; }
		float getY() { return $self->y; }
		void setX(float _x) { $self->x = _x; }
		void setY(float _y) { $self->y = _y; }
		
		float getW() { return $self->w; }
		float getH() { return $self->h; }
		void setW(float _w) { $self->w = _w; }
		void setH(float _h) { $self->h = _h; }
		
		std::string __str__() {
			std::stringstream str;
			str << "FloatRect" << *$self;
			return  str.str();
		}
	};
	
	%extend RectType<double> {
		double getX() { return $self->x; }
		double getY() { return $self->y; }
		void setX(double _x) { $self->x = _x; }
		void setY(double _y) { $self->y = _y; }
		
		double getW() { return $self->w; }
		double getH() { return $self->h; }
		void setW(double _w) { $self->w = _w; }
		void setH(double _h) { $self->h = _h; }
		
		std::string __str__() {
			std::stringstream str;
			str << "DoubleRect" << *$self;
			return  str.str();
		}
	};
}