00001 #ifndef _PSYCHO_SKIN_GSME_ENGINE_H_ 00002 #define _PSYCHO_SKIN_GSME_ENGINE_H_ 00003 #include <vector> 00004 #include <string> 00005 #include "psycho-skin-mapgenerator.h" 00006 00007 /* 00008 This header file holds the interface for our game engine and useful functions for running the game 00009 written by Nader Noori 00010 April 7,2008 00011 */ 00012 00013 class Engine 00014 { 00015 public: 00016 Engine(int row , int col , int numOfClasses); 00017 ~Engine() ; 00018 void setup(); 00019 Matrix *getCurrentState(); 00020 bool canSwap(int fRow , int fCol , int sRow ,int sCol); 00021 std::vector<Matrix*> swap(); 00022 std::string toFormattedString() ; 00023 std::string toString(); 00024 private: 00025 Matrix* currentState; 00026 int r ; 00027 int c ; 00028 std::string stringify(int i) ; 00029 } ; 00030 00031 00032 #endif