00001 //-*-Mode: C++;-*- 00002 #ifndef _MazeFactory_h_ 00003 #define _MazeFactory_h_ 00004 00005 #include "Object.h" 00006 00007 //---- MazeFactory ----------------------------------------------------------- 00008 00009 // Vorwaertsdeklarationen 00010 class Maze; 00011 class Wall; 00012 class Room; 00013 class Door; 00014 00015 class MazeFactory : public Object 00016 { 00017 public: 00018 MazeFactory(); 00019 virtual ~MazeFactory(); 00020 00021 virtual class Maze * MakeMaze() const; 00022 virtual class Wall * MakeWall() const; 00023 virtual class Room * MakeRoom(int n) const; 00024 virtual class Door * MakeDoor(class Room * r1, class Room * r2) const; 00025 00026 virtual void Print(int indent = 0); 00027 }; 00028 00029 //ik added: 00030 class MazeFactory * FactoryInstance(); 00031 class MazeFactory * FactoryInstance( bool bombed_ ); 00032 00033 #endif