source: Documentation/D5.3 Stand-alone computation package for illumination algorithms/appendix/IlluminationModule/html/class_shared_runs.html @ 2910

Revision 2910, 39.1 KB checked in by hbeneit, 16 years ago (diff)
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3<title>GameTools Illumination Module: SharedRuns Class Reference</title>
4<link href="doxygen.css" rel="stylesheet" type="text/css">
5<link href="tabs.css" rel="stylesheet" type="text/css">
6</head><body>
7<!-- Generated by Doxygen 1.4.6-NO -->
8<div class="tabs">
9  <ul>
10    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
11    <li><a href="namespaces.html"><span>Namespaces</span></a></li>
12    <li id="current"><a href="annotated.html"><span>Classes</span></a></li>
13  </ul></div>
14<div class="tabs">
15  <ul>
16    <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
17    <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
18    <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
19  </ul></div>
20<h1>SharedRuns Class Reference</h1><!-- doxytag: class="SharedRuns" -->Base abstract class for a collection of shared resources (RenderingRuns). 
21<a href="#_details">More...</a>
22<p>
23<p>Inheritance diagram for SharedRuns:
24<p><center><img src="class_shared_runs.png" usemap="#SharedRuns_map" border="0" alt=""></center>
25<map name="SharedRuns_map">
26<area href="class_ogre_shared_runs.html" alt="OgreSharedRuns" shape="rect" coords="0,56,110,80">
27</map>
28<a href="class_shared_runs-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
29<tr><td></td></tr>
30<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
31<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#4151ca322e0fb76e5344b4f100fd699d">SharedRuns</a> (void)</td></tr>
32
33<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="class_rendering_run.html">RenderingRun</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#28fc75828c2113261ddf536db8357122">getRun</a> (RenderingRunType runType)=0</td></tr>
34
35<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#76dbf48971faecd0488a1a2aff5be481">addRun</a> (RenderingRunType runType, <a class="el" href="class_rendering_run.html">RenderingRun</a> *run)=0</td></tr>
36
37<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#2c4accae6abd91d75704cb068b873b89">updateRun</a> (RenderingRunType runType, unsigned long frameNum)=0</td></tr>
38
39<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="class_shared_runs.html">SharedRuns</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#3732e293bc555eb8e174057a0a0a7046">joinRuns</a> (<a class="el" href="class_shared_runs.html">SharedRuns</a> *otherRuns)</td></tr>
40
41<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#88350edb49eafd666c77dc20e0586424">runChanged</a> (RenderingRunType runType, <a class="el" href="class_rendering_run.html">RenderingRun</a> *run)</td></tr>
42
43<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called after one of he shared runs changes.  <a href="#88350edb49eafd666c77dc20e0586424"></a><br></td></tr>
44<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#f2448a5cb7757653f28b7b8ae7fccdcb">runUpdated</a> (RenderingRunType runType, <a class="el" href="class_rendering_run.html">RenderingRun</a> *run)</td></tr>
45
46<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called after one of he shared runs updates.  <a href="#f2448a5cb7757653f28b7b8ae7fccdcb"></a><br></td></tr>
47<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#e9ac6a81e7a6f158db6b2f248b85616a">setTechniqueGroup</a> (<a class="el" href="class_technique_group.html">TechniqueGroup</a> *group)</td></tr>
48
49<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets child <a class="el" href="class_technique_group.html">TechniqueGroup</a>.  <a href="#e9ac6a81e7a6f158db6b2f248b85616a"></a><br></td></tr>
50<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#9863e4a018d34a9f401080f49f3d7935">setVisible</a> (bool visible)</td></tr>
51
52<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Shows or hides this <a class="el" href="class_shared_runs.html">SharedRuns</a> (and also all childnodes).  <a href="#9863e4a018d34a9f401080f49f3d7935"></a><br></td></tr>
53<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#9683176598290a957484029b46f846a7">hide</a> ()</td></tr>
54
55<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Hides this <a class="el" href="class_shared_runs.html">SharedRuns</a> (and also all childs).  <a href="#9683176598290a957484029b46f846a7"></a><br></td></tr>
56<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2ad956ce039920e85d5141a4e55a31fd"></a><!-- doxytag: member="SharedRuns::restoreVisibility" ref="2ad956ce039920e85d5141a4e55a31fd" args="()" -->
57virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#2ad956ce039920e85d5141a4e55a31fd">restoreVisibility</a> ()</td></tr>
58
59<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Restores the visibility of this <a class="el" href="class_shared_runs.html">SharedRuns</a> (and also all childs). <br></td></tr>
60<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="class_shared_runs.html">SharedRuns</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#5a7859fc5f9508e27b0495cf9bd2533b">getRoot</a> ()</td></tr>
61
62<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves the root node of this <a class="el" href="class_shared_runs.html">SharedRuns</a> node.  <a href="#5a7859fc5f9508e27b0495cf9bd2533b"></a><br></td></tr>
63<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="class_shared_runs.html">SharedRuns</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#16a5f96039fc4e4da7b31896007a60d4">getRoot</a> (RenderingRunType runType)</td></tr>
64
65<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves the topmost parent node of this <a class="el" href="class_shared_runs.html">SharedRuns</a> node, which have a specified <a class="el" href="class_rendering_run.html">RenderingRun</a> type.  <a href="#16a5f96039fc4e4da7b31896007a60d4"></a><br></td></tr>
66<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4370e7885cb04bea67739fc7a057872c"></a><!-- doxytag: member="SharedRuns::updateBounds" ref="4370e7885cb04bea67739fc7a057872c" args="()=0" -->
67virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#4370e7885cb04bea67739fc7a057872c">updateBounds</a> ()=0</td></tr>
68
69<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Updates the boundary of this <a class="el" href="class_shared_runs.html">SharedRuns</a> (and also it's parent). <br></td></tr>
70<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#16eaed1f16313bf8ad03537018ee859b">validate</a> ()=0</td></tr>
71
72<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Validate this <a class="el" href="class_shared_runs.html">SharedRuns</a> (and also all childs).  <a href="#16eaed1f16313bf8ad03537018ee859b"></a><br></td></tr>
73<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ba6a693e00dccea926471f4ea303b691"></a><!-- doxytag: member="SharedRuns::destroy" ref="ba6a693e00dccea926471f4ea303b691" args="()=0" -->
74virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#ba6a693e00dccea926471f4ea303b691">destroy</a> ()=0</td></tr>
75
76<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destroys the node (and all parents recursively). <br></td></tr>
77<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="31167722aefe235173967f762979af74"></a><!-- doxytag: member="SharedRuns::unbindParent" ref="31167722aefe235173967f762979af74" args="()" -->
78virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#31167722aefe235173967f762979af74">unbindParent</a> ()</td></tr>
79
80<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unbinds the parent of the node, called at splitting. <br></td></tr>
81<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a5eea1b7adeafbf3ded6e42eb0114676"></a><!-- doxytag: member="SharedRuns::unbindAndKillParent" ref="a5eea1b7adeafbf3ded6e42eb0114676" args="()" -->
82virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#a5eea1b7adeafbf3ded6e42eb0114676">unbindAndKillParent</a> ()</td></tr>
83
84<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unbinds the deletes the parent of the node, called at splitting. <br></td></tr>
85<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
86<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="44f787461673769132ecb4ba9d2386bc"></a><!-- doxytag: member="SharedRuns::gatherRuns" ref="44f787461673769132ecb4ba9d2386bc" args="()=0" -->
87virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#44f787461673769132ecb4ba9d2386bc">gatherRuns</a> ()=0</td></tr>
88
89<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Collects RenderingRuns references from the child nodes, used when joining. <br></td></tr>
90<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="93c72948263b451019edc0587ceb9c1d"></a><!-- doxytag: member="SharedRuns::fireRunChanges" ref="93c72948263b451019edc0587ceb9c1d" args="()=0" -->
91virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#93c72948263b451019edc0587ceb9c1d">fireRunChanges</a> ()=0</td></tr>
92
93<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends runChanged events for each <a class="el" href="class_rendering_run.html">RenderingRun</a> type, used after join and split. <br></td></tr>
94<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="class_shared_runs.html">SharedRuns</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#e94e924997764638529193c248ffbca2">createInstance</a> ()=0</td></tr>
95
96<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a new <a class="el" href="class_shared_runs.html">SharedRuns</a> instance. All derivatives should implement this.  <a href="#e94e924997764638529193c248ffbca2"></a><br></td></tr>
97<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#bec46a54c661c83361966cd21b3ac4a5">setRenderablesVisible</a> (bool visible)=0</td></tr>
98
99<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set visibility of connected renderables, only used if this is a leaf.  <a href="#bec46a54c661c83361966cd21b3ac4a5"></a><br></td></tr>
100<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="62874731a9ffc790f46a67ee81a8ba31"></a><!-- doxytag: member="SharedRuns::hideRenderables" ref="62874731a9ffc790f46a67ee81a8ba31" args="()=0" -->
101virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#62874731a9ffc790f46a67ee81a8ba31">hideRenderables</a> ()=0</td></tr>
102
103<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Hides all the connected renderables, only used if this is a leaf. <br></td></tr>
104<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e5fe8fadb0f5325acd8ec51ffe9d62d3"></a><!-- doxytag: member="SharedRuns::restoreRenderableVisibility" ref="e5fe8fadb0f5325acd8ec51ffe9d62d3" args="()=0" -->
105virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#e5fe8fadb0f5325acd8ec51ffe9d62d3">restoreRenderableVisibility</a> ()=0</td></tr>
106
107<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Restires visibility of all the connected renderables, only used if this is a leaf. <br></td></tr>
108<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
109<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="497a453bfdd3618791d97cf05a7f72c7"></a><!-- doxytag: member="SharedRuns::parent" ref="497a453bfdd3618791d97cf05a7f72c7" args="" -->
110<a class="el" href="class_shared_runs.html">SharedRuns</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#497a453bfdd3618791d97cf05a7f72c7">parent</a></td></tr>
111
112<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">parent <a class="el" href="class_shared_runs.html">SharedRuns</a> instance <br></td></tr>
113<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3e6249c0017ce0330d68ac801883074e"></a><!-- doxytag: member="SharedRuns::child1" ref="3e6249c0017ce0330d68ac801883074e" args="" -->
114<a class="el" href="class_shared_runs.html">SharedRuns</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#3e6249c0017ce0330d68ac801883074e">child1</a></td></tr>
115
116<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">child <a class="el" href="class_shared_runs.html">SharedRuns</a> instance <br></td></tr>
117<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d0ff8f0374373f3a5fc2040898d989b7"></a><!-- doxytag: member="SharedRuns::child2" ref="d0ff8f0374373f3a5fc2040898d989b7" args="" -->
118<a class="el" href="class_shared_runs.html">SharedRuns</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#d0ff8f0374373f3a5fc2040898d989b7">child2</a></td></tr>
119
120<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">child <a class="el" href="class_shared_runs.html">SharedRuns</a> instance <br></td></tr>
121<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_technique_group.html">TechniqueGroup</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_shared_runs.html#7511b767cc21b35174e7ed45501aa24a">childTechniques</a></td></tr>
122
123<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">child <a class="el" href="class_technique_group.html">TechniqueGroup</a> instance.  <a href="#7511b767cc21b35174e7ed45501aa24a"></a><br></td></tr>
124</table>
125<hr><a name="_details"></a><h2>Detailed Description</h2>
126Base abstract class for a collection of shared resources (RenderingRuns).
127<p>
128Technique resources which can be shared between several techniques or objects are managed by <a class="el" href="class_shared_runs.html">SharedRuns</a>. These <a class="el" href="class_shared_runs.html">SharedRuns</a> store the shared resources. They also act like nodes of a binary tree, as separate <a class="el" href="class_shared_runs.html">SharedRuns</a> can also be joined if for example the objects for witch they store resources are close enough so even one shared resources is enough for the given objects.
129<p>
130<hr><h2>Constructor &amp; Destructor Documentation</h2>
131<a class="anchor" name="4151ca322e0fb76e5344b4f100fd699d"></a><!-- doxytag: member="SharedRuns::SharedRuns" ref="4151ca322e0fb76e5344b4f100fd699d" args="(void)" --><p>
132<table class="mdTable" cellpadding="2" cellspacing="0">
133  <tr>
134    <td class="mdRow">
135      <table cellpadding="0" cellspacing="0" border="0">
136        <tr>
137          <td class="md" nowrap valign="top">SharedRuns::SharedRuns           </td>
138          <td class="md" valign="top">(&nbsp;</td>
139          <td class="md" nowrap valign="top">void&nbsp;</td>
140          <td class="mdname1" valign="top" nowrap>          </td>
141          <td class="md" valign="top">&nbsp;)&nbsp;</td>
142          <td class="md" nowrap></td>
143        </tr>
144      </table>
145    </td>
146  </tr>
147</table>
148<table cellspacing="5" cellpadding="0" border="0">
149  <tr>
150    <td>
151      &nbsp;
152    </td>
153    <td>
154
155<p>
156&amp;brief Constructor.     </td>
157  </tr>
158</table>
159<hr><h2>Member Function Documentation</h2>
160<a class="anchor" name="76dbf48971faecd0488a1a2aff5be481"></a><!-- doxytag: member="SharedRuns::addRun" ref="76dbf48971faecd0488a1a2aff5be481" args="(RenderingRunType runType, RenderingRun *run)=0" --><p>
161<table class="mdTable" cellpadding="2" cellspacing="0">
162  <tr>
163    <td class="mdRow">
164      <table cellpadding="0" cellspacing="0" border="0">
165        <tr>
166          <td class="md" nowrap valign="top">virtual void SharedRuns::addRun           </td>
167          <td class="md" valign="top">(&nbsp;</td>
168          <td class="md" nowrap valign="top">RenderingRunType&nbsp;</td>
169          <td class="mdname" nowrap> <em>runType</em>, </td>
170        </tr>
171        <tr>
172          <td class="md" nowrap align="right"></td>
173          <td class="md"></td>
174          <td class="md" nowrap><a class="el" href="class_rendering_run.html">RenderingRun</a> *&nbsp;</td>
175          <td class="mdname" nowrap> <em>run</em></td>
176        </tr>
177        <tr>
178          <td class="md"></td>
179          <td class="md">)&nbsp;</td>
180          <td class="md" colspan="2"><code> [pure virtual]</code></td>
181        </tr>
182      </table>
183    </td>
184  </tr>
185</table>
186<table cellspacing="5" cellpadding="0" border="0">
187  <tr>
188    <td>
189      &nbsp;
190    </td>
191    <td>
192
193<p>
194&amp;brief Adds a <a class="el" href="class_rendering_run.html">RenderingRun</a> instance to the shared resources.<p>
195<dl compact><dt><b>Parameters:</b></dt><dd>
196  <table border="0" cellspacing="2" cellpadding="0">
197    <tr><td valign="top"></td><td valign="top"><em>runType</em>&nbsp;</td><td>enum, type of the <a class="el" href="class_rendering_run.html">RenderingRun</a> to add </td></tr>
198    <tr><td valign="top"></td><td valign="top"><em>run</em>&nbsp;</td><td>pointer to the <a class="el" href="class_rendering_run.html">RenderingRun</a> instance to add </td></tr>
199  </table>
200</dl>
201
202<p>
203Implemented in <a class="el" href="class_ogre_shared_runs.html#d900b429b7740538275fb6050fa96499">OgreSharedRuns</a>.    </td>
204  </tr>
205</table>
206<a class="anchor" name="e94e924997764638529193c248ffbca2"></a><!-- doxytag: member="SharedRuns::createInstance" ref="e94e924997764638529193c248ffbca2" args="()=0" --><p>
207<table class="mdTable" cellpadding="2" cellspacing="0">
208  <tr>
209    <td class="mdRow">
210      <table cellpadding="0" cellspacing="0" border="0">
211        <tr>
212          <td class="md" nowrap valign="top">virtual <a class="el" href="class_shared_runs.html">SharedRuns</a>* SharedRuns::createInstance           </td>
213          <td class="md" valign="top">(&nbsp;</td>
214          <td class="mdname1" valign="top" nowrap>          </td>
215          <td class="md" valign="top">&nbsp;)&nbsp;</td>
216          <td class="md" nowrap><code> [protected, pure virtual]</code></td>
217        </tr>
218      </table>
219    </td>
220  </tr>
221</table>
222<table cellspacing="5" cellpadding="0" border="0">
223  <tr>
224    <td>
225      &nbsp;
226    </td>
227    <td>
228
229<p>
230Creates a new <a class="el" href="class_shared_runs.html">SharedRuns</a> instance. All derivatives should implement this.
231<p>
232<dl compact><dt><b>Returns:</b></dt><dd>a new <a class="el" href="class_shared_runs.html">SharedRuns</a> instance </dd></dl>
233
234<p>
235Implemented in <a class="el" href="class_ogre_shared_runs.html#26fff5e4da17dcd68bd0d8617d8e6c26">OgreSharedRuns</a>.    </td>
236  </tr>
237</table>
238<a class="anchor" name="16a5f96039fc4e4da7b31896007a60d4"></a><!-- doxytag: member="SharedRuns::getRoot" ref="16a5f96039fc4e4da7b31896007a60d4" args="(RenderingRunType runType)" --><p>
239<table class="mdTable" cellpadding="2" cellspacing="0">
240  <tr>
241    <td class="mdRow">
242      <table cellpadding="0" cellspacing="0" border="0">
243        <tr>
244          <td class="md" nowrap valign="top"><a class="el" href="class_shared_runs.html">SharedRuns</a> * SharedRuns::getRoot           </td>
245          <td class="md" valign="top">(&nbsp;</td>
246          <td class="md" nowrap valign="top">RenderingRunType&nbsp;</td>
247          <td class="mdname1" valign="top" nowrap> <em>runType</em>          </td>
248          <td class="md" valign="top">&nbsp;)&nbsp;</td>
249          <td class="md" nowrap><code> [virtual]</code></td>
250        </tr>
251      </table>
252    </td>
253  </tr>
254</table>
255<table cellspacing="5" cellpadding="0" border="0">
256  <tr>
257    <td>
258      &nbsp;
259    </td>
260    <td>
261
262<p>
263Retrieves the topmost parent node of this <a class="el" href="class_shared_runs.html">SharedRuns</a> node, which have a specified <a class="el" href="class_rendering_run.html">RenderingRun</a> type.
264<p>
265<dl compact><dt><b>Parameters:</b></dt><dd>
266  <table border="0" cellspacing="2" cellpadding="0">
267    <tr><td valign="top"></td><td valign="top"><em>runType</em>&nbsp;</td><td>the <a class="el" href="class_rendering_run.html">RenderingRun</a> type</td></tr>
268  </table>
269</dl>
270<dl compact><dt><b>Returns:</b></dt><dd>pointer to the parent <a class="el" href="class_shared_runs.html">SharedRuns</a> instance </dd></dl>
271    </td>
272  </tr>
273</table>
274<a class="anchor" name="5a7859fc5f9508e27b0495cf9bd2533b"></a><!-- doxytag: member="SharedRuns::getRoot" ref="5a7859fc5f9508e27b0495cf9bd2533b" args="()" --><p>
275<table class="mdTable" cellpadding="2" cellspacing="0">
276  <tr>
277    <td class="mdRow">
278      <table cellpadding="0" cellspacing="0" border="0">
279        <tr>
280          <td class="md" nowrap valign="top"><a class="el" href="class_shared_runs.html">SharedRuns</a> * SharedRuns::getRoot           </td>
281          <td class="md" valign="top">(&nbsp;</td>
282          <td class="mdname1" valign="top" nowrap>          </td>
283          <td class="md" valign="top">&nbsp;)&nbsp;</td>
284          <td class="md" nowrap><code> [virtual]</code></td>
285        </tr>
286      </table>
287    </td>
288  </tr>
289</table>
290<table cellspacing="5" cellpadding="0" border="0">
291  <tr>
292    <td>
293      &nbsp;
294    </td>
295    <td>
296
297<p>
298Retrieves the root node of this <a class="el" href="class_shared_runs.html">SharedRuns</a> node.
299<p>
300<dl compact><dt><b>Returns:</b></dt><dd>pointer to the root <a class="el" href="class_shared_runs.html">SharedRuns</a> instance </dd></dl>
301    </td>
302  </tr>
303</table>
304<a class="anchor" name="28fc75828c2113261ddf536db8357122"></a><!-- doxytag: member="SharedRuns::getRun" ref="28fc75828c2113261ddf536db8357122" args="(RenderingRunType runType)=0" --><p>
305<table class="mdTable" cellpadding="2" cellspacing="0">
306  <tr>
307    <td class="mdRow">
308      <table cellpadding="0" cellspacing="0" border="0">
309        <tr>
310          <td class="md" nowrap valign="top">virtual <a class="el" href="class_rendering_run.html">RenderingRun</a>* SharedRuns::getRun           </td>
311          <td class="md" valign="top">(&nbsp;</td>
312          <td class="md" nowrap valign="top">RenderingRunType&nbsp;</td>
313          <td class="mdname1" valign="top" nowrap> <em>runType</em>          </td>
314          <td class="md" valign="top">&nbsp;)&nbsp;</td>
315          <td class="md" nowrap><code> [pure virtual]</code></td>
316        </tr>
317      </table>
318    </td>
319  </tr>
320</table>
321<table cellspacing="5" cellpadding="0" border="0">
322  <tr>
323    <td>
324      &nbsp;
325    </td>
326    <td>
327
328<p>
329&amp;brief Retrieves a shared resource.<p>
330<dl compact><dt><b>Parameters:</b></dt><dd>
331  <table border="0" cellspacing="2" cellpadding="0">
332    <tr><td valign="top"></td><td valign="top"><em>runType</em>&nbsp;</td><td>enum, type of the <a class="el" href="class_rendering_run.html">RenderingRun</a> to be retrieved </td></tr>
333  </table>
334</dl>
335<dl compact><dt><b>Returns:</b></dt><dd>pointer to the <a class="el" href="class_rendering_run.html">RenderingRun</a> of type "runType", null if this type does not exists </dd></dl>
336
337<p>
338Implemented in <a class="el" href="class_ogre_shared_runs.html#68a61fd8f216371473bee1f42395726d">OgreSharedRuns</a>.    </td>
339  </tr>
340</table>
341<a class="anchor" name="9683176598290a957484029b46f846a7"></a><!-- doxytag: member="SharedRuns::hide" ref="9683176598290a957484029b46f846a7" args="()" --><p>
342<table class="mdTable" cellpadding="2" cellspacing="0">
343  <tr>
344    <td class="mdRow">
345      <table cellpadding="0" cellspacing="0" border="0">
346        <tr>
347          <td class="md" nowrap valign="top">void SharedRuns::hide           </td>
348          <td class="md" valign="top">(&nbsp;</td>
349          <td class="mdname1" valign="top" nowrap>          </td>
350          <td class="md" valign="top">&nbsp;)&nbsp;</td>
351          <td class="md" nowrap><code> [virtual]</code></td>
352        </tr>
353      </table>
354    </td>
355  </tr>
356</table>
357<table cellspacing="5" cellpadding="0" border="0">
358  <tr>
359    <td>
360      &nbsp;
361    </td>
362    <td>
363
364<p>
365Hides this <a class="el" href="class_shared_runs.html">SharedRuns</a> (and also all childs).
366<p>
367The previous visibility is saved.     </td>
368  </tr>
369</table>
370<a class="anchor" name="3732e293bc555eb8e174057a0a0a7046"></a><!-- doxytag: member="SharedRuns::joinRuns" ref="3732e293bc555eb8e174057a0a0a7046" args="(SharedRuns *otherRuns)" --><p>
371<table class="mdTable" cellpadding="2" cellspacing="0">
372  <tr>
373    <td class="mdRow">
374      <table cellpadding="0" cellspacing="0" border="0">
375        <tr>
376          <td class="md" nowrap valign="top"><a class="el" href="class_shared_runs.html">SharedRuns</a> * SharedRuns::joinRuns           </td>
377          <td class="md" valign="top">(&nbsp;</td>
378          <td class="md" nowrap valign="top"><a class="el" href="class_shared_runs.html">SharedRuns</a> *&nbsp;</td>
379          <td class="mdname1" valign="top" nowrap> <em>otherRuns</em>          </td>
380          <td class="md" valign="top">&nbsp;)&nbsp;</td>
381          <td class="md" nowrap><code> [virtual]</code></td>
382        </tr>
383      </table>
384    </td>
385  </tr>
386</table>
387<table cellspacing="5" cellpadding="0" border="0">
388  <tr>
389    <td>
390      &nbsp;
391    </td>
392    <td>
393
394<p>
395&amp;brief Joines two <a class="el" href="class_shared_runs.html">SharedRuns</a>.<p>
396The resulting <a class="el" href="class_shared_runs.html">SharedRuns</a> become the parent of the two <a class="el" href="class_shared_runs.html">SharedRuns</a>.<p>
397<dl compact><dt><b>Parameters:</b></dt><dd>
398  <table border="0" cellspacing="2" cellpadding="0">
399    <tr><td valign="top"></td><td valign="top"><em>otherRuns</em>&nbsp;</td><td>pointer to the <a class="el" href="class_shared_runs.html">SharedRuns</a> instance to join with </td></tr>
400  </table>
401</dl>
402<dl compact><dt><b>Returns:</b></dt><dd>the new parent <a class="el" href="class_shared_runs.html">SharedRuns</a> instance </dd></dl>
403    </td>
404  </tr>
405</table>
406<a class="anchor" name="88350edb49eafd666c77dc20e0586424"></a><!-- doxytag: member="SharedRuns::runChanged" ref="88350edb49eafd666c77dc20e0586424" args="(RenderingRunType runType, RenderingRun *run)" --><p>
407<table class="mdTable" cellpadding="2" cellspacing="0">
408  <tr>
409    <td class="mdRow">
410      <table cellpadding="0" cellspacing="0" border="0">
411        <tr>
412          <td class="md" nowrap valign="top">void SharedRuns::runChanged           </td>
413          <td class="md" valign="top">(&nbsp;</td>
414          <td class="md" nowrap valign="top">RenderingRunType&nbsp;</td>
415          <td class="mdname" nowrap> <em>runType</em>, </td>
416        </tr>
417        <tr>
418          <td class="md" nowrap align="right"></td>
419          <td class="md"></td>
420          <td class="md" nowrap><a class="el" href="class_rendering_run.html">RenderingRun</a> *&nbsp;</td>
421          <td class="mdname" nowrap> <em>run</em></td>
422        </tr>
423        <tr>
424          <td class="md"></td>
425          <td class="md">)&nbsp;</td>
426          <td class="md" colspan="2"><code> [virtual]</code></td>
427        </tr>
428      </table>
429    </td>
430  </tr>
431</table>
432<table cellspacing="5" cellpadding="0" border="0">
433  <tr>
434    <td>
435      &nbsp;
436    </td>
437    <td>
438
439<p>
440Called after one of he shared runs changes.
441<p>
442This message will be forwarded to each child.<p>
443<dl compact><dt><b>Parameters:</b></dt><dd>
444  <table border="0" cellspacing="2" cellpadding="0">
445    <tr><td valign="top"></td><td valign="top"><em>runType</em>&nbsp;</td><td>enum describing the type of the changed run </td></tr>
446    <tr><td valign="top"></td><td valign="top"><em>run</em>&nbsp;</td><td>pointer to the changed <a class="el" href="class_rendering_run.html">RenderingRun</a> </td></tr>
447  </table>
448</dl>
449    </td>
450  </tr>
451</table>
452<a class="anchor" name="f2448a5cb7757653f28b7b8ae7fccdcb"></a><!-- doxytag: member="SharedRuns::runUpdated" ref="f2448a5cb7757653f28b7b8ae7fccdcb" args="(RenderingRunType runType, RenderingRun *run)" --><p>
453<table class="mdTable" cellpadding="2" cellspacing="0">
454  <tr>
455    <td class="mdRow">
456      <table cellpadding="0" cellspacing="0" border="0">
457        <tr>
458          <td class="md" nowrap valign="top">void SharedRuns::runUpdated           </td>
459          <td class="md" valign="top">(&nbsp;</td>
460          <td class="md" nowrap valign="top">RenderingRunType&nbsp;</td>
461          <td class="mdname" nowrap> <em>runType</em>, </td>
462        </tr>
463        <tr>
464          <td class="md" nowrap align="right"></td>
465          <td class="md"></td>
466          <td class="md" nowrap><a class="el" href="class_rendering_run.html">RenderingRun</a> *&nbsp;</td>
467          <td class="mdname" nowrap> <em>run</em></td>
468        </tr>
469        <tr>
470          <td class="md"></td>
471          <td class="md">)&nbsp;</td>
472          <td class="md" colspan="2"><code> [virtual]</code></td>
473        </tr>
474      </table>
475    </td>
476  </tr>
477</table>
478<table cellspacing="5" cellpadding="0" border="0">
479  <tr>
480    <td>
481      &nbsp;
482    </td>
483    <td>
484
485<p>
486Called after one of he shared runs updates.
487<p>
488This message will be forwarded to each child.<p>
489<dl compact><dt><b>Parameters:</b></dt><dd>
490  <table border="0" cellspacing="2" cellpadding="0">
491    <tr><td valign="top"></td><td valign="top"><em>runType</em>&nbsp;</td><td>enum describing the type of the updated run </td></tr>
492    <tr><td valign="top"></td><td valign="top"><em>run</em>&nbsp;</td><td>pointer to the updated <a class="el" href="class_rendering_run.html">RenderingRun</a> </td></tr>
493  </table>
494</dl>
495    </td>
496  </tr>
497</table>
498<a class="anchor" name="bec46a54c661c83361966cd21b3ac4a5"></a><!-- doxytag: member="SharedRuns::setRenderablesVisible" ref="bec46a54c661c83361966cd21b3ac4a5" args="(bool visible)=0" --><p>
499<table class="mdTable" cellpadding="2" cellspacing="0">
500  <tr>
501    <td class="mdRow">
502      <table cellpadding="0" cellspacing="0" border="0">
503        <tr>
504          <td class="md" nowrap valign="top">virtual void SharedRuns::setRenderablesVisible           </td>
505          <td class="md" valign="top">(&nbsp;</td>
506          <td class="md" nowrap valign="top">bool&nbsp;</td>
507          <td class="mdname1" valign="top" nowrap> <em>visible</em>          </td>
508          <td class="md" valign="top">&nbsp;)&nbsp;</td>
509          <td class="md" nowrap><code> [protected, pure virtual]</code></td>
510        </tr>
511      </table>
512    </td>
513  </tr>
514</table>
515<table cellspacing="5" cellpadding="0" border="0">
516  <tr>
517    <td>
518      &nbsp;
519    </td>
520    <td>
521
522<p>
523Set visibility of connected renderables, only used if this is a leaf.
524<p>
525<dl compact><dt><b>Parameters:</b></dt><dd>
526  <table border="0" cellspacing="2" cellpadding="0">
527    <tr><td valign="top"></td><td valign="top"><em>visible</em>&nbsp;</td><td>visibility </td></tr>
528  </table>
529</dl>
530
531<p>
532Implemented in <a class="el" href="class_ogre_shared_runs.html#1edba9a8830ea0eac4983e5dcbefb1b0">OgreSharedRuns</a>.    </td>
533  </tr>
534</table>
535<a class="anchor" name="e9ac6a81e7a6f158db6b2f248b85616a"></a><!-- doxytag: member="SharedRuns::setTechniqueGroup" ref="e9ac6a81e7a6f158db6b2f248b85616a" args="(TechniqueGroup *group)" --><p>
536<table class="mdTable" cellpadding="2" cellspacing="0">
537  <tr>
538    <td class="mdRow">
539      <table cellpadding="0" cellspacing="0" border="0">
540        <tr>
541          <td class="md" nowrap valign="top">void SharedRuns::setTechniqueGroup           </td>
542          <td class="md" valign="top">(&nbsp;</td>
543          <td class="md" nowrap valign="top"><a class="el" href="class_technique_group.html">TechniqueGroup</a> *&nbsp;</td>
544          <td class="mdname1" valign="top" nowrap> <em>group</em>          </td>
545          <td class="md" valign="top">&nbsp;)&nbsp;</td>
546          <td class="md" nowrap><code> [inline]</code></td>
547        </tr>
548      </table>
549    </td>
550  </tr>
551</table>
552<table cellspacing="5" cellpadding="0" border="0">
553  <tr>
554    <td>
555      &nbsp;
556    </td>
557    <td>
558
559<p>
560Sets child <a class="el" href="class_technique_group.html">TechniqueGroup</a>.
561<p>
562<dl compact><dt><b>Parameters:</b></dt><dd>
563  <table border="0" cellspacing="2" cellpadding="0">
564    <tr><td valign="top"></td><td valign="top"><em>group</em>&nbsp;</td><td>pointer to the <a class="el" href="class_technique_group.html">TechniqueGroup</a> instance to add. </td></tr>
565  </table>
566</dl>
567    </td>
568  </tr>
569</table>
570<a class="anchor" name="9863e4a018d34a9f401080f49f3d7935"></a><!-- doxytag: member="SharedRuns::setVisible" ref="9863e4a018d34a9f401080f49f3d7935" args="(bool visible)" --><p>
571<table class="mdTable" cellpadding="2" cellspacing="0">
572  <tr>
573    <td class="mdRow">
574      <table cellpadding="0" cellspacing="0" border="0">
575        <tr>
576          <td class="md" nowrap valign="top">void SharedRuns::setVisible           </td>
577          <td class="md" valign="top">(&nbsp;</td>
578          <td class="md" nowrap valign="top">bool&nbsp;</td>
579          <td class="mdname1" valign="top" nowrap> <em>visible</em>          </td>
580          <td class="md" valign="top">&nbsp;)&nbsp;</td>
581          <td class="md" nowrap><code> [virtual]</code></td>
582        </tr>
583      </table>
584    </td>
585  </tr>
586</table>
587<table cellspacing="5" cellpadding="0" border="0">
588  <tr>
589    <td>
590      &nbsp;
591    </td>
592    <td>
593
594<p>
595Shows or hides this <a class="el" href="class_shared_runs.html">SharedRuns</a> (and also all childnodes).
596<p>
597<dl compact><dt><b>Parameters:</b></dt><dd>
598  <table border="0" cellspacing="2" cellpadding="0">
599    <tr><td valign="top"></td><td valign="top"><em>visible</em>&nbsp;</td><td>visibility </td></tr>
600  </table>
601</dl>
602    </td>
603  </tr>
604</table>
605<a class="anchor" name="2c4accae6abd91d75704cb068b873b89"></a><!-- doxytag: member="SharedRuns::updateRun" ref="2c4accae6abd91d75704cb068b873b89" args="(RenderingRunType runType, unsigned long frameNum)=0" --><p>
606<table class="mdTable" cellpadding="2" cellspacing="0">
607  <tr>
608    <td class="mdRow">
609      <table cellpadding="0" cellspacing="0" border="0">
610        <tr>
611          <td class="md" nowrap valign="top">virtual void SharedRuns::updateRun           </td>
612          <td class="md" valign="top">(&nbsp;</td>
613          <td class="md" nowrap valign="top">RenderingRunType&nbsp;</td>
614          <td class="mdname" nowrap> <em>runType</em>, </td>
615        </tr>
616        <tr>
617          <td class="md" nowrap align="right"></td>
618          <td class="md"></td>
619          <td class="md" nowrap>unsigned long&nbsp;</td>
620          <td class="mdname" nowrap> <em>frameNum</em></td>
621        </tr>
622        <tr>
623          <td class="md"></td>
624          <td class="md">)&nbsp;</td>
625          <td class="md" colspan="2"><code> [pure virtual]</code></td>
626        </tr>
627      </table>
628    </td>
629  </tr>
630</table>
631<table cellspacing="5" cellpadding="0" border="0">
632  <tr>
633    <td>
634      &nbsp;
635    </td>
636    <td>
637
638<p>
639&amp;brief Updates a shared <a class="el" href="class_rendering_run.html">RenderingRun</a>.<p>
640<dl compact><dt><b>Parameters:</b></dt><dd>
641  <table border="0" cellspacing="2" cellpadding="0">
642    <tr><td valign="top"></td><td valign="top"><em>runType</em>&nbsp;</td><td>enum, type of the <a class="el" href="class_rendering_run.html">RenderingRun</a> to update </td></tr>
643    <tr><td valign="top"></td><td valign="top"><em>frameNum</em>&nbsp;</td><td>current framenumber </td></tr>
644  </table>
645</dl>
646
647<p>
648Implemented in <a class="el" href="class_ogre_shared_runs.html#9ee431ad0185227b8e57edaed19a64d5">OgreSharedRuns</a>.    </td>
649  </tr>
650</table>
651<a class="anchor" name="16eaed1f16313bf8ad03537018ee859b"></a><!-- doxytag: member="SharedRuns::validate" ref="16eaed1f16313bf8ad03537018ee859b" args="()=0" --><p>
652<table class="mdTable" cellpadding="2" cellspacing="0">
653  <tr>
654    <td class="mdRow">
655      <table cellpadding="0" cellspacing="0" border="0">
656        <tr>
657          <td class="md" nowrap valign="top">virtual void SharedRuns::validate           </td>
658          <td class="md" valign="top">(&nbsp;</td>
659          <td class="mdname1" valign="top" nowrap>          </td>
660          <td class="md" valign="top">&nbsp;)&nbsp;</td>
661          <td class="md" nowrap><code> [pure virtual]</code></td>
662        </tr>
663      </table>
664    </td>
665  </tr>
666</table>
667<table cellspacing="5" cellpadding="0" border="0">
668  <tr>
669    <td>
670      &nbsp;
671    </td>
672    <td>
673
674<p>
675Validate this <a class="el" href="class_shared_runs.html">SharedRuns</a> (and also all childs).
676<p>
677Validation meens that all the <a class="el" href="class_shared_runs.html">SharedRuns</a> that are joined will be examined if the sharing is still valid. If it finds out that two <a class="el" href="class_shared_runs.html">SharedRuns</a> can't be joined anymore (eg.: they moved far from each other), their parent will be split and destroyed (all parent of this node also should be deleted recursively).
678<p>
679Implemented in <a class="el" href="class_ogre_shared_runs.html#e42e448a19c51f1f84a0986fc09b65bd">OgreSharedRuns</a>.    </td>
680  </tr>
681</table>
682<hr><h2>Member Data Documentation</h2>
683<a class="anchor" name="7511b767cc21b35174e7ed45501aa24a"></a><!-- doxytag: member="SharedRuns::childTechniques" ref="7511b767cc21b35174e7ed45501aa24a" args="" --><p>
684<table class="mdTable" cellpadding="2" cellspacing="0">
685  <tr>
686    <td class="mdRow">
687      <table cellpadding="0" cellspacing="0" border="0">
688        <tr>
689          <td class="md" nowrap valign="top"><a class="el" href="class_technique_group.html">TechniqueGroup</a>* <a class="el" href="class_shared_runs.html#7511b767cc21b35174e7ed45501aa24a">SharedRuns::childTechniques</a><code> [protected]</code>          </td>
690        </tr>
691      </table>
692    </td>
693  </tr>
694</table>
695<table cellspacing="5" cellpadding="0" border="0">
696  <tr>
697    <td>
698      &nbsp;
699    </td>
700    <td>
701
702<p>
703child <a class="el" href="class_technique_group.html">TechniqueGroup</a> instance.
704<p>
705If this <a class="el" href="class_shared_runs.html">SharedRuns</a> node is a leaf, it containes a reference to a <a class="el" href="class_technique_group.html">TechniqueGroup</a> instance. All messages will be transfered to this object, and bounding information will be retrieved from this <a class="el" href="class_technique_group.html">TechniqueGroup</a>     </td>
706  </tr>
707</table>
708<hr>The documentation for this class was generated from the following files:<ul>
709<li>SharedRuns.h<li>SharedRuns.cpp</ul>
710<hr size="1"><address style="align: right;"><small>Generated on Thu Apr 27 17:29:43 2006 for GameTools Illumination Module by&nbsp;
711<a href="http://www.doxygen.org/index.html">
712<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6-NO </small></address>
713</body>
714</html>
Note: See TracBrowser for help on using the repository browser.