april
1.0.0
...
All
Classes
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
genericactorfactory.h
Go to the documentation of this file.
1
/* ========================================================================= */
2
/* ------------------------------------------------------------------------- */
/*
12
13
14
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15
Please read COPYING and README files in root folder
16
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
17
*/
18
/* ------------------------------------------------------------------------- */
19
/* ========================================================================= */
20
#ifndef __GENERICACTORFACTORY_INC__
21
#define __GENERICACTORFACTORY_INC__
22
//
23
//
24
//
25
//
26
/* INCLUDES ------------------------------------------------------------ */
27
28
#include <
april/april.h
>
29
#include <
april/logic/actorfactory.h
>
30
#include <
april/logic/uniqueid.h
>
31
32
/* INCLUDES ============================================================ */
33
//
34
//
35
//
36
//
37
/* DEFINITIONS --------------------------------------------------------- */
38
39
namespace
april {
40
41
/* DEFINITIONS ========================================================= */
42
//
43
//
44
//
45
//
46
/* CLASS --------------------------------------------------------------- */
47
54
class
55
APRILSHARED_EXPORT
56
GenericActorFactory
:
public
ActorFactory
{
57
BBM_TRACK(
GenericActorFactory
);
58
59
//
60
//
61
//
62
//
63
/* DEFINITIONS ----------------------------------------------------- */
64
65
public
:
66
68
typedef
QMap<ID,DNA>
IdDnaMap
;
69
71
typedef
QMap<ID,DNA>::Iterator
IdDnaMapIter
;
72
74
typedef
QMap<ID,DNA>::ConstIterator
IdDnaMapIterC
;
75
76
/* DEFINITIONS ===================================================== */
77
//
78
//
79
//
80
//
81
/* DATA ------------------------------------------------------------ */
82
83
private
:
84
86
IdDnaMap list_;
87
89
DNA
dna_invalid_;
90
91
/* DATA ============================================================ */
92
//
93
//
94
//
95
//
96
/* FUNCTIONS ------------------------------------------------------- */
97
98
public
:
99
101
GenericActorFactory
(
World
* w );
102
103
protected
:
104
106
virtual
~
GenericActorFactory
(
void
);
107
109
virtual
FactoryType factoryType (
void
)
110
{
return
FTyGenericActor; }
111
113
virtual
QString factoryName (
void
)
114
{
return
staticName(); }
115
117
126
virtual
Actor
* create ( ID
id
);
127
129
virtual
bool
save ( QSettings & s )
const
;
130
132
virtual
bool
load ( QSettings & s );
133
134
public
:
135
137
144
static
GenericActorFactory
* findMyself (
World
* w );
145
147
static
QString staticName (
void
)
148
{
return
"Actor.Factory.Generic"
; }
149
151
const
IdDnaMap & dnaList (
void
)
const
152
{
return
list_; }
153
155
void
addNewKind (
const
DNA::InitData
& data );
156
158
DNA
& dna ( ID
id
);
159
160
/* FUNCTIONS ======================================================= */
161
//
162
//
163
//
164
//
165
166
};
/* class GenericActorFactory */
167
168
/* CLASS =============================================================== */
169
//
170
//
171
//
172
//
173
174
}
// namespace april
175
176
#endif // __GENERICACTORFACTORY_INC__
177
/* ------------------------------------------------------------------------- */
178
/* ========================================================================= */
april
logic
genericactorfactory.h
Generated on Sat Apr 20 2013 16:35:29 for april by
1.8.1.2