aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/libraries/irrlicht-1.8/source/Irrlicht/IAttribute.h
diff options
context:
space:
mode:
Diffstat (limited to 'libraries/irrlicht-1.8/source/Irrlicht/IAttribute.h')
-rw-r--r--libraries/irrlicht-1.8/source/Irrlicht/IAttribute.h107
1 files changed, 107 insertions, 0 deletions
diff --git a/libraries/irrlicht-1.8/source/Irrlicht/IAttribute.h b/libraries/irrlicht-1.8/source/Irrlicht/IAttribute.h
new file mode 100644
index 0000000..69d499f
--- /dev/null
+++ b/libraries/irrlicht-1.8/source/Irrlicht/IAttribute.h
@@ -0,0 +1,107 @@
1// Copyright (C) 2002-2012 Nikolaus Gebhardt
2// This file is part of the "Irrlicht Engine".
3// For conditions of distribution and use, see copyright notice in irrlicht.h
4
5#ifndef __I_ATTRIBUTE_H_INCLUDED__
6#define __I_ATTRIBUTE_H_INCLUDED__
7
8#include "IReferenceCounted.h"
9#include "SColor.h"
10#include "vector3d.h"
11#include "vector2d.h"
12#include "line2d.h"
13#include "line3d.h"
14#include "triangle3d.h"
15#include "position2d.h"
16#include "rect.h"
17#include "dimension2d.h"
18#include "matrix4.h"
19#include "quaternion.h"
20#include "plane3d.h"
21#include "triangle3d.h"
22#include "line2d.h"
23#include "line3d.h"
24#include "irrString.h"
25#include "irrArray.h"
26#include "EAttributes.h"
27
28
29namespace irr
30{
31namespace io
32{
33
34class IAttribute : public virtual IReferenceCounted
35{
36public:
37
38 virtual ~IAttribute() {};
39
40 virtual s32 getInt() { return 0; }
41 virtual f32 getFloat() { return 0; }
42 virtual video::SColorf getColorf() { return video::SColorf(1.0f,1.0f,1.0f,1.0f); }
43 virtual video::SColor getColor() { return video::SColor(255,255,255,255); }
44 virtual core::stringc getString() { return core::stringc(getStringW().c_str()); }
45 virtual core::stringw getStringW() { return core::stringw(); }
46 virtual core::array<core::stringw> getArray() { return core::array<core::stringw>(); };
47 virtual bool getBool() { return false; }
48 virtual void getBinary(void* outdata, s32 maxLength) {};
49 virtual core::vector3df getVector() { return core::vector3df(); }
50 virtual core::position2di getPosition() { return core::position2di(); }
51 virtual core::rect<s32> getRect() { return core::rect<s32>(); }
52 virtual core::quaternion getQuaternion(){ return core::quaternion(); }
53 virtual core::matrix4 getMatrix() { return core::matrix4(); }
54 virtual core::triangle3df getTriangle() { return core::triangle3df(); }
55 virtual core::vector2df getVector2d() { return core::vector2df(); }
56 virtual core::vector2di getVector2di() { return core::vector2di(); }
57 virtual core::line2df getLine2d() { return core::line2df(); }
58 virtual core::line2di getLine2di() { return core::line2di(); }
59 virtual core::line3df getLine3d() { return core::line3df(); }
60 virtual core::line3di getLine3di() { return core::line3di(); }
61 virtual core::dimension2du getDimension2d() { return core::dimension2du(); }
62 virtual core::aabbox3d<f32> getBBox() { return core::aabbox3d<f32>(); }
63 virtual core::plane3df getPlane() { return core::plane3df(); }
64
65 virtual video::ITexture* getTexture() { return 0; }
66 virtual const char* getEnum() { return 0; }
67 virtual void* getUserPointer() { return 0; }
68
69 virtual void setInt(s32 intValue) {};
70 virtual void setFloat(f32 floatValue) {};
71 virtual void setString(const char* text) {};
72 virtual void setString(const wchar_t* text){ setString(core::stringc(text).c_str()); };
73 virtual void setArray(const core::array<core::stringw>& arr ) {};
74 virtual void setColor(video::SColorf color) {};
75 virtual void setColor(video::SColor color) {};
76 virtual void setBool(bool boolValue) {};
77 virtual void setBinary(void* data, s32 maxLenght) {};
78 virtual void setVector(core::vector3df v) {};
79 virtual void setPosition(core::position2di v) {};
80 virtual void setRect(core::rect<s32> v) {};
81 virtual void setQuaternion(core::quaternion v) {};
82 virtual void setMatrix(core::matrix4 v) {};
83 virtual void setTriangle(core::triangle3df v) {};
84 virtual void setVector2d(core::vector2df v) {};
85 virtual void setVector2d(core::vector2di v) {};
86 virtual void setLine2d(core::line2df v) {};
87 virtual void setLine2d(core::line2di v) {};
88 virtual void setLine3d(core::line3df v) {};
89 virtual void setLine3d(core::line3di v) {};
90 virtual void setDimension2d(core::dimension2du v) {};
91 virtual void setBBox(core::aabbox3d<f32> v) {};
92 virtual void setPlane(core::plane3df v) {};
93 virtual void setUserPointer(void* v) {};
94
95 virtual void setEnum(const char* enumValue, const char* const* enumerationLiterals) {};
96 virtual void setTexture(video::ITexture*, const path& filename) {};
97
98 core::stringc Name;
99
100 virtual E_ATTRIBUTE_TYPE getType() const = 0;
101 virtual const wchar_t* getTypeString() const = 0;
102};
103
104} // end namespace io
105} // end namespace irr
106
107#endif