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

Revision 894, 14.2 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: RenderingRun 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>RenderingRun Class Reference</h1><!-- doxytag: class="RenderingRun" -->Base class for a computation module. 
21<a href="#_details">More...</a>
22<p>
23<p>Inheritance diagram for RenderingRun:
24<p><center><img src="class_rendering_run.png" usemap="#RenderingRun_map" border="0" alt=""></center>
25<map name="RenderingRun_map">
26<area href="class_caustic_cube_map_rendering_run.html" alt="CausticCubeMapRenderingRun" shape="rect" coords="215,56,420,80">
27<area href="class_color_cube_map_rendering_run.html" alt="ColorCubeMapRenderingRun" shape="rect" coords="215,112,420,136">
28<area href="class_depth_shadow_map_rendering_run.html" alt="DepthShadowMapRenderingRun" shape="rect" coords="215,168,420,192">
29<area href="class_distance_cube_map_rendering_run.html" alt="DistanceCubeMapRenderingRun" shape="rect" coords="215,224,420,248">
30<area href="class_ogre_rendering_run.html" alt="OgreRenderingRun" shape="rect" coords="215,280,420,304">
31<area href="class_photon_map_rendering_run.html" alt="PhotonMapRenderingRun" shape="rect" coords="215,336,420,360">
32<area href="class_reduced_cube_map_rendering_run.html" alt="ReducedCubeMapRenderingRun" shape="rect" coords="215,392,420,416">
33<area href="class_scene_camera_depth_rendering_run.html" alt="SceneCameraDepthRenderingRun" shape="rect" coords="215,448,420,472">
34</map>
35<a href="class_rendering_run-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
36<tr><td></td></tr>
37<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
38<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_rendering_run.html#2e9c5413ffa53a98ba4e0efc38e29f82">RenderingRun</a> (unsigned long <a class="el" href="class_rendering_run.html#cb0a9e0eec1217206a14f7d387487443">startFrame</a>, unsigned long <a class="el" href="class_rendering_run.html#7196160c7f2effe7235b710a12f1b262">updateInterval</a>)</td></tr>
39
40<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#2e9c5413ffa53a98ba4e0efc38e29f82"></a><br></td></tr>
41<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a406b09a0979c7a9879e21dd657f82f1"></a><!-- doxytag: member="RenderingRun::update" ref="a406b09a0979c7a9879e21dd657f82f1" args="(unsigned long frameNum)" -->
42void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_rendering_run.html#a406b09a0979c7a9879e21dd657f82f1">update</a> (unsigned long frameNum)</td></tr>
43
44<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calls <a class="el" href="class_rendering_run.html#043309cb823ebddcbe2bae2c61892235">updateFrame()</a> if the run needs update according to its starting frame and update interval and has not been allready updated in this frame. <br></td></tr>
45<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual class <a class="el" href="class_ogre_rendering_run.html">OgreRenderingRun</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_rendering_run.html#7aa3ced3a6f0c81967e995a8a7c44ca2">asOgreRenderingRun</a> ()</td></tr>
46
47<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Conversion to OgreRenderRun.  <a href="#7aa3ced3a6f0c81967e995a8a7c44ca2"></a><br></td></tr>
48<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
49<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_rendering_run.html#eb0d28ea24409ed47120c79577eaae44">needUpdate</a> (unsigned long frameNum)</td></tr>
50
51<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns if this run needs update.  <a href="#eb0d28ea24409ed47120c79577eaae44"></a><br></td></tr>
52<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_rendering_run.html#043309cb823ebddcbe2bae2c61892235">updateFrame</a> (unsigned long frameNum)</td></tr>
53
54<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function does the actual update in a frame.  <a href="#043309cb823ebddcbe2bae2c61892235"></a><br></td></tr>
55<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
56<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7ce9456249d948e4155b7b112f83bf08"></a><!-- doxytag: member="RenderingRun::lastupdated" ref="7ce9456249d948e4155b7b112f83bf08" args="" -->
57unsigned long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_rendering_run.html#7ce9456249d948e4155b7b112f83bf08">lastupdated</a></td></tr>
58
59<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The number of the last frame this run was updated. <br></td></tr>
60<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cb0a9e0eec1217206a14f7d387487443"></a><!-- doxytag: member="RenderingRun::startFrame" ref="cb0a9e0eec1217206a14f7d387487443" args="" -->
61unsigned long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_rendering_run.html#cb0a9e0eec1217206a14f7d387487443">startFrame</a></td></tr>
62
63<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The number of the frame this run should be updated first. <br></td></tr>
64<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7196160c7f2effe7235b710a12f1b262"></a><!-- doxytag: member="RenderingRun::updateInterval" ref="7196160c7f2effe7235b710a12f1b262" args="" -->
65unsigned long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_rendering_run.html#7196160c7f2effe7235b710a12f1b262">updateInterval</a></td></tr>
66
67<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Refresh frequency in frames. <br></td></tr>
68</table>
69<hr><a name="_details"></a><h2>Detailed Description</h2>
70Base class for a computation module.
71<p>
72A run typically - but not necessarily or exclusively - consists of a series of rendering passes. A run is alway created to compute some kind of resource for a <a class="el" href="class_render_technique.html">RenderTechnique</a>. The type of the resource depends on the type of the run (typically it is a Texture). Runs can be attached to only one Technique (if only one of the Techniques attached to a Renderable can use this resource, and each Renderable requires a unique one), or can be shared between several Techniques and Renderables (for example a cube-map). Runs are updated only once in a frame, but not necessary in each frame.
73<p>
74<hr><h2>Constructor &amp; Destructor Documentation</h2>
75<a class="anchor" name="2e9c5413ffa53a98ba4e0efc38e29f82"></a><!-- doxytag: member="RenderingRun::RenderingRun" ref="2e9c5413ffa53a98ba4e0efc38e29f82" args="(unsigned long startFrame, unsigned long updateInterval)" --><p>
76<table class="mdTable" cellpadding="2" cellspacing="0">
77  <tr>
78    <td class="mdRow">
79      <table cellpadding="0" cellspacing="0" border="0">
80        <tr>
81          <td class="md" nowrap valign="top">RenderingRun::RenderingRun           </td>
82          <td class="md" valign="top">(&nbsp;</td>
83          <td class="md" nowrap valign="top">unsigned long&nbsp;</td>
84          <td class="mdname" nowrap> <em>startFrame</em>, </td>
85        </tr>
86        <tr>
87          <td class="md" nowrap align="right"></td>
88          <td class="md"></td>
89          <td class="md" nowrap>unsigned long&nbsp;</td>
90          <td class="mdname" nowrap> <em>updateInterval</em></td>
91        </tr>
92        <tr>
93          <td class="md"></td>
94          <td class="md">)&nbsp;</td>
95          <td class="md" colspan="2"></td>
96        </tr>
97      </table>
98    </td>
99  </tr>
100</table>
101<table cellspacing="5" cellpadding="0" border="0">
102  <tr>
103    <td>
104      &nbsp;
105    </td>
106    <td>
107
108<p>
109Constructor.
110<p>
111<dl compact><dt><b>Parameters:</b></dt><dd>
112  <table border="0" cellspacing="2" cellpadding="0">
113    <tr><td valign="top"></td><td valign="top"><em>startFrame</em>&nbsp;</td><td>adds an offset to the current frame number to help evenly distribute updates between frames </td></tr>
114    <tr><td valign="top"></td><td valign="top"><em>updateInterval</em>&nbsp;</td><td>photon map update frequency </td></tr>
115  </table>
116</dl>
117    </td>
118  </tr>
119</table>
120<hr><h2>Member Function Documentation</h2>
121<a class="anchor" name="7aa3ced3a6f0c81967e995a8a7c44ca2"></a><!-- doxytag: member="RenderingRun::asOgreRenderingRun" ref="7aa3ced3a6f0c81967e995a8a7c44ca2" args="()" --><p>
122<table class="mdTable" cellpadding="2" cellspacing="0">
123  <tr>
124    <td class="mdRow">
125      <table cellpadding="0" cellspacing="0" border="0">
126        <tr>
127          <td class="md" nowrap valign="top">virtual class <a class="el" href="class_ogre_rendering_run.html">OgreRenderingRun</a>* RenderingRun::asOgreRenderingRun           </td>
128          <td class="md" valign="top">(&nbsp;</td>
129          <td class="mdname1" valign="top" nowrap>          </td>
130          <td class="md" valign="top">&nbsp;)&nbsp;</td>
131          <td class="md" nowrap><code> [inline, virtual]</code></td>
132        </tr>
133      </table>
134    </td>
135  </tr>
136</table>
137<table cellspacing="5" cellpadding="0" border="0">
138  <tr>
139    <td>
140      &nbsp;
141    </td>
142    <td>
143
144<p>
145Conversion to OgreRenderRun.
146<p>
147This function is needed because of virtual inheritance.
148<p>
149Reimplemented in <a class="el" href="class_ogre_rendering_run.html#e60b4569fb13979b6ffd3c445e4fe8d7">OgreRenderingRun</a>.    </td>
150  </tr>
151</table>
152<a class="anchor" name="eb0d28ea24409ed47120c79577eaae44"></a><!-- doxytag: member="RenderingRun::needUpdate" ref="eb0d28ea24409ed47120c79577eaae44" args="(unsigned long frameNum)" --><p>
153<table class="mdTable" cellpadding="2" cellspacing="0">
154  <tr>
155    <td class="mdRow">
156      <table cellpadding="0" cellspacing="0" border="0">
157        <tr>
158          <td class="md" nowrap valign="top">bool RenderingRun::needUpdate           </td>
159          <td class="md" valign="top">(&nbsp;</td>
160          <td class="md" nowrap valign="top">unsigned long&nbsp;</td>
161          <td class="mdname1" valign="top" nowrap> <em>frameNum</em>          </td>
162          <td class="md" valign="top">&nbsp;)&nbsp;</td>
163          <td class="md" nowrap><code> [inline, protected]</code></td>
164        </tr>
165      </table>
166    </td>
167  </tr>
168</table>
169<table cellspacing="5" cellpadding="0" border="0">
170  <tr>
171    <td>
172      &nbsp;
173    </td>
174    <td>
175
176<p>
177Returns if this run needs update.
178<p>
179<dl compact><dt><b>Parameters:</b></dt><dd>
180  <table border="0" cellspacing="2" cellpadding="0">
181    <tr><td valign="top"></td><td valign="top"><em>frameNum</em>&nbsp;</td><td>current frame number </td></tr>
182  </table>
183</dl>
184    </td>
185  </tr>
186</table>
187<a class="anchor" name="043309cb823ebddcbe2bae2c61892235"></a><!-- doxytag: member="RenderingRun::updateFrame" ref="043309cb823ebddcbe2bae2c61892235" args="(unsigned long frameNum)" --><p>
188<table class="mdTable" cellpadding="2" cellspacing="0">
189  <tr>
190    <td class="mdRow">
191      <table cellpadding="0" cellspacing="0" border="0">
192        <tr>
193          <td class="md" nowrap valign="top">virtual void RenderingRun::updateFrame           </td>
194          <td class="md" valign="top">(&nbsp;</td>
195          <td class="md" nowrap valign="top">unsigned long&nbsp;</td>
196          <td class="mdname1" valign="top" nowrap> <em>frameNum</em>          </td>
197          <td class="md" valign="top">&nbsp;)&nbsp;</td>
198          <td class="md" nowrap><code> [inline, protected, virtual]</code></td>
199        </tr>
200      </table>
201    </td>
202  </tr>
203</table>
204<table cellspacing="5" cellpadding="0" border="0">
205  <tr>
206    <td>
207      &nbsp;
208    </td>
209    <td>
210
211<p>
212This function does the actual update in a frame.
213<p>
214<dl compact><dt><b>Parameters:</b></dt><dd>
215  <table border="0" cellspacing="2" cellpadding="0">
216    <tr><td valign="top"></td><td valign="top"><em>frameNum</em>&nbsp;</td><td>current frame number </td></tr>
217  </table>
218</dl>
219
220<p>
221Reimplemented in <a class="el" href="class_caustic_cube_map_rendering_run.html#95c0eb448e09d62d03f4f7ea5a100109">CausticCubeMapRenderingRun</a>, <a class="el" href="class_color_cube_map_rendering_run.html#a39b0ce5f25b1377b5867292a8f92ee4">ColorCubeMapRenderingRun</a>, <a class="el" href="class_depth_shadow_map_rendering_run.html#de3c9eb12ebec3d57ea8fc46b809000d">DepthShadowMapRenderingRun</a>, <a class="el" href="class_distance_cube_map_rendering_run.html#3c03ed3d65839adb69ebbe90defc67cf">DistanceCubeMapRenderingRun</a>, <a class="el" href="class_photon_map_rendering_run.html#bf26e2ba9976a6260ba64f0f8b957afb">PhotonMapRenderingRun</a>, <a class="el" href="class_reduced_cube_map_rendering_run.html#9c1c69dc246543b1a2ee6ef19ae637fa">ReducedCubeMapRenderingRun</a>, <a class="el" href="class_scene_camera_depth_rendering_run.html#749edabd991db542031ca91e137b5b8b">SceneCameraDepthRenderingRun</a>, <a class="el" href="class_ogre_depth_shadow_map_rendering_run.html#5953011948f5584f1a22c9318232edb7">OgreDepthShadowMapRenderingRun</a>, <a class="el" href="class_ogre_photon_map_rendering_run.html#963a3e60a34ce8cec8a542d2f22db10a">OgrePhotonMapRenderingRun</a>, and <a class="el" href="class_ogre_scene_camera_depth_rendering_run.html#9b4e8dd326ada476b27ac420766bd1ed">OgreSceneCameraDepthRenderingRun</a>.    </td>
222  </tr>
223</table>
224<hr>The documentation for this class was generated from the following files:<ul>
225<li>RenderingRun.h<li>RenderingRun.cpp</ul>
226<hr size="1"><address style="align: right;"><small>Generated on Thu Apr 27 17:29:42 2006 for GameTools Illumination Module by&nbsp;
227<a href="http://www.doxygen.org/index.html">
228<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6-NO </small></address>
229</body>
230</html>
Note: See TracBrowser for help on using the repository browser.