Design Patterns
maze.h
Go to the documentation of this file.
1 // Based on "Design Patterns: Elements of Reusable Object-Oriented Software"
2 // book by Erich Gamma, John Vlissides, Ralph Johnson, and Richard Helm
3 //
4 // Created by Bartosz Rachwal. The National Institute of Advanced Industrial Science and Technology, Japan.
5 
6 #ifndef CREATIONAL_MAZEPARTS_MAZE_H_
7 #define CREATIONAL_MAZEPARTS_MAZE_H_
8 
9 #include "room.h"
10 
11 #include <map>
12 
13 namespace creational
14 {
15 namespace commons
16 {
17 class Maze
18 {
19  public:
20  Maze();
21  Maze(const Maze&);
22  virtual ~Maze();
23 
24  void AddRoom(Room*);
25  virtual Maze *Clone() const;
26  Room *GetRoom(const int& room_number) const;
27 
28  private:
29  std::map<int, Room*> rooms_;
30 };
31 }
32 }
33 
34 #endif
35 
void AddRoom(Room *)
Definition: maze.cc:38
virtual ~Maze()
Definition: maze.cc:19
Definition: bombed_maze_factory.cc:11
Definition: room.h:16
Room * GetRoom(const int &room_number) const
Definition: maze.cc:28
virtual Maze * Clone() const
Definition: maze.cc:44
Maze()
Definition: maze.cc:12
Definition: maze.h:17