YAPOG
0.0.1
Yet Another Pokemon Online Game
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
WorldObjectStateFactory.hpp
Go to the documentation of this file.
1
#ifndef YAPOG_WORLDOBJECTSTATEFACTORY_HPP
2
# define YAPOG_WORLDOBJECTSTATEFACTORY_HPP
3
4
# include "
YAPOG/Macros.hpp
"
5
# include "
YAPOG/System/String.hpp
"
6
# include "
YAPOG/Collection/List.hpp
"
7
# include "
YAPOG/Collection/Map.hpp
"
8
9
namespace
yap
10
{
11
class
YAPOG_LIB
WorldObjectStateFactory
12
{
13
DISALLOW_COPY
(
WorldObjectStateFactory
);
14
15
public
:
16
17
class
WorldObjectStateInfo
18
{
19
DISALLOW_COPY
(
WorldObjectStateInfo
);
20
21
public
:
22
23
WorldObjectStateInfo
(
const
String
& name,
const
String
& logicalName);
24
25
const
String
& GetName ()
const
;
26
const
String
& GetLogicalName ()
const
;
27
bool
IsJoinedTo (
const
String
& state)
const
;
28
29
void
AddJoin (
const
String
& join);
30
31
private
:
32
33
String
name_
;
34
String
logicalName_
;
35
36
collection::List<String>
joins_
;
37
};
38
39
static
WorldObjectStateFactory
& Instance ();
40
41
void
AddState (
const
String
& state,
const
String
& logicalState);
42
void
AddJoin (
const
String
& state,
const
String
& join);
43
44
WorldObjectStateInfo
& GetState (
const
String
& state);
45
46
private
:
47
48
WorldObjectStateFactory
();
49
~
WorldObjectStateFactory
();
50
51
collection::Map<String, WorldObjectStateInfo*>
states_
;
52
};
53
}
// namespace yap
54
55
#endif // YAPOG_WORLDOBJECTSTATEFACTORY_HPP
YAPOG
include
YAPOG
Game
World
Map
WorldObjectStateFactory.hpp
Generated on Mon Sep 17 2012 22:24:23 for YAPOG by
1.8.1.1