aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/others/irrlicht-1.8.1/doc/html/_i_scene_node_8h_source.html
diff options
context:
space:
mode:
Diffstat (limited to 'src/others/irrlicht-1.8.1/doc/html/_i_scene_node_8h_source.html')
-rw-r--r--src/others/irrlicht-1.8.1/doc/html/_i_scene_node_8h_source.html777
1 files changed, 777 insertions, 0 deletions
diff --git a/src/others/irrlicht-1.8.1/doc/html/_i_scene_node_8h_source.html b/src/others/irrlicht-1.8.1/doc/html/_i_scene_node_8h_source.html
new file mode 100644
index 0000000..99c3d81
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/doc/html/_i_scene_node_8h_source.html
@@ -0,0 +1,777 @@
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml">
3<head>
4<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5<title>Irrlicht 3D Engine: ISceneNode.h Source File</title>
6
7<link href="tabs.css" rel="stylesheet" type="text/css"/>
8<link href="doxygen.css" rel="stylesheet" type="text/css" />
9<link href="navtree.css" rel="stylesheet" type="text/css"/>
10<script type="text/javascript" src="jquery.js"></script>
11<script type="text/javascript" src="resize.js"></script>
12<script type="text/javascript" src="navtree.js"></script>
13<script type="text/javascript">
14 $(document).ready(initResizable);
15</script>
16<link href="search/search.css" rel="stylesheet" type="text/css"/>
17<script type="text/javascript" src="search/search.js"></script>
18<script type="text/javascript">
19 $(document).ready(function() { searchBox.OnSelectItem(0); });
20</script>
21
22</head>
23<body>
24<div id="top"><!-- do not remove this div! -->
25
26
27<div id="titlearea">
28<table cellspacing="0" cellpadding="0">
29 <tbody>
30 <tr style="height: 56px;">
31
32 <td id="projectlogo"><img alt="Logo" src="irrlichtlogo.png"/></td>
33
34
35 <td style="padding-left: 0.5em;">
36 <div id="projectname">Irrlicht 3D Engine
37
38 </div>
39
40 </td>
41
42
43
44
45 <td> <div id="MSearchBox" class="MSearchBoxInactive">
46 <span class="left">
47 <img id="MSearchSelect" src="search/mag_sel.png"
48 onmouseover="return searchBox.OnSearchSelectShow()"
49 onmouseout="return searchBox.OnSearchSelectHide()"
50 alt=""/>
51 <input type="text" id="MSearchField" value="Search" accesskey="S"
52 onfocus="searchBox.OnSearchFieldFocus(true)"
53 onblur="searchBox.OnSearchFieldFocus(false)"
54 onkeyup="searchBox.OnSearchFieldChange(event)"/>
55 </span><span class="right">
56 <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
57 </span>
58 </div>
59</td>
60
61
62 </tr>
63 </tbody>
64</table>
65</div>
66
67<!-- Generated by Doxygen 1.7.5.1 -->
68<script type="text/javascript">
69var searchBox = new SearchBox("searchBox", "search",false,'Search');
70</script>
71<script type="text/javascript" src="dynsections.js"></script>
72</div>
73<div id="side-nav" class="ui-resizable side-nav-resizable">
74 <div id="nav-tree">
75 <div id="nav-tree-contents">
76 </div>
77 </div>
78 <div id="splitbar" style="-moz-user-select:none;"
79 class="ui-resizable-handle">
80 </div>
81</div>
82<script type="text/javascript">
83 initNavTree('_i_scene_node_8h.html','');
84</script>
85<div id="doc-content">
86<div class="header">
87 <div class="headertitle">
88<div class="title">ISceneNode.h</div> </div>
89</div>
90<div class="contents">
91<a href="_i_scene_node_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// Copyright (C) 2002-2012 Nikolaus Gebhardt</span>
92<a name="l00002"></a>00002 <span class="comment">// This file is part of the &quot;Irrlicht Engine&quot;.</span>
93<a name="l00003"></a>00003 <span class="comment">// For conditions of distribution and use, see copyright notice in irrlicht.h</span>
94<a name="l00004"></a>00004
95<a name="l00005"></a>00005 <span class="preprocessor">#ifndef __I_SCENE_NODE_H_INCLUDED__</span>
96<a name="l00006"></a>00006 <span class="preprocessor"></span><span class="preprocessor">#define __I_SCENE_NODE_H_INCLUDED__</span>
97<a name="l00007"></a>00007 <span class="preprocessor"></span>
98<a name="l00008"></a>00008 <span class="preprocessor">#include &quot;<a class="code" href="_i_attribute_exchanging_object_8h.html">IAttributeExchangingObject.h</a>&quot;</span>
99<a name="l00009"></a>00009 <span class="preprocessor">#include &quot;<a class="code" href="_e_scene_node_types_8h.html">ESceneNodeTypes.h</a>&quot;</span>
100<a name="l00010"></a>00010 <span class="preprocessor">#include &quot;<a class="code" href="_e_culling_types_8h.html">ECullingTypes.h</a>&quot;</span>
101<a name="l00011"></a>00011 <span class="preprocessor">#include &quot;<a class="code" href="_e_debug_scene_types_8h.html">EDebugSceneTypes.h</a>&quot;</span>
102<a name="l00012"></a>00012 <span class="preprocessor">#include &quot;<a class="code" href="_i_scene_node_animator_8h.html">ISceneNodeAnimator.h</a>&quot;</span>
103<a name="l00013"></a>00013 <span class="preprocessor">#include &quot;<a class="code" href="_i_triangle_selector_8h.html">ITriangleSelector.h</a>&quot;</span>
104<a name="l00014"></a>00014 <span class="preprocessor">#include &quot;<a class="code" href="_s_material_8h.html">SMaterial.h</a>&quot;</span>
105<a name="l00015"></a>00015 <span class="preprocessor">#include &quot;<a class="code" href="irr_string_8h.html">irrString.h</a>&quot;</span>
106<a name="l00016"></a>00016 <span class="preprocessor">#include &quot;<a class="code" href="aabbox3d_8h.html">aabbox3d.h</a>&quot;</span>
107<a name="l00017"></a>00017 <span class="preprocessor">#include &quot;<a class="code" href="matrix4_8h.html">matrix4.h</a>&quot;</span>
108<a name="l00018"></a>00018 <span class="preprocessor">#include &quot;<a class="code" href="irr_list_8h.html">irrList.h</a>&quot;</span>
109<a name="l00019"></a>00019 <span class="preprocessor">#include &quot;<a class="code" href="_i_attributes_8h.html">IAttributes.h</a>&quot;</span>
110<a name="l00020"></a>00020
111<a name="l00021"></a>00021 <span class="keyword">namespace </span>irr
112<a name="l00022"></a>00022 {
113<a name="l00023"></a>00023 <span class="keyword">namespace </span>scene
114<a name="l00024"></a>00024 {
115<a name="l00025"></a><a class="code" href="namespaceirr_1_1scene.html#ac141e7443ace16ce06c0a092c6fc4fbc">00025</a> <span class="keyword">class </span><a class="code" href="classirr_1_1scene_1_1_i_scene_manager.html" title="The Scene Manager manages scene nodes, mesh recources, cameras and all the other stuff.">ISceneManager</a>;
116<a name="l00026"></a>00026
117<a name="l00028"></a>00028 <span class="keyword">typedef</span> <a class="code" href="classirr_1_1core_1_1list.html">core::list&lt;ISceneNode*&gt;</a> <a class="code" href="namespaceirr_1_1scene.html#ac141e7443ace16ce06c0a092c6fc4fbc" title="Typedef for list of scene nodes.">ISceneNodeList</a>;
118<a name="l00030"></a><a class="code" href="namespaceirr_1_1scene.html#a4699e14043e59f91c454ffc13edd953c">00030</a> <span class="keyword">typedef</span> <a class="code" href="classirr_1_1core_1_1list.html">core::list&lt;ISceneNodeAnimator*&gt;</a> <a class="code" href="namespaceirr_1_1scene.html#a4699e14043e59f91c454ffc13edd953c" title="Typedef for list of scene node animators.">ISceneNodeAnimatorList</a>;
119<a name="l00031"></a>00031
120<a name="l00033"></a>00033
121<a name="l00040"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html">00040</a> <span class="keyword">class </span><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html" title="Scene node interface.">ISceneNode</a> : <span class="keyword">virtual</span> <span class="keyword">public</span> io::IAttributeExchangingObject
122<a name="l00041"></a>00041 {
123<a name="l00042"></a>00042 <span class="keyword">public</span>:
124<a name="l00043"></a>00043
125<a name="l00045"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a9894d951df2f720924f891e0a7b9fac2">00045</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a9894d951df2f720924f891e0a7b9fac2" title="Constructor.">ISceneNode</a>(<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html" title="Scene node interface.">ISceneNode</a>* parent, <a class="code" href="classirr_1_1scene_1_1_i_scene_manager.html" title="The Scene Manager manages scene nodes, mesh recources, cameras and all the other stuff.">ISceneManager</a>* mgr, <a class="code" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6" title="32 bit signed variable.">s32</a> <span class="keywordtype">id</span>=-1,
126<a name="l00046"></a>00046 <span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a>&amp; position = <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a>(0,0,0),
127<a name="l00047"></a>00047 <span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a>&amp; rotation = <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a>(0,0,0),
128<a name="l00048"></a>00048 <span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a>&amp; scale = <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a>(1.0f, 1.0f, 1.0f))
129<a name="l00049"></a>00049 : <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d8af3d0185a787209b7be576a411281" title="Relative translation of the scene node.">RelativeTranslation</a>(position), <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a83fef4c36dcab69bbf94cf6e3e1323e1" title="Relative rotation of the scene node.">RelativeRotation</a>(rotation), <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a76e41eb5e7a5baf51350ec627a458a3d" title="Relative scale of the scene node.">RelativeScale</a>(scale),
130<a name="l00050"></a>00050 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a145c14ca15ce98bea683a36142f1b045" title="Pointer to the parent.">Parent</a>(0), <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a062a201ee9b870398fe5aa8f36ce54a5" title="Pointer to the scene manager.">SceneManager</a>(mgr), <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ad622b3f366243e146b3b4cbe81b468ab" title="Pointer to the triangle selector.">TriangleSelector</a>(0), <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a001b5cf9866fae4092b9b2cc89f3ebef" title="ID of the node.">ID</a>(id),
131<a name="l00051"></a>00051 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a0906d6df682ef3b1cbbe117907c0b995" title="Automatic culling state.">AutomaticCullingState</a>(<a class="code" href="namespaceirr_1_1scene.html#acabb2772476aa3706e65a7dc77fd9ccea28580fa38fb38096fdf29555d2488ff6">EAC_BOX</a>), <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a223a66d82d1c56e5f3730aeb9f83589c" title="Flag if debug data should be drawn, such as Bounding Boxes.">DebugDataVisible</a>(<a class="code" href="namespaceirr_1_1scene.html#a52b664c4c988113735042b168fc32dbea25111b15f03bee9a99498737286916dc" title="No Debug Data ( Default )">EDS_OFF</a>),
132<a name="l00052"></a>00052 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aa834128c57215457914ef46d9b18cc5e" title="Is the node visible?">IsVisible</a>(true), <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a8f1ba7c5e77eecc2adc6d12df0d27dd6" title="Is debug object?">IsDebugObject</a>(false)
133<a name="l00053"></a>00053 {
134<a name="l00054"></a>00054 <span class="keywordflow">if</span> (parent)
135<a name="l00055"></a>00055 parent-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#acceef4fbb68f6cc7bb40035225350970" title="Adds a child to this scene node.">addChild</a>(<span class="keyword">this</span>);
136<a name="l00056"></a>00056
137<a name="l00057"></a>00057 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aeb6e0dc034bb2101600ce87acbcf0f6e" title="Updates the absolute position based on the relative and the parents position.">updateAbsolutePosition</a>();
138<a name="l00058"></a>00058 }
139<a name="l00059"></a>00059
140<a name="l00060"></a>00060
141<a name="l00062"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a3064ed436d731f072e55873577724fbc">00062</a> <span class="keyword">virtual</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a3064ed436d731f072e55873577724fbc" title="Destructor.">~ISceneNode</a>()
142<a name="l00063"></a>00063 {
143<a name="l00064"></a>00064 <span class="comment">// delete all children</span>
144<a name="l00065"></a>00065 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a348767bb5b9262d997067c50e079e5be" title="Removes all children of this scene node.">removeAll</a>();
145<a name="l00066"></a>00066
146<a name="l00067"></a>00067 <span class="comment">// delete all animators</span>
147<a name="l00068"></a>00068 ISceneNodeAnimatorList::Iterator ait = <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a80dce48a13d9bdc6466613f27a33f348" title="List of all animator nodes.">Animators</a>.<a class="code" href="classirr_1_1core_1_1list.html#aebd05a0f5e5ead6e1d5b6e3973da8039" title="Gets first node.">begin</a>();
148<a name="l00069"></a>00069 <span class="keywordflow">for</span> (; ait != <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a80dce48a13d9bdc6466613f27a33f348" title="List of all animator nodes.">Animators</a>.<a class="code" href="classirr_1_1core_1_1list.html#aa80509dac5224fa57cc548e39480a115" title="Gets end node.">end</a>(); ++ait)
149<a name="l00070"></a>00070 (*ait)-&gt;drop();
150<a name="l00071"></a>00071
151<a name="l00072"></a>00072 <span class="keywordflow">if</span> (<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ad622b3f366243e146b3b4cbe81b468ab" title="Pointer to the triangle selector.">TriangleSelector</a>)
152<a name="l00073"></a>00073 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ad622b3f366243e146b3b4cbe81b468ab" title="Pointer to the triangle selector.">TriangleSelector</a>-&gt;<a class="code" href="classirr_1_1_i_reference_counted.html#afb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">drop</a>();
153<a name="l00074"></a>00074 }
154<a name="l00075"></a>00075
155<a name="l00076"></a>00076
156<a name="l00078"></a>00078
157<a name="l00091"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ac9795bfcb88dcaf8cba6ea3296e5d8d0">00091</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ac9795bfcb88dcaf8cba6ea3296e5d8d0" title="This method is called just before the rendering process of the whole scene.">OnRegisterSceneNode</a>()
158<a name="l00092"></a>00092 {
159<a name="l00093"></a>00093 <span class="keywordflow">if</span> (<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aa834128c57215457914ef46d9b18cc5e" title="Is the node visible?">IsVisible</a>)
160<a name="l00094"></a>00094 {
161<a name="l00095"></a>00095 ISceneNodeList::Iterator it = <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>.<a class="code" href="classirr_1_1core_1_1list.html#aebd05a0f5e5ead6e1d5b6e3973da8039" title="Gets first node.">begin</a>();
162<a name="l00096"></a>00096 <span class="keywordflow">for</span> (; it != <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>.<a class="code" href="classirr_1_1core_1_1list.html#aa80509dac5224fa57cc548e39480a115" title="Gets end node.">end</a>(); ++it)
163<a name="l00097"></a>00097 (*it)-&gt;OnRegisterSceneNode();
164<a name="l00098"></a>00098 }
165<a name="l00099"></a>00099 }
166<a name="l00100"></a>00100
167<a name="l00101"></a>00101
168<a name="l00103"></a>00103
169<a name="l00108"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#afc1dcb5cb19116d0c7aa3d4ebdf04cc5">00108</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#afc1dcb5cb19116d0c7aa3d4ebdf04cc5" title="OnAnimate() is called just before rendering the whole scene.">OnAnimate</a>(<a class="code" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32</a> timeMs)
170<a name="l00109"></a>00109 {
171<a name="l00110"></a>00110 <span class="keywordflow">if</span> (<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aa834128c57215457914ef46d9b18cc5e" title="Is the node visible?">IsVisible</a>)
172<a name="l00111"></a>00111 {
173<a name="l00112"></a>00112 <span class="comment">// animate this node with all animators</span>
174<a name="l00113"></a>00113
175<a name="l00114"></a>00114 ISceneNodeAnimatorList::Iterator ait = <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a80dce48a13d9bdc6466613f27a33f348" title="List of all animator nodes.">Animators</a>.<a class="code" href="classirr_1_1core_1_1list.html#aebd05a0f5e5ead6e1d5b6e3973da8039" title="Gets first node.">begin</a>();
176<a name="l00115"></a>00115 <span class="keywordflow">while</span> (ait != <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a80dce48a13d9bdc6466613f27a33f348" title="List of all animator nodes.">Animators</a>.<a class="code" href="classirr_1_1core_1_1list.html#aa80509dac5224fa57cc548e39480a115" title="Gets end node.">end</a>())
177<a name="l00116"></a>00116 {
178<a name="l00117"></a>00117 <span class="comment">// continue to the next node before calling animateNode()</span>
179<a name="l00118"></a>00118 <span class="comment">// so that the animator may remove itself from the scene</span>
180<a name="l00119"></a>00119 <span class="comment">// node without the iterator becoming invalid</span>
181<a name="l00120"></a>00120 <a class="code" href="classirr_1_1scene_1_1_i_scene_node_animator.html" title="Animates a scene node. Can animate position, rotation, material, and so on.">ISceneNodeAnimator</a>* anim = *ait;
182<a name="l00121"></a>00121 ++ait;
183<a name="l00122"></a>00122 anim-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node_animator.html#ab2170d133db16de148d0f6841c06bc84" title="Animates a scene node.">animateNode</a>(<span class="keyword">this</span>, timeMs);
184<a name="l00123"></a>00123 }
185<a name="l00124"></a>00124
186<a name="l00125"></a>00125 <span class="comment">// update absolute position</span>
187<a name="l00126"></a>00126 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aeb6e0dc034bb2101600ce87acbcf0f6e" title="Updates the absolute position based on the relative and the parents position.">updateAbsolutePosition</a>();
188<a name="l00127"></a>00127
189<a name="l00128"></a>00128 <span class="comment">// perform the post render process on all children</span>
190<a name="l00129"></a>00129
191<a name="l00130"></a>00130 ISceneNodeList::Iterator it = <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>.<a class="code" href="classirr_1_1core_1_1list.html#aebd05a0f5e5ead6e1d5b6e3973da8039" title="Gets first node.">begin</a>();
192<a name="l00131"></a>00131 <span class="keywordflow">for</span> (; it != <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>.<a class="code" href="classirr_1_1core_1_1list.html#aa80509dac5224fa57cc548e39480a115" title="Gets end node.">end</a>(); ++it)
193<a name="l00132"></a>00132 (*it)-&gt;OnAnimate(timeMs);
194<a name="l00133"></a>00133 }
195<a name="l00134"></a>00134 }
196<a name="l00135"></a>00135
197<a name="l00136"></a>00136
198<a name="l00138"></a>00138 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aff530cc4856792101d0aedee51ce35fa" title="Renders the node.">render</a>() = 0;
199<a name="l00139"></a>00139
200<a name="l00140"></a>00140
201<a name="l00142"></a>00142
202<a name="l00143"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aabb3b657d0afb62994399181b952f3e3">00143</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="namespaceirr.html#a9395eaea339bcb546b319e9c96bf7410" title="8 bit character variable.">c8</a>* <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aabb3b657d0afb62994399181b952f3e3" title="Returns the name of the node.">getName</a>()<span class="keyword"> const</span>
203<a name="l00144"></a>00144 <span class="keyword"> </span>{
204<a name="l00145"></a>00145 <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2527ec038f7e400fc141efa7fdc6327b" title="Name of the scene node.">Name</a>.<a class="code" href="classirr_1_1core_1_1string.html#a4abad222c478c108096ee9297870068c" title="Returns character string.">c_str</a>();
205<a name="l00146"></a>00146 }
206<a name="l00147"></a>00147
207<a name="l00148"></a>00148
208<a name="l00150"></a>00150
209<a name="l00151"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a810a54a2fc178b9a0e731513865f67d0">00151</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a810a54a2fc178b9a0e731513865f67d0" title="Sets the name of the node.">setName</a>(<span class="keyword">const</span> <a class="code" href="namespaceirr.html#a9395eaea339bcb546b319e9c96bf7410" title="8 bit character variable.">c8</a>* name)
210<a name="l00152"></a>00152 {
211<a name="l00153"></a>00153 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2527ec038f7e400fc141efa7fdc6327b" title="Name of the scene node.">Name</a> = name;
212<a name="l00154"></a>00154 }
213<a name="l00155"></a>00155
214<a name="l00156"></a>00156
215<a name="l00158"></a>00158
216<a name="l00159"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a20a22d956974f4817a20663361f20042">00159</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a810a54a2fc178b9a0e731513865f67d0" title="Sets the name of the node.">setName</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1string.html">core::stringc</a>&amp; name)
217<a name="l00160"></a>00160 {
218<a name="l00161"></a>00161 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2527ec038f7e400fc141efa7fdc6327b" title="Name of the scene node.">Name</a> = name;
219<a name="l00162"></a>00162 }
220<a name="l00163"></a>00163
221<a name="l00164"></a>00164
222<a name="l00166"></a>00166
223<a name="l00173"></a>00173 <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1aabbox3d.html">core::aabbox3d&lt;f32&gt;</a>&amp; <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a223f718fc2f4944b5ad28c592f6cc8c6" title="Get the axis aligned, not transformed bounding box of this node.">getBoundingBox</a>() <span class="keyword">const</span> = 0;
224<a name="l00174"></a>00174
225<a name="l00175"></a>00175
226<a name="l00177"></a>00177
227<a name="l00178"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a6b0fce4b4e40b97ac3c1a9779553c716">00178</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1aabbox3d.html">core::aabbox3d&lt;f32&gt;</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a6b0fce4b4e40b97ac3c1a9779553c716" title="Get the axis aligned, transformed and animated absolute bounding box of this node.">getTransformedBoundingBox</a>()<span class="keyword"> const</span>
228<a name="l00179"></a>00179 <span class="keyword"> </span>{
229<a name="l00180"></a>00180 <a class="code" href="classirr_1_1core_1_1aabbox3d.html">core::aabbox3d&lt;f32&gt;</a> box = <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a223f718fc2f4944b5ad28c592f6cc8c6" title="Get the axis aligned, not transformed bounding box of this node.">getBoundingBox</a>();
230<a name="l00181"></a>00181 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aab7d4bc865d0c7ccf361515a154a8cf0" title="Absolute transformation of the node.">AbsoluteTransformation</a>.<a class="code" href="classirr_1_1core_1_1_c_matrix4.html#a87451aea9c07b71d1a8b6091b8cefa63" title="Transforms a axis aligned bounding box.">transformBoxEx</a>(box);
231<a name="l00182"></a>00182 <span class="keywordflow">return</span> box;
232<a name="l00183"></a>00183 }
233<a name="l00184"></a>00184
234<a name="l00185"></a>00185
235<a name="l00187"></a>00187
236<a name="l00193"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a9c46ea82efd7ae30437fb7c385809050">00193</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1_c_matrix4.html" title="4x4 matrix. Mostly used as transformation matrix for 3d calculations.">core::matrix4</a>&amp; <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a9c46ea82efd7ae30437fb7c385809050" title="Get the absolute transformation of the node. Is recalculated every OnAnimate()-call.">getAbsoluteTransformation</a>()<span class="keyword"> const</span>
237<a name="l00194"></a>00194 <span class="keyword"> </span>{
238<a name="l00195"></a>00195 <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aab7d4bc865d0c7ccf361515a154a8cf0" title="Absolute transformation of the node.">AbsoluteTransformation</a>;
239<a name="l00196"></a>00196 }
240<a name="l00197"></a>00197
241<a name="l00198"></a>00198
242<a name="l00200"></a>00200
243<a name="l00204"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#afe701e793852ac8eb4ae7c723aef5b55">00204</a> <span class="keyword">virtual</span> <a class="code" href="classirr_1_1core_1_1_c_matrix4.html" title="4x4 matrix. Mostly used as transformation matrix for 3d calculations.">core::matrix4</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#afe701e793852ac8eb4ae7c723aef5b55" title="Returns the relative transformation of the scene node.">getRelativeTransformation</a>()<span class="keyword"> const</span>
244<a name="l00205"></a>00205 <span class="keyword"> </span>{
245<a name="l00206"></a>00206 <a class="code" href="classirr_1_1core_1_1_c_matrix4.html" title="4x4 matrix. Mostly used as transformation matrix for 3d calculations.">core::matrix4</a> mat;
246<a name="l00207"></a>00207 mat.<a class="code" href="classirr_1_1core_1_1_c_matrix4.html#a8ee5ef8619d4b0f56d72ac84495ed644" title="Make a rotation matrix from Euler angles. The 4th row and column are unmodified.">setRotationDegrees</a>(<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a83fef4c36dcab69bbf94cf6e3e1323e1" title="Relative rotation of the scene node.">RelativeRotation</a>);
247<a name="l00208"></a>00208 mat.<a class="code" href="classirr_1_1core_1_1_c_matrix4.html#ac04a3b341cbfbb7986be682691655622" title="Set the translation of the current matrix. Will erase any previous values.">setTranslation</a>(<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d8af3d0185a787209b7be576a411281" title="Relative translation of the scene node.">RelativeTranslation</a>);
248<a name="l00209"></a>00209
249<a name="l00210"></a>00210 <span class="keywordflow">if</span> (<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a76e41eb5e7a5baf51350ec627a458a3d" title="Relative scale of the scene node.">RelativeScale</a> != <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a>(1.f,1.f,1.f))
250<a name="l00211"></a>00211 {
251<a name="l00212"></a>00212 <a class="code" href="classirr_1_1core_1_1_c_matrix4.html" title="4x4 matrix. Mostly used as transformation matrix for 3d calculations.">core::matrix4</a> smat;
252<a name="l00213"></a>00213 smat.<a class="code" href="classirr_1_1core_1_1_c_matrix4.html#a47117d44419af87e70084c01ab852049" title="Set Scale.">setScale</a>(<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a76e41eb5e7a5baf51350ec627a458a3d" title="Relative scale of the scene node.">RelativeScale</a>);
253<a name="l00214"></a>00214 mat *= smat;
254<a name="l00215"></a>00215 }
255<a name="l00216"></a>00216
256<a name="l00217"></a>00217 <span class="keywordflow">return</span> mat;
257<a name="l00218"></a>00218 }
258<a name="l00219"></a>00219
259<a name="l00220"></a>00220
260<a name="l00222"></a>00222
261<a name="l00226"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1aef4f0feccebcd0d38373beadbc1827">00226</a> <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1aef4f0feccebcd0d38373beadbc1827" title="Returns whether the node should be visible (if all of its parents are visible).">isVisible</a>()<span class="keyword"> const</span>
262<a name="l00227"></a>00227 <span class="keyword"> </span>{
263<a name="l00228"></a>00228 <a class="code" href="irr_types_8h.html#ad19cf45bdc142ef8e4a011cabbc4a4af" title="Defines a small statement to work around a microsoft compiler bug.">_IRR_IMPLEMENT_MANAGED_MARSHALLING_BUGFIX</a>;
264<a name="l00229"></a>00229 <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aa834128c57215457914ef46d9b18cc5e" title="Is the node visible?">IsVisible</a>;
265<a name="l00230"></a>00230 }
266<a name="l00231"></a>00231
267<a name="l00233"></a>00233
268<a name="l00235"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aa7065e757724f61d4a91d25db25c3a2b">00235</a> <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aa7065e757724f61d4a91d25db25c3a2b" title="Check whether the node is truly visible, taking into accounts its parents&#39; visibility.">isTrulyVisible</a>()<span class="keyword"> const</span>
269<a name="l00236"></a>00236 <span class="keyword"> </span>{
270<a name="l00237"></a>00237 <a class="code" href="irr_types_8h.html#ad19cf45bdc142ef8e4a011cabbc4a4af" title="Defines a small statement to work around a microsoft compiler bug.">_IRR_IMPLEMENT_MANAGED_MARSHALLING_BUGFIX</a>;
271<a name="l00238"></a>00238 <span class="keywordflow">if</span>(!<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aa834128c57215457914ef46d9b18cc5e" title="Is the node visible?">IsVisible</a>)
272<a name="l00239"></a>00239 <span class="keywordflow">return</span> <span class="keyword">false</span>;
273<a name="l00240"></a>00240
274<a name="l00241"></a>00241 <span class="keywordflow">if</span>(!<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a145c14ca15ce98bea683a36142f1b045" title="Pointer to the parent.">Parent</a>)
275<a name="l00242"></a>00242 <span class="keywordflow">return</span> <span class="keyword">true</span>;
276<a name="l00243"></a>00243
277<a name="l00244"></a>00244 <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a145c14ca15ce98bea683a36142f1b045" title="Pointer to the parent.">Parent</a>-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aa7065e757724f61d4a91d25db25c3a2b" title="Check whether the node is truly visible, taking into accounts its parents&#39; visibility.">isTrulyVisible</a>();
278<a name="l00245"></a>00245 }
279<a name="l00246"></a>00246
280<a name="l00248"></a>00248
281<a name="l00252"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2e3a88fe87d11caa7986a203afe6838c">00252</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2e3a88fe87d11caa7986a203afe6838c" title="Sets if the node should be visible or not.">setVisible</a>(<span class="keywordtype">bool</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1aef4f0feccebcd0d38373beadbc1827" title="Returns whether the node should be visible (if all of its parents are visible).">isVisible</a>)
282<a name="l00253"></a>00253 {
283<a name="l00254"></a>00254 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aa834128c57215457914ef46d9b18cc5e" title="Is the node visible?">IsVisible</a> = <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1aef4f0feccebcd0d38373beadbc1827" title="Returns whether the node should be visible (if all of its parents are visible).">isVisible</a>;
284<a name="l00255"></a>00255 }
285<a name="l00256"></a>00256
286<a name="l00257"></a>00257
287<a name="l00259"></a>00259
288<a name="l00261"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a8f695e36340a9bb32f7e655fe4c1ea97">00261</a> <span class="keyword">virtual</span> <a class="code" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6" title="32 bit signed variable.">s32</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a8f695e36340a9bb32f7e655fe4c1ea97" title="Get the id of the scene node.">getID</a>()<span class="keyword"> const</span>
289<a name="l00262"></a>00262 <span class="keyword"> </span>{
290<a name="l00263"></a>00263 <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a001b5cf9866fae4092b9b2cc89f3ebef" title="ID of the node.">ID</a>;
291<a name="l00264"></a>00264 }
292<a name="l00265"></a>00265
293<a name="l00266"></a>00266
294<a name="l00268"></a>00268
295<a name="l00270"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ade60c630c4768200b1d15debbd00fe0e">00270</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ade60c630c4768200b1d15debbd00fe0e" title="Sets the id of the scene node.">setID</a>(<a class="code" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6" title="32 bit signed variable.">s32</a> <span class="keywordtype">id</span>)
296<a name="l00271"></a>00271 {
297<a name="l00272"></a>00272 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a001b5cf9866fae4092b9b2cc89f3ebef" title="ID of the node.">ID</a> = id;
298<a name="l00273"></a>00273 }
299<a name="l00274"></a>00274
300<a name="l00275"></a>00275
301<a name="l00277"></a>00277
302<a name="l00280"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#acceef4fbb68f6cc7bb40035225350970">00280</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#acceef4fbb68f6cc7bb40035225350970" title="Adds a child to this scene node.">addChild</a>(<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html" title="Scene node interface.">ISceneNode</a>* child)
303<a name="l00281"></a>00281 {
304<a name="l00282"></a>00282 <span class="keywordflow">if</span> (child &amp;&amp; (child != <span class="keyword">this</span>))
305<a name="l00283"></a>00283 {
306<a name="l00284"></a>00284 <span class="comment">// Change scene manager?</span>
307<a name="l00285"></a>00285 <span class="keywordflow">if</span> (<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a062a201ee9b870398fe5aa8f36ce54a5" title="Pointer to the scene manager.">SceneManager</a> != child-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a062a201ee9b870398fe5aa8f36ce54a5" title="Pointer to the scene manager.">SceneManager</a>)
308<a name="l00286"></a>00286 child-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a513d09ae37f71391d7c4838e29164a3e">setSceneManager</a>(<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a062a201ee9b870398fe5aa8f36ce54a5" title="Pointer to the scene manager.">SceneManager</a>);
309<a name="l00287"></a>00287
310<a name="l00288"></a>00288 child-&gt;<a class="code" href="classirr_1_1_i_reference_counted.html#a2b7a035532e5f409ca9482dab79185f4" title="Grabs the object. Increments the reference counter by one.">grab</a>();
311<a name="l00289"></a>00289 child-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2efa2670e29d6bb33b0dd99403b8b69c" title="Removes this scene node from the scene.">remove</a>(); <span class="comment">// remove from old parent</span>
312<a name="l00290"></a>00290 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>.<a class="code" href="classirr_1_1core_1_1list.html#a0f73ebd87279766f339cb1462c2a24d1" title="Adds an element at the end of the list.">push_back</a>(child);
313<a name="l00291"></a>00291 child-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a145c14ca15ce98bea683a36142f1b045" title="Pointer to the parent.">Parent</a> = <span class="keyword">this</span>;
314<a name="l00292"></a>00292 }
315<a name="l00293"></a>00293 }
316<a name="l00294"></a>00294
317<a name="l00295"></a>00295
318<a name="l00297"></a>00297
319<a name="l00302"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a831e371142fc883c7dd229552e0340de">00302</a> <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a831e371142fc883c7dd229552e0340de" title="Removes a child from this scene node.">removeChild</a>(<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html" title="Scene node interface.">ISceneNode</a>* child)
320<a name="l00303"></a>00303 {
321<a name="l00304"></a>00304 ISceneNodeList::Iterator it = <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>.<a class="code" href="classirr_1_1core_1_1list.html#aebd05a0f5e5ead6e1d5b6e3973da8039" title="Gets first node.">begin</a>();
322<a name="l00305"></a>00305 <span class="keywordflow">for</span> (; it != <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>.<a class="code" href="classirr_1_1core_1_1list.html#aa80509dac5224fa57cc548e39480a115" title="Gets end node.">end</a>(); ++it)
323<a name="l00306"></a>00306 <span class="keywordflow">if</span> ((*it) == child)
324<a name="l00307"></a>00307 {
325<a name="l00308"></a>00308 (*it)-&gt;Parent = 0;
326<a name="l00309"></a>00309 (*it)-&gt;drop();
327<a name="l00310"></a>00310 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>.<a class="code" href="classirr_1_1core_1_1list.html#a407935fc79a35ce7caa19e4f6ce25c3f" title="Erases an element.">erase</a>(it);
328<a name="l00311"></a>00311 <span class="keywordflow">return</span> <span class="keyword">true</span>;
329<a name="l00312"></a>00312 }
330<a name="l00313"></a>00313
331<a name="l00314"></a>00314 <a class="code" href="irr_types_8h.html#ad19cf45bdc142ef8e4a011cabbc4a4af" title="Defines a small statement to work around a microsoft compiler bug.">_IRR_IMPLEMENT_MANAGED_MARSHALLING_BUGFIX</a>;
332<a name="l00315"></a>00315 <span class="keywordflow">return</span> <span class="keyword">false</span>;
333<a name="l00316"></a>00316 }
334<a name="l00317"></a>00317
335<a name="l00318"></a>00318
336<a name="l00320"></a>00320
337<a name="l00323"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a348767bb5b9262d997067c50e079e5be">00323</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a348767bb5b9262d997067c50e079e5be" title="Removes all children of this scene node.">removeAll</a>()
338<a name="l00324"></a>00324 {
339<a name="l00325"></a>00325 ISceneNodeList::Iterator it = <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>.<a class="code" href="classirr_1_1core_1_1list.html#aebd05a0f5e5ead6e1d5b6e3973da8039" title="Gets first node.">begin</a>();
340<a name="l00326"></a>00326 <span class="keywordflow">for</span> (; it != <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>.<a class="code" href="classirr_1_1core_1_1list.html#aa80509dac5224fa57cc548e39480a115" title="Gets end node.">end</a>(); ++it)
341<a name="l00327"></a>00327 {
342<a name="l00328"></a>00328 (*it)-&gt;Parent = 0;
343<a name="l00329"></a>00329 (*it)-&gt;drop();
344<a name="l00330"></a>00330 }
345<a name="l00331"></a>00331
346<a name="l00332"></a>00332 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>.<a class="code" href="classirr_1_1core_1_1list.html#aad18996ed41454bf7bb8e1d3199f4e73" title="Clears the list, deletes all elements in the list.">clear</a>();
347<a name="l00333"></a>00333 }
348<a name="l00334"></a>00334
349<a name="l00335"></a>00335
350<a name="l00337"></a>00337
351<a name="l00339"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2efa2670e29d6bb33b0dd99403b8b69c">00339</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <span class="keyword">remove</span>()
352<a name="l00340"></a>00340 {
353<a name="l00341"></a>00341 <span class="keywordflow">if</span> (<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a145c14ca15ce98bea683a36142f1b045" title="Pointer to the parent.">Parent</a>)
354<a name="l00342"></a>00342 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a145c14ca15ce98bea683a36142f1b045" title="Pointer to the parent.">Parent</a>-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a831e371142fc883c7dd229552e0340de" title="Removes a child from this scene node.">removeChild</a>(<span class="keyword">this</span>);
355<a name="l00343"></a>00343 }
356<a name="l00344"></a>00344
357<a name="l00345"></a>00345
358<a name="l00347"></a>00347
359<a name="l00348"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a0e5cd342cd7293c136e53e2c2c5e0f3a">00348</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a0e5cd342cd7293c136e53e2c2c5e0f3a" title="Adds an animator which should animate this node.">addAnimator</a>(<a class="code" href="classirr_1_1scene_1_1_i_scene_node_animator.html" title="Animates a scene node. Can animate position, rotation, material, and so on.">ISceneNodeAnimator</a>* animator)
360<a name="l00349"></a>00349 {
361<a name="l00350"></a>00350 <span class="keywordflow">if</span> (animator)
362<a name="l00351"></a>00351 {
363<a name="l00352"></a>00352 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a80dce48a13d9bdc6466613f27a33f348" title="List of all animator nodes.">Animators</a>.<a class="code" href="classirr_1_1core_1_1list.html#a0f73ebd87279766f339cb1462c2a24d1" title="Adds an element at the end of the list.">push_back</a>(animator);
364<a name="l00353"></a>00353 animator-&gt;<a class="code" href="classirr_1_1_i_reference_counted.html#a2b7a035532e5f409ca9482dab79185f4" title="Grabs the object. Increments the reference counter by one.">grab</a>();
365<a name="l00354"></a>00354 }
366<a name="l00355"></a>00355 }
367<a name="l00356"></a>00356
368<a name="l00357"></a>00357
369<a name="l00359"></a>00359
370<a name="l00360"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1da5348d58e0072215c544cb35356517">00360</a> <span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1list.html">core::list&lt;ISceneNodeAnimator*&gt;</a>&amp; <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1da5348d58e0072215c544cb35356517" title="Get a list of all scene node animators.">getAnimators</a>()<span class="keyword"> const</span>
371<a name="l00361"></a>00361 <span class="keyword"> </span>{
372<a name="l00362"></a>00362 <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a80dce48a13d9bdc6466613f27a33f348" title="List of all animator nodes.">Animators</a>;
373<a name="l00363"></a>00363 }
374<a name="l00364"></a>00364
375<a name="l00365"></a>00365
376<a name="l00367"></a>00367
377<a name="l00370"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aaa67f8f91d4ec99f82955641f1f9e521">00370</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aaa67f8f91d4ec99f82955641f1f9e521" title="Removes an animator from this scene node.">removeAnimator</a>(<a class="code" href="classirr_1_1scene_1_1_i_scene_node_animator.html" title="Animates a scene node. Can animate position, rotation, material, and so on.">ISceneNodeAnimator</a>* animator)
378<a name="l00371"></a>00371 {
379<a name="l00372"></a>00372 ISceneNodeAnimatorList::Iterator it = <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a80dce48a13d9bdc6466613f27a33f348" title="List of all animator nodes.">Animators</a>.<a class="code" href="classirr_1_1core_1_1list.html#aebd05a0f5e5ead6e1d5b6e3973da8039" title="Gets first node.">begin</a>();
380<a name="l00373"></a>00373 <span class="keywordflow">for</span> (; it != <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a80dce48a13d9bdc6466613f27a33f348" title="List of all animator nodes.">Animators</a>.<a class="code" href="classirr_1_1core_1_1list.html#aa80509dac5224fa57cc548e39480a115" title="Gets end node.">end</a>(); ++it)
381<a name="l00374"></a>00374 {
382<a name="l00375"></a>00375 <span class="keywordflow">if</span> ((*it) == animator)
383<a name="l00376"></a>00376 {
384<a name="l00377"></a>00377 (*it)-&gt;drop();
385<a name="l00378"></a>00378 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a80dce48a13d9bdc6466613f27a33f348" title="List of all animator nodes.">Animators</a>.<a class="code" href="classirr_1_1core_1_1list.html#a407935fc79a35ce7caa19e4f6ce25c3f" title="Erases an element.">erase</a>(it);
386<a name="l00379"></a>00379 <span class="keywordflow">return</span>;
387<a name="l00380"></a>00380 }
388<a name="l00381"></a>00381 }
389<a name="l00382"></a>00382 }
390<a name="l00383"></a>00383
391<a name="l00384"></a>00384
392<a name="l00386"></a>00386
393<a name="l00388"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a28f198bd566e9a7290cbefa531d8d31e">00388</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a28f198bd566e9a7290cbefa531d8d31e" title="Removes all animators from this scene node.">removeAnimators</a>()
394<a name="l00389"></a>00389 {
395<a name="l00390"></a>00390 ISceneNodeAnimatorList::Iterator it = <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a80dce48a13d9bdc6466613f27a33f348" title="List of all animator nodes.">Animators</a>.<a class="code" href="classirr_1_1core_1_1list.html#aebd05a0f5e5ead6e1d5b6e3973da8039" title="Gets first node.">begin</a>();
396<a name="l00391"></a>00391 <span class="keywordflow">for</span> (; it != <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a80dce48a13d9bdc6466613f27a33f348" title="List of all animator nodes.">Animators</a>.<a class="code" href="classirr_1_1core_1_1list.html#aa80509dac5224fa57cc548e39480a115" title="Gets end node.">end</a>(); ++it)
397<a name="l00392"></a>00392 (*it)-&gt;drop();
398<a name="l00393"></a>00393
399<a name="l00394"></a>00394 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a80dce48a13d9bdc6466613f27a33f348" title="List of all animator nodes.">Animators</a>.<a class="code" href="classirr_1_1core_1_1list.html#aad18996ed41454bf7bb8e1d3199f4e73" title="Clears the list, deletes all elements in the list.">clear</a>();
400<a name="l00395"></a>00395 }
401<a name="l00396"></a>00396
402<a name="l00397"></a>00397
403<a name="l00399"></a>00399
404<a name="l00406"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1f44d8cf753b2e4c17c90d4fc2ed05b2">00406</a> <span class="keyword">virtual</span> <a class="code" href="classirr_1_1video_1_1_s_material.html" title="Struct for holding parameters for a material renderer.">video::SMaterial</a>&amp; <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1f44d8cf753b2e4c17c90d4fc2ed05b2" title="Returns the material based on the zero based index i.">getMaterial</a>(<a class="code" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32</a> num)
405<a name="l00407"></a>00407 {
406<a name="l00408"></a>00408 <span class="keywordflow">return</span> <a class="code" href="namespaceirr_1_1video.html#a6c7a0046dcf64bb165eca2af94045a61" title="global const identity Material">video::IdentityMaterial</a>;
407<a name="l00409"></a>00409 }
408<a name="l00410"></a>00410
409<a name="l00411"></a>00411
410<a name="l00413"></a>00413
411<a name="l00414"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#afa904bf3742941087aaee56b0b4cdfe2">00414</a> <span class="keyword">virtual</span> <a class="code" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#afa904bf3742941087aaee56b0b4cdfe2" title="Get amount of materials used by this scene node.">getMaterialCount</a>()<span class="keyword"> const</span>
412<a name="l00415"></a>00415 <span class="keyword"> </span>{
413<a name="l00416"></a>00416 <span class="keywordflow">return</span> 0;
414<a name="l00417"></a>00417 }
415<a name="l00418"></a>00418
416<a name="l00419"></a>00419
417<a name="l00421"></a>00421
418<a name="l00425"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2841d5077854b9981711a403f33762cd">00425</a> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2841d5077854b9981711a403f33762cd" title="Sets all material flags at once to a new value.">setMaterialFlag</a>(<a class="code" href="namespaceirr_1_1video.html#a8a3bc00ae8137535b9fbc5f40add70d3" title="Material flags.">video::E_MATERIAL_FLAG</a> flag, <span class="keywordtype">bool</span> newvalue)
419<a name="l00426"></a>00426 {
420<a name="l00427"></a>00427 <span class="keywordflow">for</span> (<a class="code" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32</a> i=0; i&lt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#afa904bf3742941087aaee56b0b4cdfe2" title="Get amount of materials used by this scene node.">getMaterialCount</a>(); ++i)
421<a name="l00428"></a>00428 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1f44d8cf753b2e4c17c90d4fc2ed05b2" title="Returns the material based on the zero based index i.">getMaterial</a>(i).<a class="code" href="classirr_1_1video_1_1_s_material.html#a460db947d8e2022c6be895b77a65bbda" title="Sets the Material flag to the given value.">setFlag</a>(flag, newvalue);
422<a name="l00429"></a>00429 }
423<a name="l00430"></a>00430
424<a name="l00431"></a>00431
425<a name="l00433"></a>00433
426<a name="l00436"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a0d5d2e05ebe08e6a432fbb4fd1d28dd0">00436</a> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a0d5d2e05ebe08e6a432fbb4fd1d28dd0" title="Sets the texture of the specified layer in all materials of this scene node to the new texture...">setMaterialTexture</a>(<a class="code" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32</a> textureLayer, <a class="code" href="classirr_1_1video_1_1_i_texture.html" title="Interface of a Video Driver dependent Texture.">video::ITexture</a>* texture)
427<a name="l00437"></a>00437 {
428<a name="l00438"></a>00438 <span class="keywordflow">if</span> (textureLayer &gt;= <a class="code" href="namespaceirr_1_1video.html#ad41ca808200ca2e8e9d9326355020052" title="Maximum number of texture an SMaterial can have.">video::MATERIAL_MAX_TEXTURES</a>)
429<a name="l00439"></a>00439 <span class="keywordflow">return</span>;
430<a name="l00440"></a>00440
431<a name="l00441"></a>00441 <span class="keywordflow">for</span> (<a class="code" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32</a> i=0; i&lt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#afa904bf3742941087aaee56b0b4cdfe2" title="Get amount of materials used by this scene node.">getMaterialCount</a>(); ++i)
432<a name="l00442"></a>00442 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1f44d8cf753b2e4c17c90d4fc2ed05b2" title="Returns the material based on the zero based index i.">getMaterial</a>(i).<a class="code" href="classirr_1_1video_1_1_s_material.html#a44dc38e7d4a78434d12ffd02e88e3d60" title="Sets the i-th texture.">setTexture</a>(textureLayer, texture);
433<a name="l00443"></a>00443 }
434<a name="l00444"></a>00444
435<a name="l00445"></a>00445
436<a name="l00447"></a>00447
437<a name="l00448"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a302c7dedd776b52111823df5ed8446de">00448</a> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a302c7dedd776b52111823df5ed8446de" title="Sets the material type of all materials in this scene node to a new material type.">setMaterialType</a>(<a class="code" href="namespaceirr_1_1video.html#ac8e9b6c66f7cebabd1a6d30cbc5430f1" title="Abstracted and easy to use fixed function/programmable pipeline material modes.">video::E_MATERIAL_TYPE</a> newType)
438<a name="l00449"></a>00449 {
439<a name="l00450"></a>00450 <span class="keywordflow">for</span> (<a class="code" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32</a> i=0; i&lt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#afa904bf3742941087aaee56b0b4cdfe2" title="Get amount of materials used by this scene node.">getMaterialCount</a>(); ++i)
440<a name="l00451"></a>00451 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1f44d8cf753b2e4c17c90d4fc2ed05b2" title="Returns the material based on the zero based index i.">getMaterial</a>(i).<a class="code" href="classirr_1_1video_1_1_s_material.html#a8cb63ab4b49ae1c61fbca8353e6b2f8a" title="Type of the material. Specifies how everything is blended together.">MaterialType</a> = newType;
441<a name="l00452"></a>00452 }
442<a name="l00453"></a>00453
443<a name="l00454"></a>00454
444<a name="l00456"></a>00456
445<a name="l00460"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a69d142f4c8fa3f04b644cada4de09fc0">00460</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a>&amp; <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a69d142f4c8fa3f04b644cada4de09fc0" title="Gets the scale of the scene node relative to its parent.">getScale</a>()<span class="keyword"> const</span>
446<a name="l00461"></a>00461 <span class="keyword"> </span>{
447<a name="l00462"></a>00462 <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a76e41eb5e7a5baf51350ec627a458a3d" title="Relative scale of the scene node.">RelativeScale</a>;
448<a name="l00463"></a>00463 }
449<a name="l00464"></a>00464
450<a name="l00465"></a>00465
451<a name="l00467"></a>00467
452<a name="l00468"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d710e1e20546bd89affe09fa943b0e2">00468</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d710e1e20546bd89affe09fa943b0e2" title="Sets the relative scale of the scene node.">setScale</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a>&amp; scale)
453<a name="l00469"></a>00469 {
454<a name="l00470"></a>00470 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a76e41eb5e7a5baf51350ec627a458a3d" title="Relative scale of the scene node.">RelativeScale</a> = scale;
455<a name="l00471"></a>00471 }
456<a name="l00472"></a>00472
457<a name="l00473"></a>00473
458<a name="l00475"></a>00475
459<a name="l00479"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a5b87947672d70f863bc599720c7292c5">00479</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a>&amp; <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a5b87947672d70f863bc599720c7292c5" title="Gets the rotation of the node relative to its parent.">getRotation</a>()<span class="keyword"> const</span>
460<a name="l00480"></a>00480 <span class="keyword"> </span>{
461<a name="l00481"></a>00481 <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a83fef4c36dcab69bbf94cf6e3e1323e1" title="Relative rotation of the scene node.">RelativeRotation</a>;
462<a name="l00482"></a>00482 }
463<a name="l00483"></a>00483
464<a name="l00484"></a>00484
465<a name="l00486"></a>00486
466<a name="l00488"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#adb6ff54f52d3a9e1514cd487a550935c">00488</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#adb6ff54f52d3a9e1514cd487a550935c" title="Sets the rotation of the node relative to its parent.">setRotation</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a>&amp; rotation)
467<a name="l00489"></a>00489 {
468<a name="l00490"></a>00490 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a83fef4c36dcab69bbf94cf6e3e1323e1" title="Relative rotation of the scene node.">RelativeRotation</a> = rotation;
469<a name="l00491"></a>00491 }
470<a name="l00492"></a>00492
471<a name="l00493"></a>00493
472<a name="l00495"></a>00495
473<a name="l00498"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a43a7b4fa55fa58c20dfc54b9109c8b0a">00498</a> <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a>&amp; <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a43a7b4fa55fa58c20dfc54b9109c8b0a" title="Gets the position of the node relative to its parent.">getPosition</a>()<span class="keyword"> const</span>
474<a name="l00499"></a>00499 <span class="keyword"> </span>{
475<a name="l00500"></a>00500 <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d8af3d0185a787209b7be576a411281" title="Relative translation of the scene node.">RelativeTranslation</a>;
476<a name="l00501"></a>00501 }
477<a name="l00502"></a>00502
478<a name="l00503"></a>00503
479<a name="l00505"></a>00505
480<a name="l00507"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2166eb0a92cc0e46c49266f41a68ed50">00507</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2166eb0a92cc0e46c49266f41a68ed50" title="Sets the position of the node relative to its parent.">setPosition</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a>&amp; newpos)
481<a name="l00508"></a>00508 {
482<a name="l00509"></a>00509 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d8af3d0185a787209b7be576a411281" title="Relative translation of the scene node.">RelativeTranslation</a> = newpos;
483<a name="l00510"></a>00510 }
484<a name="l00511"></a>00511
485<a name="l00512"></a>00512
486<a name="l00514"></a>00514
487<a name="l00522"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a5dd3aee5ed767b9d98fa50b9ead4c9a9">00522</a> <span class="keyword">virtual</span> <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a5dd3aee5ed767b9d98fa50b9ead4c9a9" title="Gets the absolute position of the node in world coordinates.">getAbsolutePosition</a>()<span class="keyword"> const</span>
488<a name="l00523"></a>00523 <span class="keyword"> </span>{
489<a name="l00524"></a>00524 <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aab7d4bc865d0c7ccf361515a154a8cf0" title="Absolute transformation of the node.">AbsoluteTransformation</a>.<a class="code" href="classirr_1_1core_1_1_c_matrix4.html#aec84b278e87611352b75298238e54006" title="Gets the current translation.">getTranslation</a>();
490<a name="l00525"></a>00525 }
491<a name="l00526"></a>00526
492<a name="l00527"></a>00527
493<a name="l00529"></a>00529
494<a name="l00534"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a5fcd62dbf524b8d2d6daa61c7d6cf119">00534</a> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a5fcd62dbf524b8d2d6daa61c7d6cf119" title="Enables or disables automatic culling based on the bounding box.">setAutomaticCulling</a>( <a class="code" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32</a> state)
495<a name="l00535"></a>00535 {
496<a name="l00536"></a>00536 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a0906d6df682ef3b1cbbe117907c0b995" title="Automatic culling state.">AutomaticCullingState</a> = state;
497<a name="l00537"></a>00537 }
498<a name="l00538"></a>00538
499<a name="l00539"></a>00539
500<a name="l00541"></a>00541
501<a name="l00542"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a494c159287ab022d0f797642bf41476e">00542</a> <a class="code" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a494c159287ab022d0f797642bf41476e" title="Gets the automatic culling state.">getAutomaticCulling</a>()<span class="keyword"> const</span>
502<a name="l00543"></a>00543 <span class="keyword"> </span>{
503<a name="l00544"></a>00544 <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a0906d6df682ef3b1cbbe117907c0b995" title="Automatic culling state.">AutomaticCullingState</a>;
504<a name="l00545"></a>00545 }
505<a name="l00546"></a>00546
506<a name="l00547"></a>00547
507<a name="l00549"></a>00549
508<a name="l00552"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ad83877ca84fa9cde95f099f961e80577">00552</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ad83877ca84fa9cde95f099f961e80577" title="Sets if debug data like bounding boxes should be drawn.">setDebugDataVisible</a>(<a class="code" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32</a> state)
509<a name="l00553"></a>00553 {
510<a name="l00554"></a>00554 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a223a66d82d1c56e5f3730aeb9f83589c" title="Flag if debug data should be drawn, such as Bounding Boxes.">DebugDataVisible</a> = state;
511<a name="l00555"></a>00555 }
512<a name="l00556"></a>00556
513<a name="l00558"></a>00558
514<a name="l00560"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a29224344555fef716b7c466b54349e65">00560</a> <a class="code" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a29224344555fef716b7c466b54349e65" title="Returns if debug data like bounding boxes are drawn.">isDebugDataVisible</a>()<span class="keyword"> const</span>
515<a name="l00561"></a>00561 <span class="keyword"> </span>{
516<a name="l00562"></a>00562 <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a223a66d82d1c56e5f3730aeb9f83589c" title="Flag if debug data should be drawn, such as Bounding Boxes.">DebugDataVisible</a>;
517<a name="l00563"></a>00563 }
518<a name="l00564"></a>00564
519<a name="l00565"></a>00565
520<a name="l00567"></a>00567
521<a name="l00569"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a7ceda3eb747a353ffeda02c26e697cbd">00569</a> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a7ceda3eb747a353ffeda02c26e697cbd" title="Sets if this scene node is a debug object.">setIsDebugObject</a>(<span class="keywordtype">bool</span> debugObject)
522<a name="l00570"></a>00570 {
523<a name="l00571"></a>00571 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a8f1ba7c5e77eecc2adc6d12df0d27dd6" title="Is debug object?">IsDebugObject</a> = debugObject;
524<a name="l00572"></a>00572 }
525<a name="l00573"></a>00573
526<a name="l00574"></a>00574
527<a name="l00576"></a>00576
528<a name="l00579"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aaf7667d0fec6953461237e8e11c0ceb3">00579</a> <span class="keywordtype">bool</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aaf7667d0fec6953461237e8e11c0ceb3" title="Returns if this scene node is a debug object.">isDebugObject</a>()<span class="keyword"> const</span>
529<a name="l00580"></a>00580 <span class="keyword"> </span>{
530<a name="l00581"></a>00581 <a class="code" href="irr_types_8h.html#ad19cf45bdc142ef8e4a011cabbc4a4af" title="Defines a small statement to work around a microsoft compiler bug.">_IRR_IMPLEMENT_MANAGED_MARSHALLING_BUGFIX</a>;
531<a name="l00582"></a>00582 <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a8f1ba7c5e77eecc2adc6d12df0d27dd6" title="Is debug object?">IsDebugObject</a>;
532<a name="l00583"></a>00583 }
533<a name="l00584"></a>00584
534<a name="l00585"></a>00585
535<a name="l00587"></a>00587
536<a name="l00588"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ae38d1c6c927375afa0b69aaf2a64b88e">00588</a> <span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1list.html">core::list&lt;ISceneNode*&gt;</a>&amp; <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ae38d1c6c927375afa0b69aaf2a64b88e" title="Returns a const reference to the list of all children.">getChildren</a>()<span class="keyword"> const</span>
537<a name="l00589"></a>00589 <span class="keyword"> </span>{
538<a name="l00590"></a>00590 <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>;
539<a name="l00591"></a>00591 }
540<a name="l00592"></a>00592
541<a name="l00593"></a>00593
542<a name="l00595"></a>00595
543<a name="l00596"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a59e7f36cb5c9c4895e06fce0ca5eb276">00596</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a59e7f36cb5c9c4895e06fce0ca5eb276" title="Changes the parent of the scene node.">setParent</a>(<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html" title="Scene node interface.">ISceneNode</a>* newParent)
544<a name="l00597"></a>00597 {
545<a name="l00598"></a>00598 <a class="code" href="classirr_1_1_i_reference_counted.html#a2b7a035532e5f409ca9482dab79185f4" title="Grabs the object. Increments the reference counter by one.">grab</a>();
546<a name="l00599"></a>00599 <span class="keyword">remove</span>();
547<a name="l00600"></a>00600
548<a name="l00601"></a>00601 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a145c14ca15ce98bea683a36142f1b045" title="Pointer to the parent.">Parent</a> = newParent;
549<a name="l00602"></a>00602
550<a name="l00603"></a>00603 <span class="keywordflow">if</span> (<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a145c14ca15ce98bea683a36142f1b045" title="Pointer to the parent.">Parent</a>)
551<a name="l00604"></a>00604 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a145c14ca15ce98bea683a36142f1b045" title="Pointer to the parent.">Parent</a>-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#acceef4fbb68f6cc7bb40035225350970" title="Adds a child to this scene node.">addChild</a>(<span class="keyword">this</span>);
552<a name="l00605"></a>00605
553<a name="l00606"></a>00606 <a class="code" href="classirr_1_1_i_reference_counted.html#afb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">drop</a>();
554<a name="l00607"></a>00607 }
555<a name="l00608"></a>00608
556<a name="l00609"></a>00609
557<a name="l00611"></a>00611
558<a name="l00620"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a21f4ddce8da7edfeafc6303b02ab8a83">00620</a> <span class="keyword">virtual</span> <a class="code" href="classirr_1_1scene_1_1_i_triangle_selector.html" title="Interface to return triangles with specific properties.">ITriangleSelector</a>* <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a21f4ddce8da7edfeafc6303b02ab8a83" title="Returns the triangle selector attached to this scene node.">getTriangleSelector</a>()<span class="keyword"> const</span>
559<a name="l00621"></a>00621 <span class="keyword"> </span>{
560<a name="l00622"></a>00622 <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ad622b3f366243e146b3b4cbe81b468ab" title="Pointer to the triangle selector.">TriangleSelector</a>;
561<a name="l00623"></a>00623 }
562<a name="l00624"></a>00624
563<a name="l00625"></a>00625
564<a name="l00627"></a>00627
565<a name="l00635"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a87fb52ec54bf3ae117340d8defd1255f">00635</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a87fb52ec54bf3ae117340d8defd1255f" title="Sets the triangle selector of the scene node.">setTriangleSelector</a>(<a class="code" href="classirr_1_1scene_1_1_i_triangle_selector.html" title="Interface to return triangles with specific properties.">ITriangleSelector</a>* selector)
566<a name="l00636"></a>00636 {
567<a name="l00637"></a>00637 <span class="keywordflow">if</span> (<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ad622b3f366243e146b3b4cbe81b468ab" title="Pointer to the triangle selector.">TriangleSelector</a> != selector)
568<a name="l00638"></a>00638 {
569<a name="l00639"></a>00639 <span class="keywordflow">if</span> (<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ad622b3f366243e146b3b4cbe81b468ab" title="Pointer to the triangle selector.">TriangleSelector</a>)
570<a name="l00640"></a>00640 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ad622b3f366243e146b3b4cbe81b468ab" title="Pointer to the triangle selector.">TriangleSelector</a>-&gt;<a class="code" href="classirr_1_1_i_reference_counted.html#afb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">drop</a>();
571<a name="l00641"></a>00641
572<a name="l00642"></a>00642 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ad622b3f366243e146b3b4cbe81b468ab" title="Pointer to the triangle selector.">TriangleSelector</a> = selector;
573<a name="l00643"></a>00643 <span class="keywordflow">if</span> (<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ad622b3f366243e146b3b4cbe81b468ab" title="Pointer to the triangle selector.">TriangleSelector</a>)
574<a name="l00644"></a>00644 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ad622b3f366243e146b3b4cbe81b468ab" title="Pointer to the triangle selector.">TriangleSelector</a>-&gt;<a class="code" href="classirr_1_1_i_reference_counted.html#a2b7a035532e5f409ca9482dab79185f4" title="Grabs the object. Increments the reference counter by one.">grab</a>();
575<a name="l00645"></a>00645 }
576<a name="l00646"></a>00646 }
577<a name="l00647"></a>00647
578<a name="l00648"></a>00648
579<a name="l00650"></a>00650
580<a name="l00652"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aeb6e0dc034bb2101600ce87acbcf0f6e">00652</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aeb6e0dc034bb2101600ce87acbcf0f6e" title="Updates the absolute position based on the relative and the parents position.">updateAbsolutePosition</a>()
581<a name="l00653"></a>00653 {
582<a name="l00654"></a>00654 <span class="keywordflow">if</span> (<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a145c14ca15ce98bea683a36142f1b045" title="Pointer to the parent.">Parent</a>)
583<a name="l00655"></a>00655 {
584<a name="l00656"></a>00656 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aab7d4bc865d0c7ccf361515a154a8cf0" title="Absolute transformation of the node.">AbsoluteTransformation</a> =
585<a name="l00657"></a>00657 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a145c14ca15ce98bea683a36142f1b045" title="Pointer to the parent.">Parent</a>-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a9c46ea82efd7ae30437fb7c385809050" title="Get the absolute transformation of the node. Is recalculated every OnAnimate()-call.">getAbsoluteTransformation</a>() * <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#afe701e793852ac8eb4ae7c723aef5b55" title="Returns the relative transformation of the scene node.">getRelativeTransformation</a>();
586<a name="l00658"></a>00658 }
587<a name="l00659"></a>00659 <span class="keywordflow">else</span>
588<a name="l00660"></a>00660 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aab7d4bc865d0c7ccf361515a154a8cf0" title="Absolute transformation of the node.">AbsoluteTransformation</a> = <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#afe701e793852ac8eb4ae7c723aef5b55" title="Returns the relative transformation of the scene node.">getRelativeTransformation</a>();
589<a name="l00661"></a>00661 }
590<a name="l00662"></a>00662
591<a name="l00663"></a>00663
592<a name="l00665"></a>00665
593<a name="l00666"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2987b689ed5f62aa823dc1334384200d">00666</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html" title="Scene node interface.">scene::ISceneNode</a>* <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2987b689ed5f62aa823dc1334384200d" title="Returns the parent of this scene node.">getParent</a>()<span class="keyword"> const</span>
594<a name="l00667"></a>00667 <span class="keyword"> </span>{
595<a name="l00668"></a>00668 <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a145c14ca15ce98bea683a36142f1b045" title="Pointer to the parent.">Parent</a>;
596<a name="l00669"></a>00669 }
597<a name="l00670"></a>00670
598<a name="l00671"></a>00671
599<a name="l00673"></a>00673
600<a name="l00674"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#acb294abaf64a85e11744cce96f99926e">00674</a> <span class="keyword">virtual</span> <a class="code" href="namespaceirr_1_1scene.html#acad3d7ef92a9807d391ba29120f3b7bd" title="An enumeration for all types of built-in scene nodes.">ESCENE_NODE_TYPE</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#acb294abaf64a85e11744cce96f99926e" title="Returns type of the scene node.">getType</a>()<span class="keyword"> const</span>
601<a name="l00675"></a>00675 <span class="keyword"> </span>{
602<a name="l00676"></a>00676 <span class="keywordflow">return</span> <a class="code" href="namespaceirr_1_1scene.html#acad3d7ef92a9807d391ba29120f3b7bda0c24ab203e5e0dc055f82fbca65d4f47" title="Unknown scene node.">ESNT_UNKNOWN</a>;
603<a name="l00677"></a>00677 }
604<a name="l00678"></a>00678
605<a name="l00679"></a>00679
606<a name="l00681"></a>00681
607<a name="l00687"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a04142f1f0e5ec49a81aaeb2bc6db124c">00687</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a04142f1f0e5ec49a81aaeb2bc6db124c" title="Writes attributes of the scene node.">serializeAttributes</a>(<a class="code" href="classirr_1_1io_1_1_i_attributes.html" title="Provides a generic interface for attributes and their values and the possiblity to serialize them...">io::IAttributes</a>* out, <a class="code" href="structirr_1_1io_1_1_s_attribute_read_write_options.html" title="struct holding data describing options">io::SAttributeReadWriteOptions</a>* options=0)<span class="keyword"> const</span>
608<a name="l00688"></a>00688 <span class="keyword"> </span>{
609<a name="l00689"></a>00689 <span class="keywordflow">if</span> (!out)
610<a name="l00690"></a>00690 <span class="keywordflow">return</span>;
611<a name="l00691"></a>00691 out-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#a051f092d809f9d40215a1480d9d69afc" title="Adds an attribute as string.">addString</a> (<span class="stringliteral">&quot;Name&quot;</span>, <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2527ec038f7e400fc141efa7fdc6327b" title="Name of the scene node.">Name</a>.<a class="code" href="classirr_1_1core_1_1string.html#a4abad222c478c108096ee9297870068c" title="Returns character string.">c_str</a>());
612<a name="l00692"></a>00692 out-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#afbde111f36d59e9cf42b20595cf2ed24" title="Adds an attribute as integer.">addInt</a> (<span class="stringliteral">&quot;Id&quot;</span>, <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a001b5cf9866fae4092b9b2cc89f3ebef" title="ID of the node.">ID</a> );
613<a name="l00693"></a>00693
614<a name="l00694"></a>00694 out-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#aee73f5e51ad978b2bf146d10725da72f" title="Adds an attribute as 3d vector.">addVector3d</a>(<span class="stringliteral">&quot;Position&quot;</span>, <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a43a7b4fa55fa58c20dfc54b9109c8b0a" title="Gets the position of the node relative to its parent.">getPosition</a>() );
615<a name="l00695"></a>00695 out-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#aee73f5e51ad978b2bf146d10725da72f" title="Adds an attribute as 3d vector.">addVector3d</a>(<span class="stringliteral">&quot;Rotation&quot;</span>, <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a5b87947672d70f863bc599720c7292c5" title="Gets the rotation of the node relative to its parent.">getRotation</a>() );
616<a name="l00696"></a>00696 out-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#aee73f5e51ad978b2bf146d10725da72f" title="Adds an attribute as 3d vector.">addVector3d</a>(<span class="stringliteral">&quot;Scale&quot;</span>, <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a69d142f4c8fa3f04b644cada4de09fc0" title="Gets the scale of the scene node relative to its parent.">getScale</a>() );
617<a name="l00697"></a>00697
618<a name="l00698"></a>00698 out-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#a3335f912c0dfcf0e88f662796314123b" title="Adds an attribute as bool.">addBool</a> (<span class="stringliteral">&quot;Visible&quot;</span>, <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aa834128c57215457914ef46d9b18cc5e" title="Is the node visible?">IsVisible</a> );
619<a name="l00699"></a>00699 out-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#afbde111f36d59e9cf42b20595cf2ed24" title="Adds an attribute as integer.">addInt</a> (<span class="stringliteral">&quot;AutomaticCulling&quot;</span>, <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a0906d6df682ef3b1cbbe117907c0b995" title="Automatic culling state.">AutomaticCullingState</a>);
620<a name="l00700"></a>00700 out-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#afbde111f36d59e9cf42b20595cf2ed24" title="Adds an attribute as integer.">addInt</a> (<span class="stringliteral">&quot;DebugDataVisible&quot;</span>, <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a223a66d82d1c56e5f3730aeb9f83589c" title="Flag if debug data should be drawn, such as Bounding Boxes.">DebugDataVisible</a> );
621<a name="l00701"></a>00701 out-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#a3335f912c0dfcf0e88f662796314123b" title="Adds an attribute as bool.">addBool</a> (<span class="stringliteral">&quot;IsDebugObject&quot;</span>, <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a8f1ba7c5e77eecc2adc6d12df0d27dd6" title="Is debug object?">IsDebugObject</a> );
622<a name="l00702"></a>00702 }
623<a name="l00703"></a>00703
624<a name="l00704"></a>00704
625<a name="l00706"></a>00706
626<a name="l00712"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a5fb609b08fc89a92f928c19ce3b181eb">00712</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a5fb609b08fc89a92f928c19ce3b181eb" title="Reads attributes of the scene node.">deserializeAttributes</a>(<a class="code" href="classirr_1_1io_1_1_i_attributes.html" title="Provides a generic interface for attributes and their values and the possiblity to serialize them...">io::IAttributes</a>* in, <a class="code" href="structirr_1_1io_1_1_s_attribute_read_write_options.html" title="struct holding data describing options">io::SAttributeReadWriteOptions</a>* options=0)
627<a name="l00713"></a>00713 {
628<a name="l00714"></a>00714 <span class="keywordflow">if</span> (!in)
629<a name="l00715"></a>00715 <span class="keywordflow">return</span>;
630<a name="l00716"></a>00716 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2527ec038f7e400fc141efa7fdc6327b" title="Name of the scene node.">Name</a> = in-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#a60f395fd008a70cc0531fa038c81f0ea">getAttributeAsString</a>(<span class="stringliteral">&quot;Name&quot;</span>);
631<a name="l00717"></a>00717 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a001b5cf9866fae4092b9b2cc89f3ebef" title="ID of the node.">ID</a> = in-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#ac6c51254c9d43cb58cb89866cdd210ed">getAttributeAsInt</a>(<span class="stringliteral">&quot;Id&quot;</span>);
632<a name="l00718"></a>00718
633<a name="l00719"></a>00719 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2166eb0a92cc0e46c49266f41a68ed50" title="Sets the position of the node relative to its parent.">setPosition</a>(in-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#ac4ad5d4db7fd08e0523d3f8e671c2f68">getAttributeAsVector3d</a>(<span class="stringliteral">&quot;Position&quot;</span>));
634<a name="l00720"></a>00720 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#adb6ff54f52d3a9e1514cd487a550935c" title="Sets the rotation of the node relative to its parent.">setRotation</a>(in-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#ac4ad5d4db7fd08e0523d3f8e671c2f68">getAttributeAsVector3d</a>(<span class="stringliteral">&quot;Rotation&quot;</span>));
635<a name="l00721"></a>00721 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d710e1e20546bd89affe09fa943b0e2" title="Sets the relative scale of the scene node.">setScale</a>(in-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#ac4ad5d4db7fd08e0523d3f8e671c2f68">getAttributeAsVector3d</a>(<span class="stringliteral">&quot;Scale&quot;</span>));
636<a name="l00722"></a>00722
637<a name="l00723"></a>00723 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aa834128c57215457914ef46d9b18cc5e" title="Is the node visible?">IsVisible</a> = in-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#a197407f5b0f1d0c1aefab3e1b8d7c02d">getAttributeAsBool</a>(<span class="stringliteral">&quot;Visible&quot;</span>);
638<a name="l00724"></a>00724 <a class="code" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6" title="32 bit signed variable.">s32</a> tmpState = in-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#a2a204c332735a0b15fa555ae6e785214">getAttributeAsEnumeration</a>(<span class="stringliteral">&quot;AutomaticCulling&quot;</span>,
639<a name="l00725"></a>00725 <a class="code" href="namespaceirr_1_1scene.html#afb3e3fc1668bd602189bab446801aa12" title="Names for culling type.">scene::AutomaticCullingNames</a>);
640<a name="l00726"></a>00726 <span class="keywordflow">if</span> (tmpState != -1)
641<a name="l00727"></a>00727 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a0906d6df682ef3b1cbbe117907c0b995" title="Automatic culling state.">AutomaticCullingState</a> = (<a class="code" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32</a>)tmpState;
642<a name="l00728"></a>00728 <span class="keywordflow">else</span>
643<a name="l00729"></a>00729 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a0906d6df682ef3b1cbbe117907c0b995" title="Automatic culling state.">AutomaticCullingState</a> = in-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#ac6c51254c9d43cb58cb89866cdd210ed">getAttributeAsInt</a>(<span class="stringliteral">&quot;AutomaticCulling&quot;</span>);
644<a name="l00730"></a>00730
645<a name="l00731"></a>00731 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a223a66d82d1c56e5f3730aeb9f83589c" title="Flag if debug data should be drawn, such as Bounding Boxes.">DebugDataVisible</a> = in-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#ac6c51254c9d43cb58cb89866cdd210ed">getAttributeAsInt</a>(<span class="stringliteral">&quot;DebugDataVisible&quot;</span>);
646<a name="l00732"></a>00732 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a8f1ba7c5e77eecc2adc6d12df0d27dd6" title="Is debug object?">IsDebugObject</a> = in-&gt;<a class="code" href="classirr_1_1io_1_1_i_attributes.html#a197407f5b0f1d0c1aefab3e1b8d7c02d">getAttributeAsBool</a>(<span class="stringliteral">&quot;IsDebugObject&quot;</span>);
647<a name="l00733"></a>00733
648<a name="l00734"></a>00734 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aeb6e0dc034bb2101600ce87acbcf0f6e" title="Updates the absolute position based on the relative and the parents position.">updateAbsolutePosition</a>();
649<a name="l00735"></a>00735 }
650<a name="l00736"></a>00736
651<a name="l00738"></a>00738
652<a name="l00741"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ac39832b55855dc59196053adbaec95cc">00741</a> <span class="keyword">virtual</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html" title="Scene node interface.">ISceneNode</a>* <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ac39832b55855dc59196053adbaec95cc" title="Creates a clone of this scene node and its children.">clone</a>(<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html" title="Scene node interface.">ISceneNode</a>* newParent=0, <a class="code" href="classirr_1_1scene_1_1_i_scene_manager.html" title="The Scene Manager manages scene nodes, mesh recources, cameras and all the other stuff.">ISceneManager</a>* newManager=0)
653<a name="l00742"></a>00742 {
654<a name="l00743"></a>00743 <span class="keywordflow">return</span> 0; <span class="comment">// to be implemented by derived classes</span>
655<a name="l00744"></a>00744 }
656<a name="l00745"></a>00745
657<a name="l00747"></a>00747
658<a name="l00748"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a58d2c91b48c9fe5c64a7de0c801ca511">00748</a> <span class="keyword">virtual</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_manager.html" title="The Scene Manager manages scene nodes, mesh recources, cameras and all the other stuff.">ISceneManager</a>* <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a58d2c91b48c9fe5c64a7de0c801ca511" title="Retrieve the scene manager for this node.">getSceneManager</a>(<span class="keywordtype">void</span>)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a062a201ee9b870398fe5aa8f36ce54a5" title="Pointer to the scene manager.">SceneManager</a>; }
659<a name="l00749"></a>00749
660<a name="l00750"></a>00750 <span class="keyword">protected</span>:
661<a name="l00751"></a>00751
662<a name="l00753"></a>00753
663<a name="l00757"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a00a4ef0212b5d4b005202519859689bd">00757</a> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a00a4ef0212b5d4b005202519859689bd" title="A clone function for the ISceneNode members.">cloneMembers</a>(<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html" title="Scene node interface.">ISceneNode</a>* toCopyFrom, <a class="code" href="classirr_1_1scene_1_1_i_scene_manager.html" title="The Scene Manager manages scene nodes, mesh recources, cameras and all the other stuff.">ISceneManager</a>* newManager)
664<a name="l00758"></a>00758 {
665<a name="l00759"></a>00759 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2527ec038f7e400fc141efa7fdc6327b" title="Name of the scene node.">Name</a> = toCopyFrom-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2527ec038f7e400fc141efa7fdc6327b" title="Name of the scene node.">Name</a>;
666<a name="l00760"></a>00760 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aab7d4bc865d0c7ccf361515a154a8cf0" title="Absolute transformation of the node.">AbsoluteTransformation</a> = toCopyFrom-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aab7d4bc865d0c7ccf361515a154a8cf0" title="Absolute transformation of the node.">AbsoluteTransformation</a>;
667<a name="l00761"></a>00761 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d8af3d0185a787209b7be576a411281" title="Relative translation of the scene node.">RelativeTranslation</a> = toCopyFrom-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d8af3d0185a787209b7be576a411281" title="Relative translation of the scene node.">RelativeTranslation</a>;
668<a name="l00762"></a>00762 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a83fef4c36dcab69bbf94cf6e3e1323e1" title="Relative rotation of the scene node.">RelativeRotation</a> = toCopyFrom-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a83fef4c36dcab69bbf94cf6e3e1323e1" title="Relative rotation of the scene node.">RelativeRotation</a>;
669<a name="l00763"></a>00763 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a76e41eb5e7a5baf51350ec627a458a3d" title="Relative scale of the scene node.">RelativeScale</a> = toCopyFrom-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a76e41eb5e7a5baf51350ec627a458a3d" title="Relative scale of the scene node.">RelativeScale</a>;
670<a name="l00764"></a>00764 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a001b5cf9866fae4092b9b2cc89f3ebef" title="ID of the node.">ID</a> = toCopyFrom-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a001b5cf9866fae4092b9b2cc89f3ebef" title="ID of the node.">ID</a>;
671<a name="l00765"></a>00765 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a87fb52ec54bf3ae117340d8defd1255f" title="Sets the triangle selector of the scene node.">setTriangleSelector</a>(toCopyFrom-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ad622b3f366243e146b3b4cbe81b468ab" title="Pointer to the triangle selector.">TriangleSelector</a>);
672<a name="l00766"></a>00766 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a0906d6df682ef3b1cbbe117907c0b995" title="Automatic culling state.">AutomaticCullingState</a> = toCopyFrom-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a0906d6df682ef3b1cbbe117907c0b995" title="Automatic culling state.">AutomaticCullingState</a>;
673<a name="l00767"></a>00767 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a223a66d82d1c56e5f3730aeb9f83589c" title="Flag if debug data should be drawn, such as Bounding Boxes.">DebugDataVisible</a> = toCopyFrom-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a223a66d82d1c56e5f3730aeb9f83589c" title="Flag if debug data should be drawn, such as Bounding Boxes.">DebugDataVisible</a>;
674<a name="l00768"></a>00768 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aa834128c57215457914ef46d9b18cc5e" title="Is the node visible?">IsVisible</a> = toCopyFrom-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aa834128c57215457914ef46d9b18cc5e" title="Is the node visible?">IsVisible</a>;
675<a name="l00769"></a>00769 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a8f1ba7c5e77eecc2adc6d12df0d27dd6" title="Is debug object?">IsDebugObject</a> = toCopyFrom-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a8f1ba7c5e77eecc2adc6d12df0d27dd6" title="Is debug object?">IsDebugObject</a>;
676<a name="l00770"></a>00770
677<a name="l00771"></a>00771 <span class="keywordflow">if</span> (newManager)
678<a name="l00772"></a>00772 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a062a201ee9b870398fe5aa8f36ce54a5" title="Pointer to the scene manager.">SceneManager</a> = newManager;
679<a name="l00773"></a>00773 <span class="keywordflow">else</span>
680<a name="l00774"></a>00774 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a062a201ee9b870398fe5aa8f36ce54a5" title="Pointer to the scene manager.">SceneManager</a> = toCopyFrom-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a062a201ee9b870398fe5aa8f36ce54a5" title="Pointer to the scene manager.">SceneManager</a>;
681<a name="l00775"></a>00775
682<a name="l00776"></a>00776 <span class="comment">// clone children</span>
683<a name="l00777"></a>00777
684<a name="l00778"></a>00778 ISceneNodeList::Iterator it = toCopyFrom-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>.<a class="code" href="classirr_1_1core_1_1list.html#aebd05a0f5e5ead6e1d5b6e3973da8039" title="Gets first node.">begin</a>();
685<a name="l00779"></a>00779 <span class="keywordflow">for</span> (; it != toCopyFrom-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>.<a class="code" href="classirr_1_1core_1_1list.html#aa80509dac5224fa57cc548e39480a115" title="Gets end node.">end</a>(); ++it)
686<a name="l00780"></a>00780 (*it)-&gt;clone(<span class="keyword">this</span>, newManager);
687<a name="l00781"></a>00781
688<a name="l00782"></a>00782 <span class="comment">// clone animators</span>
689<a name="l00783"></a>00783
690<a name="l00784"></a>00784 ISceneNodeAnimatorList::Iterator ait = toCopyFrom-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a80dce48a13d9bdc6466613f27a33f348" title="List of all animator nodes.">Animators</a>.<a class="code" href="classirr_1_1core_1_1list.html#aebd05a0f5e5ead6e1d5b6e3973da8039" title="Gets first node.">begin</a>();
691<a name="l00785"></a>00785 <span class="keywordflow">for</span> (; ait != toCopyFrom-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a80dce48a13d9bdc6466613f27a33f348" title="List of all animator nodes.">Animators</a>.<a class="code" href="classirr_1_1core_1_1list.html#aa80509dac5224fa57cc548e39480a115" title="Gets end node.">end</a>(); ++ait)
692<a name="l00786"></a>00786 {
693<a name="l00787"></a>00787 <a class="code" href="classirr_1_1scene_1_1_i_scene_node_animator.html" title="Animates a scene node. Can animate position, rotation, material, and so on.">ISceneNodeAnimator</a>* anim = (*ait)-&gt;<a class="code" href="classirr_1_1scene_1_1_i_scene_node_animator.html#a9cc261c12459fc7d3da6c2595d721c0d" title="Creates a clone of this animator.">createClone</a>(<span class="keyword">this</span>, <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a062a201ee9b870398fe5aa8f36ce54a5" title="Pointer to the scene manager.">SceneManager</a>);
694<a name="l00788"></a>00788 <span class="keywordflow">if</span> (anim)
695<a name="l00789"></a>00789 {
696<a name="l00790"></a>00790 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a0e5cd342cd7293c136e53e2c2c5e0f3a" title="Adds an animator which should animate this node.">addAnimator</a>(anim);
697<a name="l00791"></a>00791 anim-&gt;<a class="code" href="classirr_1_1_i_reference_counted.html#afb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">drop</a>();
698<a name="l00792"></a>00792 }
699<a name="l00793"></a>00793 }
700<a name="l00794"></a>00794 }
701<a name="l00795"></a>00795
702<a name="l00798"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a513d09ae37f71391d7c4838e29164a3e">00798</a> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a513d09ae37f71391d7c4838e29164a3e">setSceneManager</a>(<a class="code" href="classirr_1_1scene_1_1_i_scene_manager.html" title="The Scene Manager manages scene nodes, mesh recources, cameras and all the other stuff.">ISceneManager</a>* newManager)
703<a name="l00799"></a>00799 {
704<a name="l00800"></a>00800 <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a062a201ee9b870398fe5aa8f36ce54a5" title="Pointer to the scene manager.">SceneManager</a> = newManager;
705<a name="l00801"></a>00801
706<a name="l00802"></a>00802 ISceneNodeList::Iterator it = <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>.<a class="code" href="classirr_1_1core_1_1list.html#aebd05a0f5e5ead6e1d5b6e3973da8039" title="Gets first node.">begin</a>();
707<a name="l00803"></a>00803 <span class="keywordflow">for</span> (; it != <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>.<a class="code" href="classirr_1_1core_1_1list.html#aa80509dac5224fa57cc548e39480a115" title="Gets end node.">end</a>(); ++it)
708<a name="l00804"></a>00804 (*it)-&gt;setSceneManager(newManager);
709<a name="l00805"></a>00805 }
710<a name="l00806"></a>00806
711<a name="l00808"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2527ec038f7e400fc141efa7fdc6327b">00808</a> <a class="code" href="classirr_1_1core_1_1string.html">core::stringc</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a2527ec038f7e400fc141efa7fdc6327b" title="Name of the scene node.">Name</a>;
712<a name="l00809"></a>00809
713<a name="l00811"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aab7d4bc865d0c7ccf361515a154a8cf0">00811</a> <a class="code" href="classirr_1_1core_1_1_c_matrix4.html" title="4x4 matrix. Mostly used as transformation matrix for 3d calculations.">core::matrix4</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aab7d4bc865d0c7ccf361515a154a8cf0" title="Absolute transformation of the node.">AbsoluteTransformation</a>;
714<a name="l00812"></a>00812
715<a name="l00814"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d8af3d0185a787209b7be576a411281">00814</a> <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d8af3d0185a787209b7be576a411281" title="Relative translation of the scene node.">RelativeTranslation</a>;
716<a name="l00815"></a>00815
717<a name="l00817"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a83fef4c36dcab69bbf94cf6e3e1323e1">00817</a> <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a83fef4c36dcab69bbf94cf6e3e1323e1" title="Relative rotation of the scene node.">RelativeRotation</a>;
718<a name="l00818"></a>00818
719<a name="l00820"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a76e41eb5e7a5baf51350ec627a458a3d">00820</a> <a class="code" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a76e41eb5e7a5baf51350ec627a458a3d" title="Relative scale of the scene node.">RelativeScale</a>;
720<a name="l00821"></a>00821
721<a name="l00823"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a145c14ca15ce98bea683a36142f1b045">00823</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html" title="Scene node interface.">ISceneNode</a>* <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a145c14ca15ce98bea683a36142f1b045" title="Pointer to the parent.">Parent</a>;
722<a name="l00824"></a>00824
723<a name="l00826"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948">00826</a> <a class="code" href="classirr_1_1core_1_1list.html">core::list&lt;ISceneNode*&gt;</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a1d6404800155442b600553efcd9d7948" title="List of all children of this node.">Children</a>;
724<a name="l00827"></a>00827
725<a name="l00829"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a80dce48a13d9bdc6466613f27a33f348">00829</a> <a class="code" href="classirr_1_1core_1_1list.html">core::list&lt;ISceneNodeAnimator*&gt;</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a80dce48a13d9bdc6466613f27a33f348" title="List of all animator nodes.">Animators</a>;
726<a name="l00830"></a>00830
727<a name="l00832"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a062a201ee9b870398fe5aa8f36ce54a5">00832</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_manager.html" title="The Scene Manager manages scene nodes, mesh recources, cameras and all the other stuff.">ISceneManager</a>* <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a062a201ee9b870398fe5aa8f36ce54a5" title="Pointer to the scene manager.">SceneManager</a>;
728<a name="l00833"></a>00833
729<a name="l00835"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ad622b3f366243e146b3b4cbe81b468ab">00835</a> <a class="code" href="classirr_1_1scene_1_1_i_triangle_selector.html" title="Interface to return triangles with specific properties.">ITriangleSelector</a>* <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#ad622b3f366243e146b3b4cbe81b468ab" title="Pointer to the triangle selector.">TriangleSelector</a>;
730<a name="l00836"></a>00836
731<a name="l00838"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a001b5cf9866fae4092b9b2cc89f3ebef">00838</a> <a class="code" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6" title="32 bit signed variable.">s32</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a001b5cf9866fae4092b9b2cc89f3ebef" title="ID of the node.">ID</a>;
732<a name="l00839"></a>00839
733<a name="l00841"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a0906d6df682ef3b1cbbe117907c0b995">00841</a> <a class="code" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a0906d6df682ef3b1cbbe117907c0b995" title="Automatic culling state.">AutomaticCullingState</a>;
734<a name="l00842"></a>00842
735<a name="l00844"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a223a66d82d1c56e5f3730aeb9f83589c">00844</a> <a class="code" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804" title="32 bit unsigned variable.">u32</a> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a223a66d82d1c56e5f3730aeb9f83589c" title="Flag if debug data should be drawn, such as Bounding Boxes.">DebugDataVisible</a>;
736<a name="l00845"></a>00845
737<a name="l00847"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aa834128c57215457914ef46d9b18cc5e">00847</a> <span class="keywordtype">bool</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#aa834128c57215457914ef46d9b18cc5e" title="Is the node visible?">IsVisible</a>;
738<a name="l00848"></a>00848
739<a name="l00850"></a><a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a8f1ba7c5e77eecc2adc6d12df0d27dd6">00850</a> <span class="keywordtype">bool</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html#a8f1ba7c5e77eecc2adc6d12df0d27dd6" title="Is debug object?">IsDebugObject</a>;
740<a name="l00851"></a>00851 };
741<a name="l00852"></a>00852
742<a name="l00853"></a>00853
743<a name="l00854"></a>00854 } <span class="comment">// end namespace scene</span>
744<a name="l00855"></a>00855 } <span class="comment">// end namespace irr</span>
745<a name="l00856"></a>00856
746<a name="l00857"></a>00857 <span class="preprocessor">#endif</span>
747<a name="l00858"></a>00858 <span class="preprocessor"></span>
748</pre></div></div>
749</div>
750 <div id="nav-path" class="navpath">
751 <ul>
752 <li class="navelem"><a class="el" href="_i_scene_node_8h.html">ISceneNode.h</a> </li>
753<!-- window showing the filter options -->
754<div id="MSearchSelectWindow"
755 onmouseover="return searchBox.OnSearchSelectShow()"
756 onmouseout="return searchBox.OnSearchSelectHide()"
757 onkeydown="return searchBox.OnSearchSelectKey(event)">
758<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Defines</a></div>
759
760<!-- iframe showing the search results (closed by default) -->
761<div id="MSearchResultsWindow">
762<iframe src="javascript:void(0)" frameborder="0"
763 name="MSearchResults" id="MSearchResults">
764</iframe>
765</div>
766
767
768 <li class="footer">
769<a href="http://irrlicht.sourceforge.net" target="_blank">Irrlicht
770Engine</a> Documentation &copy; 2003-2012 by Nikolaus Gebhardt. Generated on Sun Nov 17 2013 20:18:40 for Irrlicht 3D Engine by
771<a href="http://www.doxygen.org/index.html" target="_blank">Doxygen</a> 1.7.5.1 </li>
772 </ul>
773 </div>
774
775
776</body>
777</html>