source: GTP/trunk/Lib/Illum/IllumModule/doc/html/class_illumination_manager.html @ 894

Revision 894, 12.9 KB checked in by szirmay, 18 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: IlluminationManager 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>IlluminationManager Class Reference</h1><!-- doxytag: class="IlluminationManager" -->Base abstract class of the illumination manager. 
21<a href="#_details">More...</a>
22<p>
23<a href="class_illumination_manager-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
24<tr><td></td></tr>
25<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
26<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_illumination_manager.html#5281137b4bceb21deaed5216682d483c">update</a> (unsigned long frameNumber)=0</td></tr>
27
28<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The function to be called to render one frame.  <a href="#5281137b4bceb21deaed5216682d483c"></a><br></td></tr>
29<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_illumination_manager.html#c06cbcbdfe542288fb3c84ab863f4ce7">sharedRunSplit</a> (<a class="el" href="class_shared_runs.html">SharedRuns</a> *old, <a class="el" href="class_shared_runs.html">SharedRuns</a> *new1, <a class="el" href="class_shared_runs.html">SharedRuns</a> *new2)</td></tr>
30
31<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The function to be called when a shared run is splitted.  <a href="#c06cbcbdfe542288fb3c84ab863f4ce7"></a><br></td></tr>
32<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_illumination_manager.html#fb142ade7d9b9582f50a8393dad389a9">sharedRunJoin</a> (<a class="el" href="class_shared_runs.html">SharedRuns</a> *old1, <a class="el" href="class_shared_runs.html">SharedRuns</a> *old2, <a class="el" href="class_shared_runs.html">SharedRuns</a> *newsr)</td></tr>
33
34<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The function to be called when two shared runs are joined.  <a href="#fb142ade7d9b9582f50a8393dad389a9"></a><br></td></tr>
35<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_illumination_manager.html#e7a239ffa25ab0be21b9e58cb300c372">joinSharedRuns</a> ()</td></tr>
36
37<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Joins shared runs if needed.  <a href="#e7a239ffa25ab0be21b9e58cb300c372"></a><br></td></tr>
38<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_illumination_manager.html#a74e4287070724dc45323811a14f3146">addSharedRuns</a> (<a class="el" href="class_shared_runs.html">SharedRuns</a> *runs)</td></tr>
39
40<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Register a shared run object.  <a href="#a74e4287070724dc45323811a14f3146"></a><br></td></tr>
41</table>
42<hr><a name="_details"></a><h2>Detailed Description</h2>
43Base abstract class of the illumination manager.
44<p>
45The illumination manager is responsible for refreshing rendering techniques connected to visible renderables, and to render the scene with these updated resources. It also has the resposibility to manage shared runs, to join and split them if needed.
46<p>
47<hr><h2>Member Function Documentation</h2>
48<a class="anchor" name="a74e4287070724dc45323811a14f3146"></a><!-- doxytag: member="IlluminationManager::addSharedRuns" ref="a74e4287070724dc45323811a14f3146" args="(SharedRuns *runs)" --><p>
49<table class="mdTable" cellpadding="2" cellspacing="0">
50  <tr>
51    <td class="mdRow">
52      <table cellpadding="0" cellspacing="0" border="0">
53        <tr>
54          <td class="md" nowrap valign="top">virtual void IlluminationManager::addSharedRuns           </td>
55          <td class="md" valign="top">(&nbsp;</td>
56          <td class="md" nowrap valign="top"><a class="el" href="class_shared_runs.html">SharedRuns</a> *&nbsp;</td>
57          <td class="mdname1" valign="top" nowrap> <em>runs</em>          </td>
58          <td class="md" valign="top">&nbsp;)&nbsp;</td>
59          <td class="md" nowrap><code> [inline, virtual]</code></td>
60        </tr>
61      </table>
62    </td>
63  </tr>
64</table>
65<table cellspacing="5" cellpadding="0" border="0">
66  <tr>
67    <td>
68      &nbsp;
69    </td>
70    <td>
71
72<p>
73Register a shared run object.
74<p>
75Only called when new techniques are created.<p>
76<dl compact><dt><b>Parameters:</b></dt><dd>
77  <table border="0" cellspacing="2" cellpadding="0">
78    <tr><td valign="top"></td><td valign="top"><em>runs</em>&nbsp;</td><td>pointer to the <a class="el" href="class_shared_runs.html">SharedRuns</a> instance to add </td></tr>
79  </table>
80</dl>
81    </td>
82  </tr>
83</table>
84<a class="anchor" name="e7a239ffa25ab0be21b9e58cb300c372"></a><!-- doxytag: member="IlluminationManager::joinSharedRuns" ref="e7a239ffa25ab0be21b9e58cb300c372" args="()" --><p>
85<table class="mdTable" cellpadding="2" cellspacing="0">
86  <tr>
87    <td class="mdRow">
88      <table cellpadding="0" cellspacing="0" border="0">
89        <tr>
90          <td class="md" nowrap valign="top">virtual void IlluminationManager::joinSharedRuns           </td>
91          <td class="md" valign="top">(&nbsp;</td>
92          <td class="mdname1" valign="top" nowrap>          </td>
93          <td class="md" valign="top">&nbsp;)&nbsp;</td>
94          <td class="md" nowrap><code> [inline, virtual]</code></td>
95        </tr>
96      </table>
97    </td>
98  </tr>
99</table>
100<table cellspacing="5" cellpadding="0" border="0">
101  <tr>
102    <td>
103      &nbsp;
104    </td>
105    <td>
106
107<p>
108Joins shared runs if needed.
109<p>
110Searches the registered shared run roots and join them if necessary (they are close enough).     </td>
111  </tr>
112</table>
113<a class="anchor" name="fb142ade7d9b9582f50a8393dad389a9"></a><!-- doxytag: member="IlluminationManager::sharedRunJoin" ref="fb142ade7d9b9582f50a8393dad389a9" args="(SharedRuns *old1, SharedRuns *old2, SharedRuns *newsr)" --><p>
114<table class="mdTable" cellpadding="2" cellspacing="0">
115  <tr>
116    <td class="mdRow">
117      <table cellpadding="0" cellspacing="0" border="0">
118        <tr>
119          <td class="md" nowrap valign="top">virtual void IlluminationManager::sharedRunJoin           </td>
120          <td class="md" valign="top">(&nbsp;</td>
121          <td class="md" nowrap valign="top"><a class="el" href="class_shared_runs.html">SharedRuns</a> *&nbsp;</td>
122          <td class="mdname" nowrap> <em>old1</em>, </td>
123        </tr>
124        <tr>
125          <td class="md" nowrap align="right"></td>
126          <td class="md"></td>
127          <td class="md" nowrap><a class="el" href="class_shared_runs.html">SharedRuns</a> *&nbsp;</td>
128          <td class="mdname" nowrap> <em>old2</em>, </td>
129        </tr>
130        <tr>
131          <td class="md" nowrap align="right"></td>
132          <td class="md"></td>
133          <td class="md" nowrap><a class="el" href="class_shared_runs.html">SharedRuns</a> *&nbsp;</td>
134          <td class="mdname" nowrap> <em>newsr</em></td>
135        </tr>
136        <tr>
137          <td class="md"></td>
138          <td class="md">)&nbsp;</td>
139          <td class="md" colspan="2"><code> [inline, virtual]</code></td>
140        </tr>
141      </table>
142    </td>
143  </tr>
144</table>
145<table cellspacing="5" cellpadding="0" border="0">
146  <tr>
147    <td>
148      &nbsp;
149    </td>
150    <td>
151
152<p>
153The function to be called when two shared runs are joined.
154<p>
155<dl compact><dt><b>Parameters:</b></dt><dd>
156  <table border="0" cellspacing="2" cellpadding="0">
157    <tr><td valign="top"></td><td valign="top"><em>old1</em>&nbsp;</td><td>pointer to one of the <a class="el" href="class_shared_runs.html">SharedRuns</a> instance that are joined </td></tr>
158    <tr><td valign="top"></td><td valign="top"><em>old2</em>&nbsp;</td><td>pointer to the other <a class="el" href="class_shared_runs.html">SharedRuns</a> instance that are joined </td></tr>
159    <tr><td valign="top"></td><td valign="top"><em>newsr</em>&nbsp;</td><td>pointer to the resulting parent <a class="el" href="class_shared_runs.html">SharedRuns</a> instance </td></tr>
160  </table>
161</dl>
162    </td>
163  </tr>
164</table>
165<a class="anchor" name="c06cbcbdfe542288fb3c84ab863f4ce7"></a><!-- doxytag: member="IlluminationManager::sharedRunSplit" ref="c06cbcbdfe542288fb3c84ab863f4ce7" args="(SharedRuns *old, SharedRuns *new1, SharedRuns *new2)" --><p>
166<table class="mdTable" cellpadding="2" cellspacing="0">
167  <tr>
168    <td class="mdRow">
169      <table cellpadding="0" cellspacing="0" border="0">
170        <tr>
171          <td class="md" nowrap valign="top">virtual void IlluminationManager::sharedRunSplit           </td>
172          <td class="md" valign="top">(&nbsp;</td>
173          <td class="md" nowrap valign="top"><a class="el" href="class_shared_runs.html">SharedRuns</a> *&nbsp;</td>
174          <td class="mdname" nowrap> <em>old</em>, </td>
175        </tr>
176        <tr>
177          <td class="md" nowrap align="right"></td>
178          <td class="md"></td>
179          <td class="md" nowrap><a class="el" href="class_shared_runs.html">SharedRuns</a> *&nbsp;</td>
180          <td class="mdname" nowrap> <em>new1</em>, </td>
181        </tr>
182        <tr>
183          <td class="md" nowrap align="right"></td>
184          <td class="md"></td>
185          <td class="md" nowrap><a class="el" href="class_shared_runs.html">SharedRuns</a> *&nbsp;</td>
186          <td class="mdname" nowrap> <em>new2</em></td>
187        </tr>
188        <tr>
189          <td class="md"></td>
190          <td class="md">)&nbsp;</td>
191          <td class="md" colspan="2"><code> [inline, virtual]</code></td>
192        </tr>
193      </table>
194    </td>
195  </tr>
196</table>
197<table cellspacing="5" cellpadding="0" border="0">
198  <tr>
199    <td>
200      &nbsp;
201    </td>
202    <td>
203
204<p>
205The function to be called when a shared run is splitted.
206<p>
207<dl compact><dt><b>Parameters:</b></dt><dd>
208  <table border="0" cellspacing="2" cellpadding="0">
209    <tr><td valign="top"></td><td valign="top"><em>old</em>&nbsp;</td><td>pointer to the <a class="el" href="class_shared_runs.html">SharedRuns</a> instance that is split </td></tr>
210    <tr><td valign="top"></td><td valign="top"><em>new1</em>&nbsp;</td><td>pointer to one of the <a class="el" href="class_shared_runs.html">SharedRuns</a> instance that remain after split </td></tr>
211    <tr><td valign="top"></td><td valign="top"><em>new2</em>&nbsp;</td><td>pointer to the other <a class="el" href="class_shared_runs.html">SharedRuns</a> instance that remain after split </td></tr>
212  </table>
213</dl>
214    </td>
215  </tr>
216</table>
217<a class="anchor" name="5281137b4bceb21deaed5216682d483c"></a><!-- doxytag: member="IlluminationManager::update" ref="5281137b4bceb21deaed5216682d483c" args="(unsigned long frameNumber)=0" --><p>
218<table class="mdTable" cellpadding="2" cellspacing="0">
219  <tr>
220    <td class="mdRow">
221      <table cellpadding="0" cellspacing="0" border="0">
222        <tr>
223          <td class="md" nowrap valign="top">virtual void IlluminationManager::update           </td>
224          <td class="md" valign="top">(&nbsp;</td>
225          <td class="md" nowrap valign="top">unsigned long&nbsp;</td>
226          <td class="mdname1" valign="top" nowrap> <em>frameNumber</em>          </td>
227          <td class="md" valign="top">&nbsp;)&nbsp;</td>
228          <td class="md" nowrap><code> [pure virtual]</code></td>
229        </tr>
230      </table>
231    </td>
232  </tr>
233</table>
234<table cellspacing="5" cellpadding="0" border="0">
235  <tr>
236    <td>
237      &nbsp;
238    </td>
239    <td>
240
241<p>
242The function to be called to render one frame.
243<p>
244This is the main refreshing function. It seasrches for visible objects, manages shared runs, updates render techniques and finally renders the scene to framebuffer.<p>
245<dl compact><dt><b>Parameters:</b></dt><dd>
246  <table border="0" cellspacing="2" cellpadding="0">
247    <tr><td valign="top"></td><td valign="top"><em>frameNumber</em>&nbsp;</td><td>current framenumber </td></tr>
248  </table>
249</dl>
250    </td>
251  </tr>
252</table>
253<hr>The documentation for this class was generated from the following file:<ul>
254<li>IlluminationManager.h</ul>
255<hr size="1"><address style="align: right;"><small>Generated on Thu Apr 27 17:29:37 2006 for GameTools Illumination Module by&nbsp;
256<a href="http://www.doxygen.org/index.html">
257<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6-NO </small></address>
258</body>
259</html>
Note: See TracBrowser for help on using the repository browser.