april
1.0.0
...
All
Classes
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
component.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 __COMPONENT_INC__
21
#define __COMPONENT_INC__
22
//
23
//
24
//
25
//
26
/* INCLUDES ------------------------------------------------------------ */
27
28
#include <
april/april.h
>
29
#include <libbbb/1/list2d.h>
30
#include <libbbb/1/amorph.h>
31
#include <
april/logic/uniqueid.h
>
32
33
/* INCLUDES ============================================================ */
34
//
35
//
36
//
37
//
38
/* DEFINITIONS --------------------------------------------------------- */
39
40
class
QSettings;
41
42
namespace
april {
43
class
Factory;
44
45
/* DEFINITIONS ========================================================= */
46
//
47
//
48
//
49
//
50
/* CLASS --------------------------------------------------------------- */
51
58
class
59
APRILSHARED_EXPORT
60
Component
:
public
List2De,
public
libbbb::RefCnt,
public
MemTrack {
61
BBM_TRACK(
Component
);
62
63
//
64
//
65
//
66
//
67
/* DEFINITIONS ----------------------------------------------------- */
68
69
friend
class
AprilLibrary
;
70
friend
class
World
;
71
friend
class
Actor
;
72
73
/* DEFINITIONS ===================================================== */
74
//
75
//
76
//
77
//
78
/* DATA ------------------------------------------------------------ */
79
80
private
:
81
83
Amorph payload_;
84
85
/* DATA ============================================================ */
86
//
87
//
88
//
89
//
90
/* FUNCTIONS ------------------------------------------------------- */
91
92
public
:
93
94
98
Component
(
void
);
99
100
protected
:
101
105
virtual
~
Component
(
void
);
106
107
public
:
108
110
Amorph & payload (
void
)
111
{
return
payload_; }
112
114
virtual
ID identificator (
void
)
const
115
{
return
InvalidId; }
116
118
virtual
Factory
* factory (
void
)
const
119
{
return
NULL; }
120
122
virtual
bool
save ( QSettings & s )
const
= 0;
123
125
virtual
bool
load ( QSettings & s ) = 0;
126
127
protected
:
128
130
133
virtual
void
inserted (
void
)
134
{ }
135
136
137
138
/* FUNCTIONS ======================================================= */
139
//
140
//
141
//
142
//
143
144
};
/* class Component */
145
146
/* CLASS =============================================================== */
147
//
148
//
149
//
150
//
151
152
}
// namespace april
153
154
#endif // __COMPONENT_INC__
155
/* ------------------------------------------------------------------------- */
156
/* ========================================================================= */
april
logic
component.h
Generated on Sat Apr 20 2013 16:35:29 for april by
1.8.1.2