diff options
Diffstat (limited to 'libraries/irrlicht-1.8/source/Irrlicht/CAttributes.h')
-rw-r--r-- | libraries/irrlicht-1.8/source/Irrlicht/CAttributes.h | 1424 |
1 files changed, 712 insertions, 712 deletions
diff --git a/libraries/irrlicht-1.8/source/Irrlicht/CAttributes.h b/libraries/irrlicht-1.8/source/Irrlicht/CAttributes.h index 1675a3a..45fc22c 100644 --- a/libraries/irrlicht-1.8/source/Irrlicht/CAttributes.h +++ b/libraries/irrlicht-1.8/source/Irrlicht/CAttributes.h | |||
@@ -1,712 +1,712 @@ | |||
1 | // Copyright (C) 2002-2012 Nikolaus Gebhardt | 1 | // Copyright (C) 2002-2012 Nikolaus Gebhardt |
2 | // This file is part of the "Irrlicht Engine". | 2 | // This file is part of the "Irrlicht Engine". |
3 | // For conditions of distribution and use, see copyright notice in irrlicht.h | 3 | // For conditions of distribution and use, see copyright notice in irrlicht.h |
4 | 4 | ||
5 | #ifndef __C_ATTRIBUTES_H_INCLUDED__ | 5 | #ifndef __C_ATTRIBUTES_H_INCLUDED__ |
6 | #define __C_ATTRIBUTES_H_INCLUDED__ | 6 | #define __C_ATTRIBUTES_H_INCLUDED__ |
7 | 7 | ||
8 | #include "IAttributes.h" | 8 | #include "IAttributes.h" |
9 | #include "IAttribute.h" | 9 | #include "IAttribute.h" |
10 | 10 | ||
11 | namespace irr | 11 | namespace irr |
12 | { | 12 | { |
13 | namespace video | 13 | namespace video |
14 | { | 14 | { |
15 | class ITexture; | 15 | class ITexture; |
16 | class IVideoDriver; | 16 | class IVideoDriver; |
17 | } | 17 | } |
18 | namespace io | 18 | namespace io |
19 | { | 19 | { |
20 | 20 | ||
21 | 21 | ||
22 | //! Implementation of the IAttributes interface | 22 | //! Implementation of the IAttributes interface |
23 | class CAttributes : public IAttributes | 23 | class CAttributes : public IAttributes |
24 | { | 24 | { |
25 | public: | 25 | public: |
26 | 26 | ||
27 | CAttributes(video::IVideoDriver* driver=0); | 27 | CAttributes(video::IVideoDriver* driver=0); |
28 | ~CAttributes(); | 28 | ~CAttributes(); |
29 | 29 | ||
30 | //! Returns amount of attributes in this collection of attributes. | 30 | //! Returns amount of attributes in this collection of attributes. |
31 | virtual u32 getAttributeCount() const; | 31 | virtual u32 getAttributeCount() const; |
32 | 32 | ||
33 | //! Returns attribute name by index. | 33 | //! Returns attribute name by index. |
34 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 34 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
35 | virtual const c8* getAttributeName(s32 index); | 35 | virtual const c8* getAttributeName(s32 index); |
36 | 36 | ||
37 | //! Returns the type of an attribute | 37 | //! Returns the type of an attribute |
38 | //! \param attributeName: Name for the attribute | 38 | //! \param attributeName: Name for the attribute |
39 | virtual E_ATTRIBUTE_TYPE getAttributeType(const c8* attributeName); | 39 | virtual E_ATTRIBUTE_TYPE getAttributeType(const c8* attributeName); |
40 | 40 | ||
41 | //! Returns attribute type by index. | 41 | //! Returns attribute type by index. |
42 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 42 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
43 | virtual E_ATTRIBUTE_TYPE getAttributeType(s32 index); | 43 | virtual E_ATTRIBUTE_TYPE getAttributeType(s32 index); |
44 | 44 | ||
45 | //! Returns the type string of the attribute | 45 | //! Returns the type string of the attribute |
46 | //! \param attributeName: String for the attribute type | 46 | //! \param attributeName: String for the attribute type |
47 | virtual const wchar_t* getAttributeTypeString(const c8* attributeName); | 47 | virtual const wchar_t* getAttributeTypeString(const c8* attributeName); |
48 | 48 | ||
49 | //! Returns the type string of the attribute by index. | 49 | //! Returns the type string of the attribute by index. |
50 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 50 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
51 | virtual const wchar_t* getAttributeTypeString(s32 index); | 51 | virtual const wchar_t* getAttributeTypeString(s32 index); |
52 | 52 | ||
53 | //! Returns if an attribute with a name exists | 53 | //! Returns if an attribute with a name exists |
54 | virtual bool existsAttribute(const c8* attributeName); | 54 | virtual bool existsAttribute(const c8* attributeName); |
55 | 55 | ||
56 | //! Returns attribute index from name, -1 if not found | 56 | //! Returns attribute index from name, -1 if not found |
57 | virtual s32 findAttribute(const c8* attributeName) const; | 57 | virtual s32 findAttribute(const c8* attributeName) const; |
58 | 58 | ||
59 | //! Removes all attributes | 59 | //! Removes all attributes |
60 | virtual void clear(); | 60 | virtual void clear(); |
61 | 61 | ||
62 | //! Reads attributes from a xml file. | 62 | //! Reads attributes from a xml file. |
63 | //! \param readCurrentElementOnly: If set to true, reading only works if current element has the name 'attributes'. | 63 | //! \param readCurrentElementOnly: If set to true, reading only works if current element has the name 'attributes'. |
64 | //! IF set to false, the first appearing list attributes are read. | 64 | //! IF set to false, the first appearing list attributes are read. |
65 | virtual bool read(io::IXMLReader* reader, bool readCurrentElementOnly=false, | 65 | virtual bool read(io::IXMLReader* reader, bool readCurrentElementOnly=false, |
66 | const wchar_t* nonDefaultElementName = 0); | 66 | const wchar_t* nonDefaultElementName = 0); |
67 | 67 | ||
68 | //! Write these attributes into a xml file | 68 | //! Write these attributes into a xml file |
69 | virtual bool write(io::IXMLWriter* writer, bool writeXMLHeader=false, const wchar_t* nonDefaultElementName=0); | 69 | virtual bool write(io::IXMLWriter* writer, bool writeXMLHeader=false, const wchar_t* nonDefaultElementName=0); |
70 | 70 | ||
71 | 71 | ||
72 | /* | 72 | /* |
73 | 73 | ||
74 | Integer Attribute | 74 | Integer Attribute |
75 | 75 | ||
76 | */ | 76 | */ |
77 | 77 | ||
78 | //! Adds an attribute as integer | 78 | //! Adds an attribute as integer |
79 | virtual void addInt(const c8* attributeName, s32 value); | 79 | virtual void addInt(const c8* attributeName, s32 value); |
80 | 80 | ||
81 | //! Sets an attribute as integer value | 81 | //! Sets an attribute as integer value |
82 | virtual void setAttribute(const c8* attributeName, s32 value); | 82 | virtual void setAttribute(const c8* attributeName, s32 value); |
83 | 83 | ||
84 | //! Gets an attribute as integer value | 84 | //! Gets an attribute as integer value |
85 | //! \param attributeName: Name of the attribute to get. | 85 | //! \param attributeName: Name of the attribute to get. |
86 | //! \return Returns value of the attribute previously set by setAttribute() | 86 | //! \return Returns value of the attribute previously set by setAttribute() |
87 | virtual s32 getAttributeAsInt(const c8* attributeName) const; | 87 | virtual s32 getAttributeAsInt(const c8* attributeName) const; |
88 | 88 | ||
89 | //! Gets an attribute as integer value | 89 | //! Gets an attribute as integer value |
90 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 90 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
91 | virtual s32 getAttributeAsInt(s32 index) const; | 91 | virtual s32 getAttributeAsInt(s32 index) const; |
92 | 92 | ||
93 | //! Sets an attribute as integer value | 93 | //! Sets an attribute as integer value |
94 | virtual void setAttribute(s32 index, s32 value); | 94 | virtual void setAttribute(s32 index, s32 value); |
95 | 95 | ||
96 | /* | 96 | /* |
97 | 97 | ||
98 | Float Attribute | 98 | Float Attribute |
99 | 99 | ||
100 | */ | 100 | */ |
101 | 101 | ||
102 | //! Adds an attribute as float | 102 | //! Adds an attribute as float |
103 | virtual void addFloat(const c8* attributeName, f32 value); | 103 | virtual void addFloat(const c8* attributeName, f32 value); |
104 | 104 | ||
105 | //! Sets a attribute as float value | 105 | //! Sets a attribute as float value |
106 | virtual void setAttribute(const c8* attributeName, f32 value); | 106 | virtual void setAttribute(const c8* attributeName, f32 value); |
107 | 107 | ||
108 | //! Gets an attribute as float value | 108 | //! Gets an attribute as float value |
109 | //! \param attributeName: Name of the attribute to get. | 109 | //! \param attributeName: Name of the attribute to get. |
110 | //! \return Returns value of the attribute previously set by setAttribute() | 110 | //! \return Returns value of the attribute previously set by setAttribute() |
111 | virtual f32 getAttributeAsFloat(const c8* attributeName); | 111 | virtual f32 getAttributeAsFloat(const c8* attributeName); |
112 | 112 | ||
113 | //! Gets an attribute as float value | 113 | //! Gets an attribute as float value |
114 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 114 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
115 | virtual f32 getAttributeAsFloat(s32 index); | 115 | virtual f32 getAttributeAsFloat(s32 index); |
116 | 116 | ||
117 | //! Sets an attribute as float value | 117 | //! Sets an attribute as float value |
118 | virtual void setAttribute(s32 index, f32 value); | 118 | virtual void setAttribute(s32 index, f32 value); |
119 | 119 | ||
120 | /* | 120 | /* |
121 | 121 | ||
122 | String Attribute | 122 | String Attribute |
123 | 123 | ||
124 | */ | 124 | */ |
125 | 125 | ||
126 | //! Adds an attribute as string | 126 | //! Adds an attribute as string |
127 | virtual void addString(const c8* attributeName, const c8* value); | 127 | virtual void addString(const c8* attributeName, const c8* value); |
128 | 128 | ||
129 | //! Sets an attribute value as string. | 129 | //! Sets an attribute value as string. |
130 | //! \param attributeName: Name for the attribute | 130 | //! \param attributeName: Name for the attribute |
131 | //! \param value: Value for the attribute. Set this to 0 to delete the attribute | 131 | //! \param value: Value for the attribute. Set this to 0 to delete the attribute |
132 | virtual void setAttribute(const c8* attributeName, const c8* value); | 132 | virtual void setAttribute(const c8* attributeName, const c8* value); |
133 | 133 | ||
134 | //! Gets an attribute as string. | 134 | //! Gets an attribute as string. |
135 | //! \param attributeName: Name of the attribute to get. | 135 | //! \param attributeName: Name of the attribute to get. |
136 | //! \return Returns value of the attribute previously set by setAttribute() | 136 | //! \return Returns value of the attribute previously set by setAttribute() |
137 | //! or 0 if attribute is not set. | 137 | //! or 0 if attribute is not set. |
138 | virtual core::stringc getAttributeAsString(const c8* attributeName); | 138 | virtual core::stringc getAttributeAsString(const c8* attributeName); |
139 | 139 | ||
140 | //! Gets an attribute as string. | 140 | //! Gets an attribute as string. |
141 | //! \param attributeName: Name of the attribute to get. | 141 | //! \param attributeName: Name of the attribute to get. |
142 | //! \param target: Buffer where the string is copied to. | 142 | //! \param target: Buffer where the string is copied to. |
143 | virtual void getAttributeAsString(const c8* attributeName, c8* target); | 143 | virtual void getAttributeAsString(const c8* attributeName, c8* target); |
144 | 144 | ||
145 | //! Returns attribute value as string by index. | 145 | //! Returns attribute value as string by index. |
146 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 146 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
147 | virtual core::stringc getAttributeAsString(s32 index); | 147 | virtual core::stringc getAttributeAsString(s32 index); |
148 | 148 | ||
149 | //! Sets an attribute value as string. | 149 | //! Sets an attribute value as string. |
150 | //! \param attributeName: Name for the attribute | 150 | //! \param attributeName: Name for the attribute |
151 | virtual void setAttribute(s32 index, const c8* value); | 151 | virtual void setAttribute(s32 index, const c8* value); |
152 | 152 | ||
153 | // wide strings | 153 | // wide strings |
154 | 154 | ||
155 | //! Adds an attribute as string | 155 | //! Adds an attribute as string |
156 | virtual void addString(const c8* attributeName, const wchar_t* value); | 156 | virtual void addString(const c8* attributeName, const wchar_t* value); |
157 | 157 | ||
158 | //! Sets an attribute value as string. | 158 | //! Sets an attribute value as string. |
159 | //! \param attributeName: Name for the attribute | 159 | //! \param attributeName: Name for the attribute |
160 | //! \param value: Value for the attribute. Set this to 0 to delete the attribute | 160 | //! \param value: Value for the attribute. Set this to 0 to delete the attribute |
161 | virtual void setAttribute(const c8* attributeName, const wchar_t* value); | 161 | virtual void setAttribute(const c8* attributeName, const wchar_t* value); |
162 | 162 | ||
163 | //! Gets an attribute as string. | 163 | //! Gets an attribute as string. |
164 | //! \param attributeName: Name of the attribute to get. | 164 | //! \param attributeName: Name of the attribute to get. |
165 | //! \return Returns value of the attribute previously set by setAttribute() | 165 | //! \return Returns value of the attribute previously set by setAttribute() |
166 | //! or 0 if attribute is not set. | 166 | //! or 0 if attribute is not set. |
167 | virtual core::stringw getAttributeAsStringW(const c8* attributeName); | 167 | virtual core::stringw getAttributeAsStringW(const c8* attributeName); |
168 | 168 | ||
169 | //! Gets an attribute as string. | 169 | //! Gets an attribute as string. |
170 | //! \param attributeName: Name of the attribute to get. | 170 | //! \param attributeName: Name of the attribute to get. |
171 | //! \param target: Buffer where the string is copied to. | 171 | //! \param target: Buffer where the string is copied to. |
172 | virtual void getAttributeAsStringW(const c8* attributeName, wchar_t* target); | 172 | virtual void getAttributeAsStringW(const c8* attributeName, wchar_t* target); |
173 | 173 | ||
174 | //! Returns attribute value as string by index. | 174 | //! Returns attribute value as string by index. |
175 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 175 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
176 | virtual core::stringw getAttributeAsStringW(s32 index); | 176 | virtual core::stringw getAttributeAsStringW(s32 index); |
177 | 177 | ||
178 | //! Sets an attribute value as string. | 178 | //! Sets an attribute value as string. |
179 | //! \param attributeName: Name for the attribute | 179 | //! \param attributeName: Name for the attribute |
180 | virtual void setAttribute(s32 index, const wchar_t* value); | 180 | virtual void setAttribute(s32 index, const wchar_t* value); |
181 | 181 | ||
182 | /* | 182 | /* |
183 | 183 | ||
184 | Binary Data Attribute | 184 | Binary Data Attribute |
185 | 185 | ||
186 | */ | 186 | */ |
187 | 187 | ||
188 | //! Adds an attribute as binary data | 188 | //! Adds an attribute as binary data |
189 | virtual void addBinary(const c8* attributeName, void* data, s32 dataSizeInBytes); | 189 | virtual void addBinary(const c8* attributeName, void* data, s32 dataSizeInBytes); |
190 | 190 | ||
191 | //! Sets an attribute as binary data | 191 | //! Sets an attribute as binary data |
192 | virtual void setAttribute(const c8* attributeName, void* data, s32 dataSizeInBytes); | 192 | virtual void setAttribute(const c8* attributeName, void* data, s32 dataSizeInBytes); |
193 | 193 | ||
194 | //! Gets an attribute as binary data | 194 | //! Gets an attribute as binary data |
195 | //! \param attributeName: Name of the attribute to get. | 195 | //! \param attributeName: Name of the attribute to get. |
196 | virtual void getAttributeAsBinaryData(const c8* attributeName, void* outData, s32 maxSizeInBytes); | 196 | virtual void getAttributeAsBinaryData(const c8* attributeName, void* outData, s32 maxSizeInBytes); |
197 | 197 | ||
198 | //! Gets an attribute as binary data | 198 | //! Gets an attribute as binary data |
199 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 199 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
200 | virtual void getAttributeAsBinaryData(s32 index, void* outData, s32 maxSizeInBytes); | 200 | virtual void getAttributeAsBinaryData(s32 index, void* outData, s32 maxSizeInBytes); |
201 | 201 | ||
202 | //! Sets an attribute as binary data | 202 | //! Sets an attribute as binary data |
203 | virtual void setAttribute(s32 index, void* data, s32 dataSizeInBytes); | 203 | virtual void setAttribute(s32 index, void* data, s32 dataSizeInBytes); |
204 | 204 | ||
205 | 205 | ||
206 | /* | 206 | /* |
207 | 207 | ||
208 | Array Attribute | 208 | Array Attribute |
209 | 209 | ||
210 | */ | 210 | */ |
211 | 211 | ||
212 | //! Adds an attribute as wide string array | 212 | //! Adds an attribute as wide string array |
213 | virtual void addArray(const c8* attributeName, const core::array<core::stringw>& value); | 213 | virtual void addArray(const c8* attributeName, const core::array<core::stringw>& value); |
214 | 214 | ||
215 | //! Sets an attribute value as a wide string array. | 215 | //! Sets an attribute value as a wide string array. |
216 | //! \param attributeName: Name for the attribute | 216 | //! \param attributeName: Name for the attribute |
217 | //! \param value: Value for the attribute. Set this to 0 to delete the attribute | 217 | //! \param value: Value for the attribute. Set this to 0 to delete the attribute |
218 | virtual void setAttribute(const c8* attributeName, const core::array<core::stringw>& value); | 218 | virtual void setAttribute(const c8* attributeName, const core::array<core::stringw>& value); |
219 | 219 | ||
220 | //! Gets an attribute as an array of wide strings. | 220 | //! Gets an attribute as an array of wide strings. |
221 | //! \param attributeName: Name of the attribute to get. | 221 | //! \param attributeName: Name of the attribute to get. |
222 | //! \return Returns value of the attribute previously set by setAttribute() | 222 | //! \return Returns value of the attribute previously set by setAttribute() |
223 | //! or 0 if attribute is not set. | 223 | //! or 0 if attribute is not set. |
224 | virtual core::array<core::stringw> getAttributeAsArray(const c8* attributeName); | 224 | virtual core::array<core::stringw> getAttributeAsArray(const c8* attributeName); |
225 | 225 | ||
226 | //! Returns attribute value as an array of wide strings by index. | 226 | //! Returns attribute value as an array of wide strings by index. |
227 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 227 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
228 | virtual core::array<core::stringw> getAttributeAsArray(s32 index); | 228 | virtual core::array<core::stringw> getAttributeAsArray(s32 index); |
229 | 229 | ||
230 | //! Sets an attribute as an array of wide strings | 230 | //! Sets an attribute as an array of wide strings |
231 | virtual void setAttribute(s32 index, const core::array<core::stringw>& value); | 231 | virtual void setAttribute(s32 index, const core::array<core::stringw>& value); |
232 | 232 | ||
233 | /* | 233 | /* |
234 | 234 | ||
235 | Bool Attribute | 235 | Bool Attribute |
236 | 236 | ||
237 | */ | 237 | */ |
238 | 238 | ||
239 | //! Adds an attribute as bool | 239 | //! Adds an attribute as bool |
240 | virtual void addBool(const c8* attributeName, bool value); | 240 | virtual void addBool(const c8* attributeName, bool value); |
241 | 241 | ||
242 | //! Sets an attribute as boolean value | 242 | //! Sets an attribute as boolean value |
243 | virtual void setAttribute(const c8* attributeName, bool value); | 243 | virtual void setAttribute(const c8* attributeName, bool value); |
244 | 244 | ||
245 | //! Gets an attribute as boolean value | 245 | //! Gets an attribute as boolean value |
246 | //! \param attributeName: Name of the attribute to get. | 246 | //! \param attributeName: Name of the attribute to get. |
247 | //! \return Returns value of the attribute previously set by setAttribute() | 247 | //! \return Returns value of the attribute previously set by setAttribute() |
248 | virtual bool getAttributeAsBool(const c8* attributeName); | 248 | virtual bool getAttributeAsBool(const c8* attributeName); |
249 | 249 | ||
250 | //! Gets an attribute as boolean value | 250 | //! Gets an attribute as boolean value |
251 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 251 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
252 | virtual bool getAttributeAsBool(s32 index); | 252 | virtual bool getAttributeAsBool(s32 index); |
253 | 253 | ||
254 | //! Sets an attribute as boolean value | 254 | //! Sets an attribute as boolean value |
255 | virtual void setAttribute(s32 index, bool value); | 255 | virtual void setAttribute(s32 index, bool value); |
256 | 256 | ||
257 | /* | 257 | /* |
258 | 258 | ||
259 | Enumeration Attribute | 259 | Enumeration Attribute |
260 | 260 | ||
261 | */ | 261 | */ |
262 | 262 | ||
263 | //! Adds an attribute as enum | 263 | //! Adds an attribute as enum |
264 | virtual void addEnum(const c8* attributeName, const c8* enumValue, const c8* const* enumerationLiterals); | 264 | virtual void addEnum(const c8* attributeName, const c8* enumValue, const c8* const* enumerationLiterals); |
265 | 265 | ||
266 | //! Adds an attribute as enum | 266 | //! Adds an attribute as enum |
267 | virtual void addEnum(const c8* attributeName, s32 enumValue, const c8* const* enumerationLiterals); | 267 | virtual void addEnum(const c8* attributeName, s32 enumValue, const c8* const* enumerationLiterals); |
268 | 268 | ||
269 | //! Sets an attribute as enumeration | 269 | //! Sets an attribute as enumeration |
270 | virtual void setAttribute(const c8* attributeName, const c8* enumValue, const c8* const* enumerationLiterals); | 270 | virtual void setAttribute(const c8* attributeName, const c8* enumValue, const c8* const* enumerationLiterals); |
271 | 271 | ||
272 | //! Gets an attribute as enumeration | 272 | //! Gets an attribute as enumeration |
273 | //! \param attributeName: Name of the attribute to get. | 273 | //! \param attributeName: Name of the attribute to get. |
274 | //! \return Returns value of the attribute previously set by setAttribute() | 274 | //! \return Returns value of the attribute previously set by setAttribute() |
275 | virtual const c8* getAttributeAsEnumeration(const c8* attributeName); | 275 | virtual const c8* getAttributeAsEnumeration(const c8* attributeName); |
276 | 276 | ||
277 | //! Gets an attribute as enumeration | 277 | //! Gets an attribute as enumeration |
278 | //! \param attributeName: Name of the attribute to get. | 278 | //! \param attributeName: Name of the attribute to get. |
279 | //! \param enumerationLiteralsToUse: Use these enumeration literals to get the index value instead of the set ones. | 279 | //! \param enumerationLiteralsToUse: Use these enumeration literals to get the index value instead of the set ones. |
280 | //! This is useful when the attribute list maybe was read from an xml file, and only contains the enumeration string, but | 280 | //! This is useful when the attribute list maybe was read from an xml file, and only contains the enumeration string, but |
281 | //! no information about its index. | 281 | //! no information about its index. |
282 | //! \return Returns value of the attribute previously set by setAttribute() | 282 | //! \return Returns value of the attribute previously set by setAttribute() |
283 | virtual s32 getAttributeAsEnumeration(const c8* attributeName, const c8* const* enumerationLiteralsToUse); | 283 | virtual s32 getAttributeAsEnumeration(const c8* attributeName, const c8* const* enumerationLiteralsToUse); |
284 | 284 | ||
285 | //! Gets an attribute as enumeration | 285 | //! Gets an attribute as enumeration |
286 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 286 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
287 | virtual s32 getAttributeAsEnumeration(s32 index, const c8* const* enumerationLiteralsToUse); | 287 | virtual s32 getAttributeAsEnumeration(s32 index, const c8* const* enumerationLiteralsToUse); |
288 | 288 | ||
289 | //! Gets an attribute as enumeration | 289 | //! Gets an attribute as enumeration |
290 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 290 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
291 | virtual const c8* getAttributeAsEnumeration(s32 index); | 291 | virtual const c8* getAttributeAsEnumeration(s32 index); |
292 | 292 | ||
293 | //! Gets the list of enumeration literals of an enumeration attribute | 293 | //! Gets the list of enumeration literals of an enumeration attribute |
294 | //! \param attributeName: Name of the attribute to get. | 294 | //! \param attributeName: Name of the attribute to get. |
295 | virtual void getAttributeEnumerationLiteralsOfEnumeration(const c8* attributeName, core::array<core::stringc>& outLiterals); | 295 | virtual void getAttributeEnumerationLiteralsOfEnumeration(const c8* attributeName, core::array<core::stringc>& outLiterals); |
296 | 296 | ||
297 | //! Gets the list of enumeration literals of an enumeration attribute | 297 | //! Gets the list of enumeration literals of an enumeration attribute |
298 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 298 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
299 | virtual void getAttributeEnumerationLiteralsOfEnumeration(s32 index, core::array<core::stringc>& outLiterals); | 299 | virtual void getAttributeEnumerationLiteralsOfEnumeration(s32 index, core::array<core::stringc>& outLiterals); |
300 | 300 | ||
301 | //! Sets an attribute as enumeration | 301 | //! Sets an attribute as enumeration |
302 | virtual void setAttribute(s32 index, const c8* enumValue, const c8* const* enumerationLiterals); | 302 | virtual void setAttribute(s32 index, const c8* enumValue, const c8* const* enumerationLiterals); |
303 | 303 | ||
304 | 304 | ||
305 | /* | 305 | /* |
306 | 306 | ||
307 | SColor Attribute | 307 | SColor Attribute |
308 | 308 | ||
309 | */ | 309 | */ |
310 | 310 | ||
311 | //! Adds an attribute as color | 311 | //! Adds an attribute as color |
312 | virtual void addColor(const c8* attributeName, video::SColor value); | 312 | virtual void addColor(const c8* attributeName, video::SColor value); |
313 | 313 | ||
314 | //! Sets a attribute as color | 314 | //! Sets a attribute as color |
315 | virtual void setAttribute(const c8* attributeName, video::SColor color); | 315 | virtual void setAttribute(const c8* attributeName, video::SColor color); |
316 | 316 | ||
317 | //! Gets an attribute as color | 317 | //! Gets an attribute as color |
318 | //! \param attributeName: Name of the attribute to get. | 318 | //! \param attributeName: Name of the attribute to get. |
319 | //! \return Returns value of the attribute previously set by setAttribute() | 319 | //! \return Returns value of the attribute previously set by setAttribute() |
320 | virtual video::SColor getAttributeAsColor(const c8* attributeName); | 320 | virtual video::SColor getAttributeAsColor(const c8* attributeName); |
321 | 321 | ||
322 | //! Gets an attribute as color | 322 | //! Gets an attribute as color |
323 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 323 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
324 | virtual video::SColor getAttributeAsColor(s32 index); | 324 | virtual video::SColor getAttributeAsColor(s32 index); |
325 | 325 | ||
326 | //! Sets an attribute as color | 326 | //! Sets an attribute as color |
327 | virtual void setAttribute(s32 index, video::SColor color); | 327 | virtual void setAttribute(s32 index, video::SColor color); |
328 | 328 | ||
329 | /* | 329 | /* |
330 | 330 | ||
331 | SColorf Attribute | 331 | SColorf Attribute |
332 | 332 | ||
333 | */ | 333 | */ |
334 | 334 | ||
335 | //! Adds an attribute as floating point color | 335 | //! Adds an attribute as floating point color |
336 | virtual void addColorf(const c8* attributeName, video::SColorf value); | 336 | virtual void addColorf(const c8* attributeName, video::SColorf value); |
337 | 337 | ||
338 | //! Sets a attribute as floating point color | 338 | //! Sets a attribute as floating point color |
339 | virtual void setAttribute(const c8* attributeName, video::SColorf color); | 339 | virtual void setAttribute(const c8* attributeName, video::SColorf color); |
340 | 340 | ||
341 | //! Gets an attribute as floating point color | 341 | //! Gets an attribute as floating point color |
342 | //! \param attributeName: Name of the attribute to get. | 342 | //! \param attributeName: Name of the attribute to get. |
343 | //! \return Returns value of the attribute previously set by setAttribute() | 343 | //! \return Returns value of the attribute previously set by setAttribute() |
344 | virtual video::SColorf getAttributeAsColorf(const c8* attributeName); | 344 | virtual video::SColorf getAttributeAsColorf(const c8* attributeName); |
345 | 345 | ||
346 | //! Gets an attribute as floating point color | 346 | //! Gets an attribute as floating point color |
347 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 347 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
348 | virtual video::SColorf getAttributeAsColorf(s32 index); | 348 | virtual video::SColorf getAttributeAsColorf(s32 index); |
349 | 349 | ||
350 | //! Sets an attribute as floating point color | 350 | //! Sets an attribute as floating point color |
351 | virtual void setAttribute(s32 index, video::SColorf color); | 351 | virtual void setAttribute(s32 index, video::SColorf color); |
352 | 352 | ||
353 | 353 | ||
354 | /* | 354 | /* |
355 | 355 | ||
356 | Vector3d Attribute | 356 | Vector3d Attribute |
357 | 357 | ||
358 | */ | 358 | */ |
359 | 359 | ||
360 | //! Adds an attribute as 3d vector | 360 | //! Adds an attribute as 3d vector |
361 | virtual void addVector3d(const c8* attributeName, core::vector3df value); | 361 | virtual void addVector3d(const c8* attributeName, core::vector3df value); |
362 | 362 | ||
363 | //! Sets a attribute as 3d vector | 363 | //! Sets a attribute as 3d vector |
364 | virtual void setAttribute(const c8* attributeName, core::vector3df v); | 364 | virtual void setAttribute(const c8* attributeName, core::vector3df v); |
365 | 365 | ||
366 | //! Gets an attribute as 3d vector | 366 | //! Gets an attribute as 3d vector |
367 | //! \param attributeName: Name of the attribute to get. | 367 | //! \param attributeName: Name of the attribute to get. |
368 | //! \return Returns value of the attribute previously set by setAttribute() | 368 | //! \return Returns value of the attribute previously set by setAttribute() |
369 | virtual core::vector3df getAttributeAsVector3d(const c8* attributeName); | 369 | virtual core::vector3df getAttributeAsVector3d(const c8* attributeName); |
370 | 370 | ||
371 | //! Gets an attribute as 3d vector | 371 | //! Gets an attribute as 3d vector |
372 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 372 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
373 | virtual core::vector3df getAttributeAsVector3d(s32 index); | 373 | virtual core::vector3df getAttributeAsVector3d(s32 index); |
374 | 374 | ||
375 | //! Sets an attribute as vector | 375 | //! Sets an attribute as vector |
376 | virtual void setAttribute(s32 index, core::vector3df v); | 376 | virtual void setAttribute(s32 index, core::vector3df v); |
377 | 377 | ||
378 | 378 | ||
379 | /* | 379 | /* |
380 | 380 | ||
381 | Vector2d Attribute | 381 | Vector2d Attribute |
382 | 382 | ||
383 | */ | 383 | */ |
384 | 384 | ||
385 | //! Adds an attribute as 2d vector | 385 | //! Adds an attribute as 2d vector |
386 | virtual void addVector2d(const c8* attributeName, core::vector2df value); | 386 | virtual void addVector2d(const c8* attributeName, core::vector2df value); |
387 | 387 | ||
388 | //! Sets a attribute as 2d vector | 388 | //! Sets a attribute as 2d vector |
389 | virtual void setAttribute(const c8* attributeName, core::vector2df v); | 389 | virtual void setAttribute(const c8* attributeName, core::vector2df v); |
390 | 390 | ||
391 | //! Gets an attribute as 2d vector | 391 | //! Gets an attribute as 2d vector |
392 | //! \param attributeName: Name of the attribute to get. | 392 | //! \param attributeName: Name of the attribute to get. |
393 | //! \return Returns value of the attribute previously set by setAttribute() | 393 | //! \return Returns value of the attribute previously set by setAttribute() |
394 | virtual core::vector2df getAttributeAsVector2d(const c8* attributeName); | 394 | virtual core::vector2df getAttributeAsVector2d(const c8* attributeName); |
395 | 395 | ||
396 | //! Gets an attribute as 3d vector | 396 | //! Gets an attribute as 3d vector |
397 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 397 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
398 | virtual core::vector2df getAttributeAsVector2d(s32 index); | 398 | virtual core::vector2df getAttributeAsVector2d(s32 index); |
399 | 399 | ||
400 | //! Sets an attribute as vector | 400 | //! Sets an attribute as vector |
401 | virtual void setAttribute(s32 index, core::vector2df v); | 401 | virtual void setAttribute(s32 index, core::vector2df v); |
402 | 402 | ||
403 | 403 | ||
404 | /* | 404 | /* |
405 | 405 | ||
406 | Position2d Attribute | 406 | Position2d Attribute |
407 | 407 | ||
408 | */ | 408 | */ |
409 | 409 | ||
410 | //! Adds an attribute as 2d position | 410 | //! Adds an attribute as 2d position |
411 | virtual void addPosition2d(const c8* attributeName, core::position2di value); | 411 | virtual void addPosition2d(const c8* attributeName, core::position2di value); |
412 | 412 | ||
413 | //! Sets a attribute as 2d position | 413 | //! Sets a attribute as 2d position |
414 | virtual void setAttribute(const c8* attributeName, core::position2di v); | 414 | virtual void setAttribute(const c8* attributeName, core::position2di v); |
415 | 415 | ||
416 | //! Gets an attribute as position | 416 | //! Gets an attribute as position |
417 | //! \param attributeName: Name of the attribute to get. | 417 | //! \param attributeName: Name of the attribute to get. |
418 | //! \return Returns value of the attribute previously set by setAttribute() | 418 | //! \return Returns value of the attribute previously set by setAttribute() |
419 | virtual core::position2di getAttributeAsPosition2d(const c8* attributeName); | 419 | virtual core::position2di getAttributeAsPosition2d(const c8* attributeName); |
420 | 420 | ||
421 | //! Gets an attribute as position | 421 | //! Gets an attribute as position |
422 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 422 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
423 | virtual core::position2di getAttributeAsPosition2d(s32 index); | 423 | virtual core::position2di getAttributeAsPosition2d(s32 index); |
424 | 424 | ||
425 | //! Sets an attribute as 2d position | 425 | //! Sets an attribute as 2d position |
426 | virtual void setAttribute(s32 index, core::position2di v); | 426 | virtual void setAttribute(s32 index, core::position2di v); |
427 | 427 | ||
428 | /* | 428 | /* |
429 | 429 | ||
430 | Rectangle Attribute | 430 | Rectangle Attribute |
431 | 431 | ||
432 | */ | 432 | */ |
433 | 433 | ||
434 | //! Adds an attribute as rectangle | 434 | //! Adds an attribute as rectangle |
435 | virtual void addRect(const c8* attributeName, core::rect<s32> value); | 435 | virtual void addRect(const c8* attributeName, core::rect<s32> value); |
436 | 436 | ||
437 | //! Sets an attribute as rectangle | 437 | //! Sets an attribute as rectangle |
438 | virtual void setAttribute(const c8* attributeName, core::rect<s32> v); | 438 | virtual void setAttribute(const c8* attributeName, core::rect<s32> v); |
439 | 439 | ||
440 | //! Gets an attribute as rectangle | 440 | //! Gets an attribute as rectangle |
441 | //! \param attributeName: Name of the attribute to get. | 441 | //! \param attributeName: Name of the attribute to get. |
442 | //! \return Returns value of the attribute previously set by setAttribute() | 442 | //! \return Returns value of the attribute previously set by setAttribute() |
443 | virtual core::rect<s32> getAttributeAsRect(const c8* attributeName); | 443 | virtual core::rect<s32> getAttributeAsRect(const c8* attributeName); |
444 | 444 | ||
445 | //! Gets an attribute as rectangle | 445 | //! Gets an attribute as rectangle |
446 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 446 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
447 | virtual core::rect<s32> getAttributeAsRect(s32 index); | 447 | virtual core::rect<s32> getAttributeAsRect(s32 index); |
448 | 448 | ||
449 | //! Sets an attribute as rectangle | 449 | //! Sets an attribute as rectangle |
450 | virtual void setAttribute(s32 index, core::rect<s32> v); | 450 | virtual void setAttribute(s32 index, core::rect<s32> v); |
451 | 451 | ||
452 | 452 | ||
453 | /* | 453 | /* |
454 | 454 | ||
455 | Dimension2d Attribute | 455 | Dimension2d Attribute |
456 | 456 | ||
457 | */ | 457 | */ |
458 | 458 | ||
459 | //! Adds an attribute as dimension2d | 459 | //! Adds an attribute as dimension2d |
460 | virtual void addDimension2d(const c8* attributeName, core::dimension2d<u32> value); | 460 | virtual void addDimension2d(const c8* attributeName, core::dimension2d<u32> value); |
461 | 461 | ||
462 | //! Sets an attribute as dimension2d | 462 | //! Sets an attribute as dimension2d |
463 | virtual void setAttribute(const c8* attributeName, core::dimension2d<u32> v); | 463 | virtual void setAttribute(const c8* attributeName, core::dimension2d<u32> v); |
464 | 464 | ||
465 | //! Gets an attribute as dimension2d | 465 | //! Gets an attribute as dimension2d |
466 | //! \param attributeName: Name of the attribute to get. | 466 | //! \param attributeName: Name of the attribute to get. |
467 | //! \return Returns value of the attribute previously set by setAttribute() | 467 | //! \return Returns value of the attribute previously set by setAttribute() |
468 | virtual core::dimension2d<u32> getAttributeAsDimension2d(const c8* attributeName); | 468 | virtual core::dimension2d<u32> getAttributeAsDimension2d(const c8* attributeName); |
469 | 469 | ||
470 | //! Gets an attribute as dimension2d | 470 | //! Gets an attribute as dimension2d |
471 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 471 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
472 | virtual core::dimension2d<u32> getAttributeAsDimension2d(s32 index); | 472 | virtual core::dimension2d<u32> getAttributeAsDimension2d(s32 index); |
473 | 473 | ||
474 | //! Sets an attribute as dimension2d | 474 | //! Sets an attribute as dimension2d |
475 | virtual void setAttribute(s32 index, core::dimension2d<u32> v); | 475 | virtual void setAttribute(s32 index, core::dimension2d<u32> v); |
476 | 476 | ||
477 | 477 | ||
478 | /* | 478 | /* |
479 | 479 | ||
480 | matrix attribute | 480 | matrix attribute |
481 | 481 | ||
482 | */ | 482 | */ |
483 | 483 | ||
484 | //! Adds an attribute as matrix | 484 | //! Adds an attribute as matrix |
485 | virtual void addMatrix(const c8* attributeName, const core::matrix4& v); | 485 | virtual void addMatrix(const c8* attributeName, const core::matrix4& v); |
486 | 486 | ||
487 | //! Sets an attribute as matrix | 487 | //! Sets an attribute as matrix |
488 | virtual void setAttribute(const c8* attributeName, const core::matrix4& v); | 488 | virtual void setAttribute(const c8* attributeName, const core::matrix4& v); |
489 | 489 | ||
490 | //! Gets an attribute as a matrix4 | 490 | //! Gets an attribute as a matrix4 |
491 | //! \param attributeName: Name of the attribute to get. | 491 | //! \param attributeName: Name of the attribute to get. |
492 | //! \return Returns value of the attribute previously set by setAttribute() | 492 | //! \return Returns value of the attribute previously set by setAttribute() |
493 | virtual core::matrix4 getAttributeAsMatrix(const c8* attributeName); | 493 | virtual core::matrix4 getAttributeAsMatrix(const c8* attributeName); |
494 | 494 | ||
495 | //! Gets an attribute as matrix | 495 | //! Gets an attribute as matrix |
496 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 496 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
497 | virtual core::matrix4 getAttributeAsMatrix(s32 index); | 497 | virtual core::matrix4 getAttributeAsMatrix(s32 index); |
498 | 498 | ||
499 | //! Sets an attribute as matrix | 499 | //! Sets an attribute as matrix |
500 | virtual void setAttribute(s32 index, const core::matrix4& v); | 500 | virtual void setAttribute(s32 index, const core::matrix4& v); |
501 | 501 | ||
502 | /* | 502 | /* |
503 | quaternion attribute | 503 | quaternion attribute |
504 | 504 | ||
505 | */ | 505 | */ |
506 | 506 | ||
507 | //! Adds an attribute as quaternion | 507 | //! Adds an attribute as quaternion |
508 | virtual void addQuaternion(const c8* attributeName, core::quaternion v); | 508 | virtual void addQuaternion(const c8* attributeName, core::quaternion v); |
509 | 509 | ||
510 | //! Sets an attribute as quaternion | 510 | //! Sets an attribute as quaternion |
511 | virtual void setAttribute(const c8* attributeName, core::quaternion v); | 511 | virtual void setAttribute(const c8* attributeName, core::quaternion v); |
512 | 512 | ||
513 | //! Gets an attribute as a quaternion | 513 | //! Gets an attribute as a quaternion |
514 | //! \param attributeName: Name of the attribute to get. | 514 | //! \param attributeName: Name of the attribute to get. |
515 | //! \return Returns value of the attribute previously set by setAttribute() | 515 | //! \return Returns value of the attribute previously set by setAttribute() |
516 | virtual core::quaternion getAttributeAsQuaternion(const c8* attributeName); | 516 | virtual core::quaternion getAttributeAsQuaternion(const c8* attributeName); |
517 | 517 | ||
518 | //! Gets an attribute as quaternion | 518 | //! Gets an attribute as quaternion |
519 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 519 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
520 | virtual core::quaternion getAttributeAsQuaternion(s32 index); | 520 | virtual core::quaternion getAttributeAsQuaternion(s32 index); |
521 | 521 | ||
522 | //! Sets an attribute as quaternion | 522 | //! Sets an attribute as quaternion |
523 | virtual void setAttribute(s32 index, core::quaternion v); | 523 | virtual void setAttribute(s32 index, core::quaternion v); |
524 | 524 | ||
525 | /* | 525 | /* |
526 | 526 | ||
527 | 3d bounding box | 527 | 3d bounding box |
528 | 528 | ||
529 | */ | 529 | */ |
530 | 530 | ||
531 | //! Adds an attribute as axis aligned bounding box | 531 | //! Adds an attribute as axis aligned bounding box |
532 | virtual void addBox3d(const c8* attributeName, core::aabbox3df v); | 532 | virtual void addBox3d(const c8* attributeName, core::aabbox3df v); |
533 | 533 | ||
534 | //! Sets an attribute as axis aligned bounding box | 534 | //! Sets an attribute as axis aligned bounding box |
535 | virtual void setAttribute(const c8* attributeName, core::aabbox3df v); | 535 | virtual void setAttribute(const c8* attributeName, core::aabbox3df v); |
536 | 536 | ||
537 | //! Gets an attribute as a axis aligned bounding box | 537 | //! Gets an attribute as a axis aligned bounding box |
538 | //! \param attributeName: Name of the attribute to get. | 538 | //! \param attributeName: Name of the attribute to get. |
539 | //! \return Returns value of the attribute previously set by setAttribute() | 539 | //! \return Returns value of the attribute previously set by setAttribute() |
540 | virtual core::aabbox3df getAttributeAsBox3d(const c8* attributeName); | 540 | virtual core::aabbox3df getAttributeAsBox3d(const c8* attributeName); |
541 | 541 | ||
542 | //! Gets an attribute as axis aligned bounding box | 542 | //! Gets an attribute as axis aligned bounding box |
543 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 543 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
544 | virtual core::aabbox3df getAttributeAsBox3d(s32 index); | 544 | virtual core::aabbox3df getAttributeAsBox3d(s32 index); |
545 | 545 | ||
546 | //! Sets an attribute as axis aligned bounding box | 546 | //! Sets an attribute as axis aligned bounding box |
547 | virtual void setAttribute(s32 index, core::aabbox3df v); | 547 | virtual void setAttribute(s32 index, core::aabbox3df v); |
548 | 548 | ||
549 | /* | 549 | /* |
550 | 550 | ||
551 | plane | 551 | plane |
552 | 552 | ||
553 | */ | 553 | */ |
554 | 554 | ||
555 | //! Adds an attribute as 3d plane | 555 | //! Adds an attribute as 3d plane |
556 | virtual void addPlane3d(const c8* attributeName, core::plane3df v); | 556 | virtual void addPlane3d(const c8* attributeName, core::plane3df v); |
557 | 557 | ||
558 | //! Sets an attribute as 3d plane | 558 | //! Sets an attribute as 3d plane |
559 | virtual void setAttribute(const c8* attributeName, core::plane3df v); | 559 | virtual void setAttribute(const c8* attributeName, core::plane3df v); |
560 | 560 | ||
561 | //! Gets an attribute as a 3d plane | 561 | //! Gets an attribute as a 3d plane |
562 | //! \param attributeName: Name of the attribute to get. | 562 | //! \param attributeName: Name of the attribute to get. |
563 | //! \return Returns value of the attribute previously set by setAttribute() | 563 | //! \return Returns value of the attribute previously set by setAttribute() |
564 | virtual core::plane3df getAttributeAsPlane3d(const c8* attributeName); | 564 | virtual core::plane3df getAttributeAsPlane3d(const c8* attributeName); |
565 | 565 | ||
566 | //! Gets an attribute as 3d plane | 566 | //! Gets an attribute as 3d plane |
567 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 567 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
568 | virtual core::plane3df getAttributeAsPlane3d(s32 index); | 568 | virtual core::plane3df getAttributeAsPlane3d(s32 index); |
569 | 569 | ||
570 | //! Sets an attribute as 3d plane | 570 | //! Sets an attribute as 3d plane |
571 | virtual void setAttribute(s32 index, core::plane3df v); | 571 | virtual void setAttribute(s32 index, core::plane3df v); |
572 | 572 | ||
573 | 573 | ||
574 | /* | 574 | /* |
575 | 575 | ||
576 | 3d triangle | 576 | 3d triangle |
577 | 577 | ||
578 | */ | 578 | */ |
579 | 579 | ||
580 | //! Adds an attribute as 3d triangle | 580 | //! Adds an attribute as 3d triangle |
581 | virtual void addTriangle3d(const c8* attributeName, core::triangle3df v); | 581 | virtual void addTriangle3d(const c8* attributeName, core::triangle3df v); |
582 | 582 | ||
583 | //! Sets an attribute as 3d trianle | 583 | //! Sets an attribute as 3d trianle |
584 | virtual void setAttribute(const c8* attributeName, core::triangle3df v); | 584 | virtual void setAttribute(const c8* attributeName, core::triangle3df v); |
585 | 585 | ||
586 | //! Gets an attribute as a 3d triangle | 586 | //! Gets an attribute as a 3d triangle |
587 | //! \param attributeName: Name of the attribute to get. | 587 | //! \param attributeName: Name of the attribute to get. |
588 | //! \return Returns value of the attribute previously set by setAttribute() | 588 | //! \return Returns value of the attribute previously set by setAttribute() |
589 | virtual core::triangle3df getAttributeAsTriangle3d(const c8* attributeName); | 589 | virtual core::triangle3df getAttributeAsTriangle3d(const c8* attributeName); |
590 | 590 | ||
591 | //! Gets an attribute as 3d triangle | 591 | //! Gets an attribute as 3d triangle |
592 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 592 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
593 | virtual core::triangle3df getAttributeAsTriangle3d(s32 index); | 593 | virtual core::triangle3df getAttributeAsTriangle3d(s32 index); |
594 | 594 | ||
595 | //! Sets an attribute as 3d triangle | 595 | //! Sets an attribute as 3d triangle |
596 | virtual void setAttribute(s32 index, core::triangle3df v); | 596 | virtual void setAttribute(s32 index, core::triangle3df v); |
597 | 597 | ||
598 | 598 | ||
599 | /* | 599 | /* |
600 | 600 | ||
601 | line 2d | 601 | line 2d |
602 | 602 | ||
603 | */ | 603 | */ |
604 | 604 | ||
605 | //! Adds an attribute as a 2d line | 605 | //! Adds an attribute as a 2d line |
606 | virtual void addLine2d(const c8* attributeName, core::line2df v); | 606 | virtual void addLine2d(const c8* attributeName, core::line2df v); |
607 | 607 | ||
608 | //! Sets an attribute as a 2d line | 608 | //! Sets an attribute as a 2d line |
609 | virtual void setAttribute(const c8* attributeName, core::line2df v); | 609 | virtual void setAttribute(const c8* attributeName, core::line2df v); |
610 | 610 | ||
611 | //! Gets an attribute as a 2d line | 611 | //! Gets an attribute as a 2d line |
612 | //! \param attributeName: Name of the attribute to get. | 612 | //! \param attributeName: Name of the attribute to get. |
613 | //! \return Returns value of the attribute previously set by setAttribute() | 613 | //! \return Returns value of the attribute previously set by setAttribute() |
614 | virtual core::line2df getAttributeAsLine2d(const c8* attributeName); | 614 | virtual core::line2df getAttributeAsLine2d(const c8* attributeName); |
615 | 615 | ||
616 | //! Gets an attribute as a 2d line | 616 | //! Gets an attribute as a 2d line |
617 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 617 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
618 | virtual core::line2df getAttributeAsLine2d(s32 index); | 618 | virtual core::line2df getAttributeAsLine2d(s32 index); |
619 | 619 | ||
620 | //! Sets an attribute as a 2d line | 620 | //! Sets an attribute as a 2d line |
621 | virtual void setAttribute(s32 index, core::line2df v); | 621 | virtual void setAttribute(s32 index, core::line2df v); |
622 | 622 | ||
623 | 623 | ||
624 | /* | 624 | /* |
625 | 625 | ||
626 | line 3d | 626 | line 3d |
627 | 627 | ||
628 | */ | 628 | */ |
629 | 629 | ||
630 | //! Adds an attribute as a 3d line | 630 | //! Adds an attribute as a 3d line |
631 | virtual void addLine3d(const c8* attributeName, core::line3df v); | 631 | virtual void addLine3d(const c8* attributeName, core::line3df v); |
632 | 632 | ||
633 | //! Sets an attribute as a 3d line | 633 | //! Sets an attribute as a 3d line |
634 | virtual void setAttribute(const c8* attributeName, core::line3df v); | 634 | virtual void setAttribute(const c8* attributeName, core::line3df v); |
635 | 635 | ||
636 | //! Gets an attribute as a 3d line | 636 | //! Gets an attribute as a 3d line |
637 | //! \param attributeName: Name of the attribute to get. | 637 | //! \param attributeName: Name of the attribute to get. |
638 | //! \return Returns value of the attribute previously set by setAttribute() | 638 | //! \return Returns value of the attribute previously set by setAttribute() |
639 | virtual core::line3df getAttributeAsLine3d(const c8* attributeName); | 639 | virtual core::line3df getAttributeAsLine3d(const c8* attributeName); |
640 | 640 | ||
641 | //! Gets an attribute as a 3d line | 641 | //! Gets an attribute as a 3d line |
642 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 642 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
643 | virtual core::line3df getAttributeAsLine3d(s32 index); | 643 | virtual core::line3df getAttributeAsLine3d(s32 index); |
644 | 644 | ||
645 | //! Sets an attribute as a 3d line | 645 | //! Sets an attribute as a 3d line |
646 | virtual void setAttribute(s32 index, core::line3df v); | 646 | virtual void setAttribute(s32 index, core::line3df v); |
647 | 647 | ||
648 | 648 | ||
649 | /* | 649 | /* |
650 | 650 | ||
651 | Texture Attribute | 651 | Texture Attribute |
652 | 652 | ||
653 | */ | 653 | */ |
654 | 654 | ||
655 | //! Adds an attribute as texture reference | 655 | //! Adds an attribute as texture reference |
656 | virtual void addTexture(const c8* attributeName, video::ITexture* texture, const io::path& filename = ""); | 656 | virtual void addTexture(const c8* attributeName, video::ITexture* texture, const io::path& filename = ""); |
657 | 657 | ||
658 | //! Sets an attribute as texture reference | 658 | //! Sets an attribute as texture reference |
659 | virtual void setAttribute(const c8* attributeName, video::ITexture* texture, const io::path& filename = ""); | 659 | virtual void setAttribute(const c8* attributeName, video::ITexture* texture, const io::path& filename = ""); |
660 | 660 | ||
661 | //! Gets an attribute as texture reference | 661 | //! Gets an attribute as texture reference |
662 | //! \param attributeName: Name of the attribute to get. | 662 | //! \param attributeName: Name of the attribute to get. |
663 | virtual video::ITexture* getAttributeAsTexture(const c8* attributeName); | 663 | virtual video::ITexture* getAttributeAsTexture(const c8* attributeName); |
664 | 664 | ||
665 | //! Gets an attribute as texture reference | 665 | //! Gets an attribute as texture reference |
666 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 666 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
667 | virtual video::ITexture* getAttributeAsTexture(s32 index); | 667 | virtual video::ITexture* getAttributeAsTexture(s32 index); |
668 | 668 | ||
669 | //! Sets an attribute as texture reference | 669 | //! Sets an attribute as texture reference |
670 | virtual void setAttribute(s32 index, video::ITexture* texture, const io::path& filename = ""); | 670 | virtual void setAttribute(s32 index, video::ITexture* texture, const io::path& filename = ""); |
671 | 671 | ||
672 | 672 | ||
673 | 673 | ||
674 | /* | 674 | /* |
675 | 675 | ||
676 | User Pointer Attribute | 676 | User Pointer Attribute |
677 | 677 | ||
678 | */ | 678 | */ |
679 | 679 | ||
680 | //! Adds an attribute as user pointner | 680 | //! Adds an attribute as user pointner |
681 | virtual void addUserPointer(const c8* attributeName, void* userPointer); | 681 | virtual void addUserPointer(const c8* attributeName, void* userPointer); |
682 | 682 | ||
683 | //! Sets an attribute as user pointer | 683 | //! Sets an attribute as user pointer |
684 | virtual void setAttribute(const c8* attributeName, void* userPointer); | 684 | virtual void setAttribute(const c8* attributeName, void* userPointer); |
685 | 685 | ||
686 | //! Gets an attribute as user pointer | 686 | //! Gets an attribute as user pointer |
687 | //! \param attributeName: Name of the attribute to get. | 687 | //! \param attributeName: Name of the attribute to get. |
688 | virtual void* getAttributeAsUserPointer(const c8* attributeName); | 688 | virtual void* getAttributeAsUserPointer(const c8* attributeName); |
689 | 689 | ||
690 | //! Gets an attribute as user pointer | 690 | //! Gets an attribute as user pointer |
691 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. | 691 | //! \param index: Index value, must be between 0 and getAttributeCount()-1. |
692 | virtual void* getAttributeAsUserPointer(s32 index); | 692 | virtual void* getAttributeAsUserPointer(s32 index); |
693 | 693 | ||
694 | //! Sets an attribute as user pointer | 694 | //! Sets an attribute as user pointer |
695 | virtual void setAttribute(s32 index, void* userPointer); | 695 | virtual void setAttribute(s32 index, void* userPointer); |
696 | 696 | ||
697 | protected: | 697 | protected: |
698 | 698 | ||
699 | void readAttributeFromXML(io::IXMLReader* reader); | 699 | void readAttributeFromXML(io::IXMLReader* reader); |
700 | 700 | ||
701 | core::array<IAttribute*> Attributes; | 701 | core::array<IAttribute*> Attributes; |
702 | 702 | ||
703 | IAttribute* getAttributeP(const c8* attributeName) const; | 703 | IAttribute* getAttributeP(const c8* attributeName) const; |
704 | 704 | ||
705 | video::IVideoDriver* Driver; | 705 | video::IVideoDriver* Driver; |
706 | }; | 706 | }; |
707 | 707 | ||
708 | } // end namespace io | 708 | } // end namespace io |
709 | } // end namespace irr | 709 | } // end namespace irr |
710 | 710 | ||
711 | #endif | 711 | #endif |
712 | 712 | ||