diff engine/core/model/model.i @ 0:4a0efb7baf70

* Datasets becomes the new trunk and retires after that :-)
author mvbarracuda@33b003aa-7bff-0310-803a-e67f0ece8222
date Sun, 29 Jun 2008 18:44:17 +0000
parents
children 112fc4af772d
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/engine/core/model/model.i	Sun Jun 29 18:44:17 2008 +0000
@@ -0,0 +1,48 @@
+%module fife
+%{
+#include "model/model.h"
+%}
+
+%include "std_list.i"
+
+namespace FIFE {
+  class Map;
+  class Object;
+}
+
+namespace std {
+  %template(StringList) list<std::string>;
+  %template(ObjectList) list<FIFE::Object*>;
+  %template(MapList) list<FIFE::Map*>;
+}
+
+namespace FIFE {
+	class AbstractPather;
+
+	class Model: public FifeClass {
+	public:
+		Model();
+		~Model();
+
+		Map* createMap(const std::string& identifier);
+		void deleteMap(Map*);
+
+		const std::list<Map*>& getMaps() const;
+		Map* getMap(const std::string& id) const;
+
+		std::list<std::string> getNamespaces() const;
+
+		Object* createObject(const std::string& identifier, const std::string& name_space, Object* parent=0);
+		Object* getObject(const std::string& id, const std::string& name_space);
+		const std::list<Object*>& getObjects(const std::string& name_space) const;
+
+		size_t getNumMaps() const;
+		void deleteMaps();
+
+		AbstractPather* getPather(const std::string& pathername);
+		
+		void setTimeMultiplier(float multip);
+		double getTimeMultiplier() const;
+		
+	};
+}