source: GTP/branches/IllumWPdeliver2008dec/IlluminationWP/demos/Standalone/EnvMap [DirectX]/doxygen/_main_8cpp.html @ 3255

Revision 3255, 60.2 KB checked in by szirmay, 15 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>Indirect Environment Mapping: Main.cpp File Reference</title>
4<link href="doxygen.css" rel="stylesheet" type="text/css">
5</head><body>
6<!-- Generated by Doxygen 1.4.2 -->
7<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
8<h1>Main.cpp File Reference</h1>Performs DirectX initialization via DXUT callback functions. Adds some additional helper functions to support screenshot capturing. <a href="#_details">More...</a>
9<p>
10<code>#include "dxstdafx.h"</code><br>
11<code>#include "<a class="el" href="resource_8h.html">resource.h</a>"</code><br>
12<code>#include &lt;math.h&gt;</code><br>
13<code>#include &lt;stdio.h&gt;</code><br>
14<code>#include &lt;time.h&gt;</code><br>
15<code>#include "<a class="el" href="_cube_8h.html">Cube.h</a>"</code><br>
16<code>#include "<a class="el" href="_mesh_8h.html">Mesh.h</a>"</code><br>
17<code>#include "<a class="el" href="_parameters_8h.html">Parameters.h</a>"</code><br>
18<code>#include "<a class="el" href="_env_map_8h.html">EnvMap.h</a>"</code><br>
19<table border="0" cellpadding="0" cellspacing="0">
20<tr><td></td></tr>
21<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
22<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a0">FX_FILENAME</a>&nbsp;&nbsp;&nbsp;L"EnvMap.fx"</td></tr>
23
24<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">File containing the shader code.  <a href="#a0"></a><br></td></tr>
25<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
26<tr><td class="memItemLeft" nowrap align="right" valign="top">bool CALLBACK&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a18">IsDeviceAcceptable</a> (D3DCAPS9 *pCaps, D3DFORMAT AdapterFormat, D3DFORMAT BackBufferFormat, bool bWindowed, void *pUserContext)</td></tr>
27
28<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">DXUT callback (Rejects any devices that aren't acceptable by returning false).  <a href="#a18"></a><br></td></tr>
29<tr><td class="memItemLeft" nowrap align="right" valign="top">bool CALLBACK&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a19">ModifyDeviceSettings</a> (DXUTDeviceSettings *pDeviceSettings, const D3DCAPS9 *pCaps, void *pUserContext)</td></tr>
30
31<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">DXUT callback (Before a device is created, modifies the device settings as needed).  <a href="#a19"></a><br></td></tr>
32<tr><td class="memItemLeft" nowrap align="right" valign="top">HRESULT CALLBACK&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a20">OnCreateDevice</a> (IDirect3DDevice9 *<a class="el" href="_mesh_8cpp.html#a0">g_pd3dDevice</a>, const D3DSURFACE_DESC *pBackBufferSurfaceDesc, void *pUserContext)</td></tr>
33
34<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">DXUT callback (You should create any D3DPOOL_MANAGED resources here).  <a href="#a20"></a><br></td></tr>
35<tr><td class="memItemLeft" nowrap align="right" valign="top">HRESULT CALLBACK&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a21">OnResetDevice</a> (IDirect3DDevice9 *<a class="el" href="_mesh_8cpp.html#a0">g_pd3dDevice</a>, const D3DSURFACE_DESC *pBackBufferSurfaceDesc, void *pUserContext)</td></tr>
36
37<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">DXUT callback (You should create any D3DPOOL_DEFAULT resources here).  <a href="#a21"></a><br></td></tr>
38<tr><td class="memItemLeft" nowrap align="right" valign="top">void CALLBACK&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a22">OnFrameMove</a> (IDirect3DDevice9 *<a class="el" href="_mesh_8cpp.html#a0">g_pd3dDevice</a>, double fTime, float fElapsedTime, void *pUserContext)</td></tr>
39
40<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">DXUT callback (Handle updates to the scene).  <a href="#a22"></a><br></td></tr>
41<tr><td class="memItemLeft" nowrap align="right" valign="top">void CALLBACK&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a23">OnFrameRender</a> (IDirect3DDevice9 *<a class="el" href="_mesh_8cpp.html#a0">g_pd3dDevice</a>, double fTime, float fElapsedTime, void *pUserContext)</td></tr>
42
43<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><b>DXUT callback (Render the scene). Also responsible for screenshot taking.</b>  <a href="#a23"></a><br></td></tr>
44<tr><td class="memItemLeft" nowrap align="right" valign="top">LRESULT CALLBACK&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a24">MsgProc</a> (HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam, bool *pbNoFurtherProcessing, void *pUserContext)</td></tr>
45
46<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">DXUT callback (Message processing).  <a href="#a24"></a><br></td></tr>
47<tr><td class="memItemLeft" nowrap align="right" valign="top">void CALLBACK&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a25">KeyboardProc</a> (UINT nChar, bool bKeyDown, bool bAltDown, void *pUserContext)</td></tr>
48
49<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">DXUT callback (Keystroke messages).  <a href="#a25"></a><br></td></tr>
50<tr><td class="memItemLeft" nowrap align="right" valign="top">void CALLBACK&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a26">OnGUIEvent</a> (UINT nEvent, int nControlID, CDXUTControl *pControl, void *pUserContext)</td></tr>
51
52<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">DXUT callback (called by the framework in case of GUI events). Forwards GUI event to the parameter-manager class <a class="el" href="class_parameters.html">Parameters</a> (see <a class="el" href="_main_8cpp.html#a7">pp</a>).  <a href="#a26"></a><br></td></tr>
53<tr><td class="memItemLeft" nowrap align="right" valign="top">void CALLBACK&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a27">OnLostDevice</a> (void *pUserContext)</td></tr>
54
55<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">DXUT callback (You should release resources created in the OnResetDevice callback here).  <a href="#a27"></a><br></td></tr>
56<tr><td class="memItemLeft" nowrap align="right" valign="top">void CALLBACK&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a28">OnDestroyDevice</a> (void *pUserContext)</td></tr>
57
58<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">DXUT callback (You should release resources created in the OnCreateDevice callback here).  <a href="#a28"></a><br></td></tr>
59<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a29">InitParams</a> ()</td></tr>
60
61<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Defines application-specific parameters and creates GUI controls (sliders, checkboxes) for them. Finally, loads initial values for the parameters from file called <b>.params0</b> (Reset). Use <a class="el" href="class_parameters.html#a8">Parameters::Add</a> to create GUI controls.  <a href="#a29"></a><br></td></tr>
62<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a30">RenderText</a> ()</td></tr>
63
64<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Renders help and statistics text and displays algorithmic-specific parameters.  <a href="#a30"></a><br></td></tr>
65<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a31">SaveCameraPosition</a> (char *fileName)</td></tr>
66
67<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Writes current camera settings to file.  <a href="#a31"></a><br></td></tr>
68<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a32">LoadCameraPosition</a> (char *fileName)</td></tr>
69
70<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Loads camera settings from file.  <a href="#a32"></a><br></td></tr>
71<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a33">GenerateNewFileName</a> (int &amp;<a class="el" href="_main_8cpp.html#a15">counter</a>)</td></tr>
72
73<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generates a non-existing filename to store the screenshot in the <b>shots</b> directory.  <a href="#a33"></a><br></td></tr>
74<tr><td class="memItemLeft" nowrap align="right" valign="top">INT WINAPI&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a34">WinMain</a> (HINSTANCE, HINSTANCE, LPSTR, int)</td></tr>
75
76<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Entry point to the program.  <a href="#a34"></a><br></td></tr>
77<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a35">OnLoad</a> ()</td></tr>
78
79<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">(Load, Save, Reset are default buttons.)  <a href="#a35"></a><br></td></tr>
80<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a36">OnSave</a> ()</td></tr>
81
82<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">(Load, Save, Reset are default buttons.)  <a href="#a36"></a><br></td></tr>
83<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a37">OnReset</a> ()</td></tr>
84
85<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">(Load, Save, Reset are default buttons.)  <a href="#a37"></a><br></td></tr>
86<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a38">Exponent</a> (float f)</td></tr>
87
88<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Callback of type <a class="el" href="_parameters_8h.html#a1">CONVERTER</a>.  <a href="#a38"></a><br></td></tr>
89<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a39">OnChangeCubeMap</a> ()</td></tr>
90
91<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Actions to be taken when the cubemaps get invalid. Callback of type <a class="el" href="_parameters_8h.html#a2">ONCHANGE_CALLBACK</a>.  <a href="#a39"></a><br></td></tr>
92<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a40">OnChangeMesh</a> ()</td></tr>
93
94<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Actions to be taken when the central mesh object is changed. Callback of type <a class="el" href="_parameters_8h.html#a2">ONCHANGE_CALLBACK</a>.  <a href="#a40"></a><br></td></tr>
95<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a41">OnChangeMeshSize</a> ()</td></tr>
96
97<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Actions to be taken when the size of the central mesh is to change. Callback of type <a class="el" href="_parameters_8h.html#a2">ONCHANGE_CALLBACK</a>.  <a href="#a41"></a><br></td></tr>
98<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a42">OnChangeShininess</a> ()</td></tr>
99
100<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Actions to be taken when the shininess is to change. Callback of type <a class="el" href="_parameters_8h.html#a2">ONCHANGE_CALLBACK</a>.  <a href="#a42"></a><br></td></tr>
101<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a43">OnChangeResolution</a> ()</td></tr>
102
103<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Actions to be taken when the resolution is to change. Callback of type <a class="el" href="_parameters_8h.html#a2">ONCHANGE_CALLBACK</a>.  <a href="#a43"></a><br></td></tr>
104<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
105<tr><td class="memItemLeft" nowrap align="right" valign="top">const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a1">WIDTH</a> = 800</td></tr>
106
107<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">screen width  <a href="#a1"></a><br></td></tr>
108<tr><td class="memItemLeft" nowrap align="right" valign="top">const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a2">HEIGHT</a> = 800</td></tr>
109
110<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">screen height  <a href="#a2"></a><br></td></tr>
111<tr><td class="memItemLeft" nowrap align="right" valign="top">const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a3">CHARBUFFER_SIZE</a> = 200</td></tr>
112
113<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">length of the buffer (one line to be saved to file)  <a href="#a3"></a><br></td></tr>
114<tr><td class="memItemLeft" nowrap align="right" valign="top">IDirect3DDevice9 *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a4">g_pd3dDevice</a></td></tr>
115
116<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">THE D3D DEVICE.  <a href="#a4"></a><br></td></tr>
117<tr><td class="memItemLeft" nowrap align="right" valign="top">ID3DXEffect *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a5">g_pEffect</a></td></tr>
118
119<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">THE EFFECT FILE.  <a href="#a5"></a><br></td></tr>
120<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_env_map.html">EnvMap</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a6">envmapRenderer</a></td></tr>
121
122<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">PROBLEM-SPECIFIC CLASS.  <a href="#a6"></a><br></td></tr>
123<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_parameters.html">Parameters</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a7">pp</a></td></tr>
124
125<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">HELPER CLASS TO MANAGE VARIOUS PARAMETERS.  <a href="#a7"></a><br></td></tr>
126<tr><td class="memItemLeft" nowrap align="right" valign="top">CDXUTDialogResourceManager&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a8">g_DialogResourceManager</a></td></tr>
127
128<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Manager for shared resources of dialogs.  <a href="#a8"></a><br></td></tr>
129<tr><td class="memItemLeft" nowrap align="right" valign="top">CD3DSettingsDlg&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a9">g_SettingsDlg</a></td></tr>
130
131<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Device settings dialog.  <a href="#a9"></a><br></td></tr>
132<tr><td class="memItemLeft" nowrap align="right" valign="top">CDXUTDialog&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a10">g_HUD</a></td></tr>
133
134<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Dialog for sample specific controls.  <a href="#a10"></a><br></td></tr>
135<tr><td class="memItemLeft" nowrap align="right" valign="top">ID3DXFont *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a11">g_pFont</a></td></tr>
136
137<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Font for drawing text.  <a href="#a11"></a><br></td></tr>
138<tr><td class="memItemLeft" nowrap align="right" valign="top">ID3DXSprite *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a12">g_pTextSprite</a></td></tr>
139
140<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sprite for batching draw text calls.  <a href="#a12"></a><br></td></tr>
141<tr><td class="memItemLeft" nowrap align="right" valign="top">IDirect3DSurface9 *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a13">g_pSaveSurface</a></td></tr>
142
143<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">surface for screenshot capturing  <a href="#a13"></a><br></td></tr>
144<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a14">bSavingScreenshot</a> = false</td></tr>
145
146<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">boolean for screenshot capturing  <a href="#a14"></a><br></td></tr>
147<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a15">counter</a> = 0</td></tr>
148
149<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">counter for screenshots (see <a class="el" href="_main_8cpp.html#a33">GenerateNewFileName()</a>)  <a href="#a15"></a><br></td></tr>
150<tr><td class="memItemLeft" nowrap align="right" valign="top">HRESULT&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a16">hr</a></td></tr>
151
152<tr><td class="memItemLeft" nowrap align="right" valign="top">CModelViewerCamera&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="_main_8cpp.html#a17">camera</a></td></tr>
153
154<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">the camera  <a href="#a17"></a><br></td></tr>
155</table>
156<hr><a name="_details"></a><h2>Detailed Description</h2>
157Performs DirectX initialization via DXUT callback functions. Adds some additional helper functions to support screenshot capturing.
158<p>
159<dl compact><dt><b>Author:</b></dt><dd>Istvan Lazanyi, TU Budapest </dd></dl>
160<dl compact><dt><b>Date:</b></dt><dd>2006-04-26 </dd></dl>
161<hr><h2>Define Documentation</h2>
162<a class="anchor" name="a0" doxytag="Main.cpp::FX_FILENAME"></a><p>
163<table class="mdTable" cellpadding="2" cellspacing="0">
164  <tr>
165    <td class="mdRow">
166      <table cellpadding="0" cellspacing="0" border="0">
167        <tr>
168          <td class="md" nowrap valign="top">#define FX_FILENAME&nbsp;&nbsp;&nbsp;L"EnvMap.fx"          </td>
169        </tr>
170      </table>
171    </td>
172  </tr>
173</table>
174<table cellspacing="5" cellpadding="0" border="0">
175  <tr>
176    <td>
177      &nbsp;
178    </td>
179    <td>
180
181<p>
182File containing the shader code.
183<p>
184    </td>
185  </tr>
186</table>
187<hr><h2>Function Documentation</h2>
188<a class="anchor" name="a38" doxytag="Main.cpp::Exponent"></a><p>
189<table class="mdTable" cellpadding="2" cellspacing="0">
190  <tr>
191    <td class="mdRow">
192      <table cellpadding="0" cellspacing="0" border="0">
193        <tr>
194          <td class="md" nowrap valign="top">float Exponent           </td>
195          <td class="md" valign="top">(&nbsp;</td>
196          <td class="md" nowrap valign="top">float&nbsp;</td>
197          <td class="mdname1" valign="top" nowrap> <em>f</em>          </td>
198          <td class="md" valign="top">&nbsp;)&nbsp;</td>
199          <td class="md" nowrap></td>
200        </tr>
201      </table>
202    </td>
203  </tr>
204</table>
205<table cellspacing="5" cellpadding="0" border="0">
206  <tr>
207    <td>
208      &nbsp;
209    </td>
210    <td>
211
212<p>
213Callback of type <a class="el" href="_parameters_8h.html#a1">CONVERTER</a>.
214<p>
215    </td>
216  </tr>
217</table>
218<a class="anchor" name="a33" doxytag="Main.cpp::GenerateNewFileName"></a><p>
219<table class="mdTable" cellpadding="2" cellspacing="0">
220  <tr>
221    <td class="mdRow">
222      <table cellpadding="0" cellspacing="0" border="0">
223        <tr>
224          <td class="md" nowrap valign="top">int GenerateNewFileName           </td>
225          <td class="md" valign="top">(&nbsp;</td>
226          <td class="md" nowrap valign="top">int &amp;&nbsp;</td>
227          <td class="mdname1" valign="top" nowrap> <em>counter</em>          </td>
228          <td class="md" valign="top">&nbsp;)&nbsp;</td>
229          <td class="md" nowrap></td>
230        </tr>
231      </table>
232    </td>
233  </tr>
234</table>
235<table cellspacing="5" cellpadding="0" border="0">
236  <tr>
237    <td>
238      &nbsp;
239    </td>
240    <td>
241
242<p>
243Generates a non-existing filename to store the screenshot in the <b>shots</b> directory.
244<p>
245Generated file names are shots/000.png, shots/001.png, ...     </td>
246  </tr>
247</table>
248<a class="anchor" name="a29" doxytag="Main.cpp::InitParams"></a><p>
249<table class="mdTable" cellpadding="2" cellspacing="0">
250  <tr>
251    <td class="mdRow">
252      <table cellpadding="0" cellspacing="0" border="0">
253        <tr>
254          <td class="md" nowrap valign="top">void InitParams           </td>
255          <td class="md" valign="top">(&nbsp;</td>
256          <td class="mdname1" valign="top" nowrap>          </td>
257          <td class="md" valign="top">&nbsp;)&nbsp;</td>
258          <td class="md" nowrap></td>
259        </tr>
260      </table>
261    </td>
262  </tr>
263</table>
264<table cellspacing="5" cellpadding="0" border="0">
265  <tr>
266    <td>
267      &nbsp;
268    </td>
269    <td>
270
271<p>
272Defines application-specific parameters and creates GUI controls (sliders, checkboxes) for them. Finally, loads initial values for the parameters from file called <b>.params0</b> (Reset). Use <a class="el" href="class_parameters.html#a8">Parameters::Add</a> to create GUI controls.
273<p>
274    </td>
275  </tr>
276</table>
277<a class="anchor" name="a18" doxytag="Main.cpp::IsDeviceAcceptable"></a><p>
278<table class="mdTable" cellpadding="2" cellspacing="0">
279  <tr>
280    <td class="mdRow">
281      <table cellpadding="0" cellspacing="0" border="0">
282        <tr>
283          <td class="md" nowrap valign="top">bool CALLBACK IsDeviceAcceptable           </td>
284          <td class="md" valign="top">(&nbsp;</td>
285          <td class="md" nowrap valign="top">D3DCAPS9 *&nbsp;</td>
286          <td class="mdname" nowrap> <em>pCaps</em>, </td>
287        </tr>
288        <tr>
289          <td class="md" nowrap align="right"></td>
290          <td class="md"></td>
291          <td class="md" nowrap>D3DFORMAT&nbsp;</td>
292          <td class="mdname" nowrap> <em>AdapterFormat</em>, </td>
293        </tr>
294        <tr>
295          <td class="md" nowrap align="right"></td>
296          <td class="md"></td>
297          <td class="md" nowrap>D3DFORMAT&nbsp;</td>
298          <td class="mdname" nowrap> <em>BackBufferFormat</em>, </td>
299        </tr>
300        <tr>
301          <td class="md" nowrap align="right"></td>
302          <td class="md"></td>
303          <td class="md" nowrap>bool&nbsp;</td>
304          <td class="mdname" nowrap> <em>bWindowed</em>, </td>
305        </tr>
306        <tr>
307          <td class="md" nowrap align="right"></td>
308          <td class="md"></td>
309          <td class="md" nowrap>void *&nbsp;</td>
310          <td class="mdname" nowrap> <em>pUserContext</em></td>
311        </tr>
312        <tr>
313          <td class="md"></td>
314          <td class="md">)&nbsp;</td>
315          <td class="md" colspan="2"></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>
329DXUT callback (Rejects any devices that aren't acceptable by returning false).
330<p>
331DXUT callback. Rejects any devices that aren't acceptable by returning false.     </td>
332  </tr>
333</table>
334<a class="anchor" name="a25" doxytag="Main.cpp::KeyboardProc"></a><p>
335<table class="mdTable" cellpadding="2" cellspacing="0">
336  <tr>
337    <td class="mdRow">
338      <table cellpadding="0" cellspacing="0" border="0">
339        <tr>
340          <td class="md" nowrap valign="top">void CALLBACK KeyboardProc           </td>
341          <td class="md" valign="top">(&nbsp;</td>
342          <td class="md" nowrap valign="top">UINT&nbsp;</td>
343          <td class="mdname" nowrap> <em>nChar</em>, </td>
344        </tr>
345        <tr>
346          <td class="md" nowrap align="right"></td>
347          <td class="md"></td>
348          <td class="md" nowrap>bool&nbsp;</td>
349          <td class="mdname" nowrap> <em>bKeyDown</em>, </td>
350        </tr>
351        <tr>
352          <td class="md" nowrap align="right"></td>
353          <td class="md"></td>
354          <td class="md" nowrap>bool&nbsp;</td>
355          <td class="mdname" nowrap> <em>bAltDown</em>, </td>
356        </tr>
357        <tr>
358          <td class="md" nowrap align="right"></td>
359          <td class="md"></td>
360          <td class="md" nowrap>void *&nbsp;</td>
361          <td class="mdname" nowrap> <em>pUserContext</em></td>
362        </tr>
363        <tr>
364          <td class="md"></td>
365          <td class="md">)&nbsp;</td>
366          <td class="md" colspan="2"></td>
367        </tr>
368      </table>
369    </td>
370  </tr>
371</table>
372<table cellspacing="5" cellpadding="0" border="0">
373  <tr>
374    <td>
375      &nbsp;
376    </td>
377    <td>
378
379<p>
380DXUT callback (Keystroke messages).
381<p>
382    </td>
383  </tr>
384</table>
385<a class="anchor" name="a32" doxytag="Main.cpp::LoadCameraPosition"></a><p>
386<table class="mdTable" cellpadding="2" cellspacing="0">
387  <tr>
388    <td class="mdRow">
389      <table cellpadding="0" cellspacing="0" border="0">
390        <tr>
391          <td class="md" nowrap valign="top">void LoadCameraPosition           </td>
392          <td class="md" valign="top">(&nbsp;</td>
393          <td class="md" nowrap valign="top">char *&nbsp;</td>
394          <td class="mdname1" valign="top" nowrap> <em>fileName</em>          </td>
395          <td class="md" valign="top">&nbsp;)&nbsp;</td>
396          <td class="md" nowrap></td>
397        </tr>
398      </table>
399    </td>
400  </tr>
401</table>
402<table cellspacing="5" cellpadding="0" border="0">
403  <tr>
404    <td>
405      &nbsp;
406    </td>
407    <td>
408
409<p>
410Loads camera settings from file.
411<p>
412Loads <a class="el" href="_main_8cpp.html#a17">camera</a> settings (world matrix and camera position) from an existing file. Useful when capturing multiple screenshots from the same view. <dl compact><dt><b>Parameters:</b></dt><dd>
413  <table border="0" cellspacing="2" cellpadding="0">
414    <tr><td valign="top"></td><td valign="top"><em>fileName</em>&nbsp;</td><td>the name of the file to load from. </td></tr>
415  </table>
416</dl>
417    </td>
418  </tr>
419</table>
420<a class="anchor" name="a19" doxytag="Main.cpp::ModifyDeviceSettings"></a><p>
421<table class="mdTable" cellpadding="2" cellspacing="0">
422  <tr>
423    <td class="mdRow">
424      <table cellpadding="0" cellspacing="0" border="0">
425        <tr>
426          <td class="md" nowrap valign="top">bool CALLBACK ModifyDeviceSettings           </td>
427          <td class="md" valign="top">(&nbsp;</td>
428          <td class="md" nowrap valign="top">DXUTDeviceSettings *&nbsp;</td>
429          <td class="mdname" nowrap> <em>pDeviceSettings</em>, </td>
430        </tr>
431        <tr>
432          <td class="md" nowrap align="right"></td>
433          <td class="md"></td>
434          <td class="md" nowrap>const D3DCAPS9 *&nbsp;</td>
435          <td class="mdname" nowrap> <em>pCaps</em>, </td>
436        </tr>
437        <tr>
438          <td class="md" nowrap align="right"></td>
439          <td class="md"></td>
440          <td class="md" nowrap>void *&nbsp;</td>
441          <td class="mdname" nowrap> <em>pUserContext</em></td>
442        </tr>
443        <tr>
444          <td class="md"></td>
445          <td class="md">)&nbsp;</td>
446          <td class="md" colspan="2"></td>
447        </tr>
448      </table>
449    </td>
450  </tr>
451</table>
452<table cellspacing="5" cellpadding="0" border="0">
453  <tr>
454    <td>
455      &nbsp;
456    </td>
457    <td>
458
459<p>
460DXUT callback (Before a device is created, modifies the device settings as needed).
461<p>
462    </td>
463  </tr>
464</table>
465<a class="anchor" name="a24" doxytag="Main.cpp::MsgProc"></a><p>
466<table class="mdTable" cellpadding="2" cellspacing="0">
467  <tr>
468    <td class="mdRow">
469      <table cellpadding="0" cellspacing="0" border="0">
470        <tr>
471          <td class="md" nowrap valign="top">LRESULT CALLBACK MsgProc           </td>
472          <td class="md" valign="top">(&nbsp;</td>
473          <td class="md" nowrap valign="top">HWND&nbsp;</td>
474          <td class="mdname" nowrap> <em>hWnd</em>, </td>
475        </tr>
476        <tr>
477          <td class="md" nowrap align="right"></td>
478          <td class="md"></td>
479          <td class="md" nowrap>UINT&nbsp;</td>
480          <td class="mdname" nowrap> <em>uMsg</em>, </td>
481        </tr>
482        <tr>
483          <td class="md" nowrap align="right"></td>
484          <td class="md"></td>
485          <td class="md" nowrap>WPARAM&nbsp;</td>
486          <td class="mdname" nowrap> <em>wParam</em>, </td>
487        </tr>
488        <tr>
489          <td class="md" nowrap align="right"></td>
490          <td class="md"></td>
491          <td class="md" nowrap>LPARAM&nbsp;</td>
492          <td class="mdname" nowrap> <em>lParam</em>, </td>
493        </tr>
494        <tr>
495          <td class="md" nowrap align="right"></td>
496          <td class="md"></td>
497          <td class="md" nowrap>bool *&nbsp;</td>
498          <td class="mdname" nowrap> <em>pbNoFurtherProcessing</em>, </td>
499        </tr>
500        <tr>
501          <td class="md" nowrap align="right"></td>
502          <td class="md"></td>
503          <td class="md" nowrap>void *&nbsp;</td>
504          <td class="mdname" nowrap> <em>pUserContext</em></td>
505        </tr>
506        <tr>
507          <td class="md"></td>
508          <td class="md">)&nbsp;</td>
509          <td class="md" colspan="2"></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>
523DXUT callback (Message processing).
524<p>
525Forwards messages to the DirectX settings window, the GUI controls or the camera, respecively.     </td>
526  </tr>
527</table>
528<a class="anchor" name="a39" doxytag="Main.cpp::OnChangeCubeMap"></a><p>
529<table class="mdTable" cellpadding="2" cellspacing="0">
530  <tr>
531    <td class="mdRow">
532      <table cellpadding="0" cellspacing="0" border="0">
533        <tr>
534          <td class="md" nowrap valign="top">void OnChangeCubeMap           </td>
535          <td class="md" valign="top">(&nbsp;</td>
536          <td class="mdname1" valign="top" nowrap>          </td>
537          <td class="md" valign="top">&nbsp;)&nbsp;</td>
538          <td class="md" nowrap></td>
539        </tr>
540      </table>
541    </td>
542  </tr>
543</table>
544<table cellspacing="5" cellpadding="0" border="0">
545  <tr>
546    <td>
547      &nbsp;
548    </td>
549    <td>
550
551<p>
552Actions to be taken when the cubemaps get invalid. Callback of type <a class="el" href="_parameters_8h.html#a2">ONCHANGE_CALLBACK</a>.
553<p>
554    </td>
555  </tr>
556</table>
557<a class="anchor" name="a40" doxytag="Main.cpp::OnChangeMesh"></a><p>
558<table class="mdTable" cellpadding="2" cellspacing="0">
559  <tr>
560    <td class="mdRow">
561      <table cellpadding="0" cellspacing="0" border="0">
562        <tr>
563          <td class="md" nowrap valign="top">void OnChangeMesh           </td>
564          <td class="md" valign="top">(&nbsp;</td>
565          <td class="mdname1" valign="top" nowrap>          </td>
566          <td class="md" valign="top">&nbsp;)&nbsp;</td>
567          <td class="md" nowrap></td>
568        </tr>
569      </table>
570    </td>
571  </tr>
572</table>
573<table cellspacing="5" cellpadding="0" border="0">
574  <tr>
575    <td>
576      &nbsp;
577    </td>
578    <td>
579
580<p>
581Actions to be taken when the central mesh object is changed. Callback of type <a class="el" href="_parameters_8h.html#a2">ONCHANGE_CALLBACK</a>.
582<p>
583    </td>
584  </tr>
585</table>
586<a class="anchor" name="a41" doxytag="Main.cpp::OnChangeMeshSize"></a><p>
587<table class="mdTable" cellpadding="2" cellspacing="0">
588  <tr>
589    <td class="mdRow">
590      <table cellpadding="0" cellspacing="0" border="0">
591        <tr>
592          <td class="md" nowrap valign="top">void OnChangeMeshSize           </td>
593          <td class="md" valign="top">(&nbsp;</td>
594          <td class="mdname1" valign="top" nowrap>          </td>
595          <td class="md" valign="top">&nbsp;)&nbsp;</td>
596          <td class="md" nowrap></td>
597        </tr>
598      </table>
599    </td>
600  </tr>
601</table>
602<table cellspacing="5" cellpadding="0" border="0">
603  <tr>
604    <td>
605      &nbsp;
606    </td>
607    <td>
608
609<p>
610Actions to be taken when the size of the central mesh is to change. Callback of type <a class="el" href="_parameters_8h.html#a2">ONCHANGE_CALLBACK</a>.
611<p>
612    </td>
613  </tr>
614</table>
615<a class="anchor" name="a43" doxytag="Main.cpp::OnChangeResolution"></a><p>
616<table class="mdTable" cellpadding="2" cellspacing="0">
617  <tr>
618    <td class="mdRow">
619      <table cellpadding="0" cellspacing="0" border="0">
620        <tr>
621          <td class="md" nowrap valign="top">void OnChangeResolution           </td>
622          <td class="md" valign="top">(&nbsp;</td>
623          <td class="mdname1" valign="top" nowrap>          </td>
624          <td class="md" valign="top">&nbsp;)&nbsp;</td>
625          <td class="md" nowrap></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>
639Actions to be taken when the resolution is to change. Callback of type <a class="el" href="_parameters_8h.html#a2">ONCHANGE_CALLBACK</a>.
640<p>
641    </td>
642  </tr>
643</table>
644<a class="anchor" name="a42" doxytag="Main.cpp::OnChangeShininess"></a><p>
645<table class="mdTable" cellpadding="2" cellspacing="0">
646  <tr>
647    <td class="mdRow">
648      <table cellpadding="0" cellspacing="0" border="0">
649        <tr>
650          <td class="md" nowrap valign="top">void OnChangeShininess           </td>
651          <td class="md" valign="top">(&nbsp;</td>
652          <td class="mdname1" valign="top" nowrap>          </td>
653          <td class="md" valign="top">&nbsp;)&nbsp;</td>
654          <td class="md" nowrap></td>
655        </tr>
656      </table>
657    </td>
658  </tr>
659</table>
660<table cellspacing="5" cellpadding="0" border="0">
661  <tr>
662    <td>
663      &nbsp;
664    </td>
665    <td>
666
667<p>
668Actions to be taken when the shininess is to change. Callback of type <a class="el" href="_parameters_8h.html#a2">ONCHANGE_CALLBACK</a>.
669<p>
670    </td>
671  </tr>
672</table>
673<a class="anchor" name="a20" doxytag="Main.cpp::OnCreateDevice"></a><p>
674<table class="mdTable" cellpadding="2" cellspacing="0">
675  <tr>
676    <td class="mdRow">
677      <table cellpadding="0" cellspacing="0" border="0">
678        <tr>
679          <td class="md" nowrap valign="top">HRESULT CALLBACK OnCreateDevice           </td>
680          <td class="md" valign="top">(&nbsp;</td>
681          <td class="md" nowrap valign="top">IDirect3DDevice9 *&nbsp;</td>
682          <td class="mdname" nowrap> <em>pd3dDevice</em>, </td>
683        </tr>
684        <tr>
685          <td class="md" nowrap align="right"></td>
686          <td class="md"></td>
687          <td class="md" nowrap>const D3DSURFACE_DESC *&nbsp;</td>
688          <td class="mdname" nowrap> <em>pBackBufferSurfaceDesc</em>, </td>
689        </tr>
690        <tr>
691          <td class="md" nowrap align="right"></td>
692          <td class="md"></td>
693          <td class="md" nowrap>void *&nbsp;</td>
694          <td class="mdname" nowrap> <em>pUserContext</em></td>
695        </tr>
696        <tr>
697          <td class="md"></td>
698          <td class="md">)&nbsp;</td>
699          <td class="md" colspan="2"></td>
700        </tr>
701      </table>
702    </td>
703  </tr>
704</table>
705<table cellspacing="5" cellpadding="0" border="0">
706  <tr>
707    <td>
708      &nbsp;
709    </td>
710    <td>
711
712<p>
713DXUT callback (You should create any D3DPOOL_MANAGED resources here).
714<p>
715Compiles the effect file (<a class="el" href="_env_map_8fx.html">EnvMap.fx</a>) and displays error message if compilation fails. Finally, forwards call to <a class="el" href="class_env_map.html#a21">EnvMap::OnCreateDevice</a>.     </td>
716  </tr>
717</table>
718<a class="anchor" name="a28" doxytag="Main.cpp::OnDestroyDevice"></a><p>
719<table class="mdTable" cellpadding="2" cellspacing="0">
720  <tr>
721    <td class="mdRow">
722      <table cellpadding="0" cellspacing="0" border="0">
723        <tr>
724          <td class="md" nowrap valign="top">void CALLBACK OnDestroyDevice           </td>
725          <td class="md" valign="top">(&nbsp;</td>
726          <td class="md" nowrap valign="top">void *&nbsp;</td>
727          <td class="mdname1" valign="top" nowrap> <em>pUserContext</em>          </td>
728          <td class="md" valign="top">&nbsp;)&nbsp;</td>
729          <td class="md" nowrap></td>
730        </tr>
731      </table>
732    </td>
733  </tr>
734</table>
735<table cellspacing="5" cellpadding="0" border="0">
736  <tr>
737    <td>
738      &nbsp;
739    </td>
740    <td>
741
742<p>
743DXUT callback (You should release resources created in the OnCreateDevice callback here).
744<p>
745Forwards call to <a class="el" href="class_env_map.html#a22">EnvMap::OnDestroyDevice</a>.     </td>
746  </tr>
747</table>
748<a class="anchor" name="a22" doxytag="Main.cpp::OnFrameMove"></a><p>
749<table class="mdTable" cellpadding="2" cellspacing="0">
750  <tr>
751    <td class="mdRow">
752      <table cellpadding="0" cellspacing="0" border="0">
753        <tr>
754          <td class="md" nowrap valign="top">void CALLBACK OnFrameMove           </td>
755          <td class="md" valign="top">(&nbsp;</td>
756          <td class="md" nowrap valign="top">IDirect3DDevice9 *&nbsp;</td>
757          <td class="mdname" nowrap> <em>g_pd3dDevice</em>, </td>
758        </tr>
759        <tr>
760          <td class="md" nowrap align="right"></td>
761          <td class="md"></td>
762          <td class="md" nowrap>double&nbsp;</td>
763          <td class="mdname" nowrap> <em>fTime</em>, </td>
764        </tr>
765        <tr>
766          <td class="md" nowrap align="right"></td>
767          <td class="md"></td>
768          <td class="md" nowrap>float&nbsp;</td>
769          <td class="mdname" nowrap> <em>fElapsedTime</em>, </td>
770        </tr>
771        <tr>
772          <td class="md" nowrap align="right"></td>
773          <td class="md"></td>
774          <td class="md" nowrap>void *&nbsp;</td>
775          <td class="mdname" nowrap> <em>pUserContext</em></td>
776        </tr>
777        <tr>
778          <td class="md"></td>
779          <td class="md">)&nbsp;</td>
780          <td class="md" colspan="2"></td>
781        </tr>
782      </table>
783    </td>
784  </tr>
785</table>
786<table cellspacing="5" cellpadding="0" border="0">
787  <tr>
788    <td>
789      &nbsp;
790    </td>
791    <td>
792
793<p>
794DXUT callback (Handle updates to the scene).
795<p>
796    </td>
797  </tr>
798</table>
799<a class="anchor" name="a23" doxytag="Main.cpp::OnFrameRender"></a><p>
800<table class="mdTable" cellpadding="2" cellspacing="0">
801  <tr>
802    <td class="mdRow">
803      <table cellpadding="0" cellspacing="0" border="0">
804        <tr>
805          <td class="md" nowrap valign="top">void CALLBACK OnFrameRender           </td>
806          <td class="md" valign="top">(&nbsp;</td>
807          <td class="md" nowrap valign="top">IDirect3DDevice9 *&nbsp;</td>
808          <td class="mdname" nowrap> <em>g_pd3dDevice</em>, </td>
809        </tr>
810        <tr>
811          <td class="md" nowrap align="right"></td>
812          <td class="md"></td>
813          <td class="md" nowrap>double&nbsp;</td>
814          <td class="mdname" nowrap> <em>fTime</em>, </td>
815        </tr>
816        <tr>
817          <td class="md" nowrap align="right"></td>
818          <td class="md"></td>
819          <td class="md" nowrap>float&nbsp;</td>
820          <td class="mdname" nowrap> <em>fElapsedTime</em>, </td>
821        </tr>
822        <tr>
823          <td class="md" nowrap align="right"></td>
824          <td class="md"></td>
825          <td class="md" nowrap>void *&nbsp;</td>
826          <td class="mdname" nowrap> <em>pUserContext</em></td>
827        </tr>
828        <tr>
829          <td class="md"></td>
830          <td class="md">)&nbsp;</td>
831          <td class="md" colspan="2"></td>
832        </tr>
833      </table>
834    </td>
835  </tr>
836</table>
837<table cellspacing="5" cellpadding="0" border="0">
838  <tr>
839    <td>
840      &nbsp;
841    </td>
842    <td>
843
844<p>
845<b>DXUT callback (Render the scene). Also responsible for screenshot taking.</b> 
846<p>
847If a screenshot is being taken (<a class="el" href="_main_8cpp.html#a14">bSavingScreenshot</a>), sets <a class="el" href="_main_8cpp.html#a13">g_pSaveSurface</a> as the render target and saves it to a non-existent file (<a class="el" href="_main_8cpp.html#a33">GenerateNewFileName()</a>). Also saves current camera parameters (<a class="el" href="_main_8cpp.html#a31">SaveCameraPosition()</a>).<p>
848To perform actual rendering, it forwards call to <a class="el" href="class_env_map.html#a20">EnvMap::OnFrameRender</a> with current camera matrices.     </td>
849  </tr>
850</table>
851<a class="anchor" name="a26" doxytag="Main.cpp::OnGUIEvent"></a><p>
852<table class="mdTable" cellpadding="2" cellspacing="0">
853  <tr>
854    <td class="mdRow">
855      <table cellpadding="0" cellspacing="0" border="0">
856        <tr>
857          <td class="md" nowrap valign="top">void CALLBACK OnGUIEvent           </td>
858          <td class="md" valign="top">(&nbsp;</td>
859          <td class="md" nowrap valign="top">UINT&nbsp;</td>
860          <td class="mdname" nowrap> <em>nEvent</em>, </td>
861        </tr>
862        <tr>
863          <td class="md" nowrap align="right"></td>
864          <td class="md"></td>
865          <td class="md" nowrap>int&nbsp;</td>
866          <td class="mdname" nowrap> <em>nControlID</em>, </td>
867        </tr>
868        <tr>
869          <td class="md" nowrap align="right"></td>
870          <td class="md"></td>
871          <td class="md" nowrap>CDXUTControl *&nbsp;</td>
872          <td class="mdname" nowrap> <em>pControl</em>, </td>
873        </tr>
874        <tr>
875          <td class="md" nowrap align="right"></td>
876          <td class="md"></td>
877          <td class="md" nowrap>void *&nbsp;</td>
878          <td class="mdname" nowrap> <em>pUserContext</em></td>
879        </tr>
880        <tr>
881          <td class="md"></td>
882          <td class="md">)&nbsp;</td>
883          <td class="md" colspan="2"></td>
884        </tr>
885      </table>
886    </td>
887  </tr>
888</table>
889<table cellspacing="5" cellpadding="0" border="0">
890  <tr>
891    <td>
892      &nbsp;
893    </td>
894    <td>
895
896<p>
897DXUT callback (called by the framework in case of GUI events). Forwards GUI event to the parameter-manager class <a class="el" href="class_parameters.html">Parameters</a> (see <a class="el" href="_main_8cpp.html#a7">pp</a>).
898<p>
899<dl compact><dt><b>Parameters:</b></dt><dd>
900  <table border="0" cellspacing="2" cellpadding="0">
901    <tr><td valign="top"></td><td valign="top"><em>nControlID</em>&nbsp;</td><td>id of the adjusted GUI control </td></tr>
902  </table>
903</dl>
904    </td>
905  </tr>
906</table>
907<a class="anchor" name="a35" doxytag="Main.cpp::OnLoad"></a><p>
908<table class="mdTable" cellpadding="2" cellspacing="0">
909  <tr>
910    <td class="mdRow">
911      <table cellpadding="0" cellspacing="0" border="0">
912        <tr>
913          <td class="md" nowrap valign="top">void OnLoad           </td>
914          <td class="md" valign="top">(&nbsp;</td>
915          <td class="mdname1" valign="top" nowrap>          </td>
916          <td class="md" valign="top">&nbsp;)&nbsp;</td>
917          <td class="md" nowrap></td>
918        </tr>
919      </table>
920    </td>
921  </tr>
922</table>
923<table cellspacing="5" cellpadding="0" border="0">
924  <tr>
925    <td>
926      &nbsp;
927    </td>
928    <td>
929
930<p>
931(Load, Save, Reset are default buttons.)
932<p>
933    </td>
934  </tr>
935</table>
936<a class="anchor" name="a27" doxytag="Main.cpp::OnLostDevice"></a><p>
937<table class="mdTable" cellpadding="2" cellspacing="0">
938  <tr>
939    <td class="mdRow">
940      <table cellpadding="0" cellspacing="0" border="0">
941        <tr>
942          <td class="md" nowrap valign="top">void CALLBACK OnLostDevice           </td>
943          <td class="md" valign="top">(&nbsp;</td>
944          <td class="md" nowrap valign="top">void *&nbsp;</td>
945          <td class="mdname1" valign="top" nowrap> <em>pUserContext</em>          </td>
946          <td class="md" valign="top">&nbsp;)&nbsp;</td>
947          <td class="md" nowrap></td>
948        </tr>
949      </table>
950    </td>
951  </tr>
952</table>
953<table cellspacing="5" cellpadding="0" border="0">
954  <tr>
955    <td>
956      &nbsp;
957    </td>
958    <td>
959
960<p>
961DXUT callback (You should release resources created in the OnResetDevice callback here).
962<p>
963    </td>
964  </tr>
965</table>
966<a class="anchor" name="a37" doxytag="Main.cpp::OnReset"></a><p>
967<table class="mdTable" cellpadding="2" cellspacing="0">
968  <tr>
969    <td class="mdRow">
970      <table cellpadding="0" cellspacing="0" border="0">
971        <tr>
972          <td class="md" nowrap valign="top">void OnReset           </td>
973          <td class="md" valign="top">(&nbsp;</td>
974          <td class="mdname1" valign="top" nowrap>          </td>
975          <td class="md" valign="top">&nbsp;)&nbsp;</td>
976          <td class="md" nowrap></td>
977        </tr>
978      </table>
979    </td>
980  </tr>
981</table>
982<table cellspacing="5" cellpadding="0" border="0">
983  <tr>
984    <td>
985      &nbsp;
986    </td>
987    <td>
988
989<p>
990(Load, Save, Reset are default buttons.)
991<p>
992    </td>
993  </tr>
994</table>
995<a class="anchor" name="a21" doxytag="Main.cpp::OnResetDevice"></a><p>
996<table class="mdTable" cellpadding="2" cellspacing="0">
997  <tr>
998    <td class="mdRow">
999      <table cellpadding="0" cellspacing="0" border="0">
1000        <tr>
1001          <td class="md" nowrap valign="top">HRESULT CALLBACK OnResetDevice           </td>
1002          <td class="md" valign="top">(&nbsp;</td>
1003          <td class="md" nowrap valign="top">IDirect3DDevice9 *&nbsp;</td>
1004          <td class="mdname" nowrap> <em>g_pd3dDevice</em>, </td>
1005        </tr>
1006        <tr>
1007          <td class="md" nowrap align="right"></td>
1008          <td class="md"></td>
1009          <td class="md" nowrap>const D3DSURFACE_DESC *&nbsp;</td>
1010          <td class="mdname" nowrap> <em>pBackBufferSurfaceDesc</em>, </td>
1011        </tr>
1012        <tr>
1013          <td class="md" nowrap align="right"></td>
1014          <td class="md"></td>
1015          <td class="md" nowrap>void *&nbsp;</td>
1016          <td class="mdname" nowrap> <em>pUserContext</em></td>
1017        </tr>
1018        <tr>
1019          <td class="md"></td>
1020          <td class="md">)&nbsp;</td>
1021          <td class="md" colspan="2"></td>
1022        </tr>
1023      </table>
1024    </td>
1025  </tr>
1026</table>
1027<table cellspacing="5" cellpadding="0" border="0">
1028  <tr>
1029    <td>
1030      &nbsp;
1031    </td>
1032    <td>
1033
1034<p>
1035DXUT callback (You should create any D3DPOOL_DEFAULT resources here).
1036<p>
1037Resets camera and HUD elements. Initializes <a class="el" href="_main_8cpp.html#a13">g_pSaveSurface</a> according to the current screen resolution. Then it forwards call to <a class="el" href="class_env_map.html#a23">EnvMap::OnResetDevice</a>.     </td>
1038  </tr>
1039</table>
1040<a class="anchor" name="a36" doxytag="Main.cpp::OnSave"></a><p>
1041<table class="mdTable" cellpadding="2" cellspacing="0">
1042  <tr>
1043    <td class="mdRow">
1044      <table cellpadding="0" cellspacing="0" border="0">
1045        <tr>
1046          <td class="md" nowrap valign="top">void OnSave           </td>
1047          <td class="md" valign="top">(&nbsp;</td>
1048          <td class="mdname1" valign="top" nowrap>          </td>
1049          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1050          <td class="md" nowrap></td>
1051        </tr>
1052      </table>
1053    </td>
1054  </tr>
1055</table>
1056<table cellspacing="5" cellpadding="0" border="0">
1057  <tr>
1058    <td>
1059      &nbsp;
1060    </td>
1061    <td>
1062
1063<p>
1064(Load, Save, Reset are default buttons.)
1065<p>
1066    </td>
1067  </tr>
1068</table>
1069<a class="anchor" name="a30" doxytag="Main.cpp::RenderText"></a><p>
1070<table class="mdTable" cellpadding="2" cellspacing="0">
1071  <tr>
1072    <td class="mdRow">
1073      <table cellpadding="0" cellspacing="0" border="0">
1074        <tr>
1075          <td class="md" nowrap valign="top">void RenderText           </td>
1076          <td class="md" valign="top">(&nbsp;</td>
1077          <td class="mdname1" valign="top" nowrap>          </td>
1078          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1079          <td class="md" nowrap></td>
1080        </tr>
1081      </table>
1082    </td>
1083  </tr>
1084</table>
1085<table cellspacing="5" cellpadding="0" border="0">
1086  <tr>
1087    <td>
1088      &nbsp;
1089    </td>
1090    <td>
1091
1092<p>
1093Renders help and statistics text and displays algorithmic-specific parameters.
1094<p>
1095<ul>
1096<li>Statistics: FPS value, screen resolution</li></ul>
1097<p>
1098<ul>
1099<li>Help: displays avaliable keyboard shortcuts after the user presses F1.</li></ul>
1100<p>
1101<ul>
1102<li>Algorithmic-specific parameters: describes the currently selected method and displays its most important parameters. </li></ul>
1103    </td>
1104  </tr>
1105</table>
1106<a class="anchor" name="a31" doxytag="Main.cpp::SaveCameraPosition"></a><p>
1107<table class="mdTable" cellpadding="2" cellspacing="0">
1108  <tr>
1109    <td class="mdRow">
1110      <table cellpadding="0" cellspacing="0" border="0">
1111        <tr>
1112          <td class="md" nowrap valign="top">void SaveCameraPosition           </td>
1113          <td class="md" valign="top">(&nbsp;</td>
1114          <td class="md" nowrap valign="top">char *&nbsp;</td>
1115          <td class="mdname1" valign="top" nowrap> <em>fileName</em>          </td>
1116          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1117          <td class="md" nowrap></td>
1118        </tr>
1119      </table>
1120    </td>
1121  </tr>
1122</table>
1123<table cellspacing="5" cellpadding="0" border="0">
1124  <tr>
1125    <td>
1126      &nbsp;
1127    </td>
1128    <td>
1129
1130<p>
1131Writes current camera settings to file.
1132<p>
1133Writes current <a class="el" href="_main_8cpp.html#a17">camera</a> settings (world matrix and camera position) to file. Useful when capturing multiple screenshots from the same view. <dl compact><dt><b>Parameters:</b></dt><dd>
1134  <table border="0" cellspacing="2" cellpadding="0">
1135    <tr><td valign="top"></td><td valign="top"><em>fileName</em>&nbsp;</td><td>the name of the file to be created </td></tr>
1136  </table>
1137</dl>
1138    </td>
1139  </tr>
1140</table>
1141<a class="anchor" name="a34" doxytag="Main.cpp::WinMain"></a><p>
1142<table class="mdTable" cellpadding="2" cellspacing="0">
1143  <tr>
1144    <td class="mdRow">
1145      <table cellpadding="0" cellspacing="0" border="0">
1146        <tr>
1147          <td class="md" nowrap valign="top">INT WINAPI WinMain           </td>
1148          <td class="md" valign="top">(&nbsp;</td>
1149          <td class="md" nowrap valign="top">HINSTANCE&nbsp;</td>
1150          <td class="mdname" nowrap>, </td>
1151        </tr>
1152        <tr>
1153          <td class="md" nowrap align="right"></td>
1154          <td class="md"></td>
1155          <td class="md" nowrap>HINSTANCE&nbsp;</td>
1156          <td class="mdname" nowrap>, </td>
1157        </tr>
1158        <tr>
1159          <td class="md" nowrap align="right"></td>
1160          <td class="md"></td>
1161          <td class="md" nowrap>LPSTR&nbsp;</td>
1162          <td class="mdname" nowrap>, </td>
1163        </tr>
1164        <tr>
1165          <td class="md" nowrap align="right"></td>
1166          <td class="md"></td>
1167          <td class="md" nowrap>int&nbsp;</td>
1168          <td class="mdname" nowrap></td>
1169        </tr>
1170        <tr>
1171          <td class="md"></td>
1172          <td class="md">)&nbsp;</td>
1173          <td class="md" colspan="2"></td>
1174        </tr>
1175      </table>
1176    </td>
1177  </tr>
1178</table>
1179<table cellspacing="5" cellpadding="0" border="0">
1180  <tr>
1181    <td>
1182      &nbsp;
1183    </td>
1184    <td>
1185
1186<p>
1187Entry point to the program.
1188<p>
1189Initializes everything and goes into a message processing loop. Idle time is used to render the scene.     </td>
1190  </tr>
1191</table>
1192<hr><h2>Variable Documentation</h2>
1193<a class="anchor" name="a14" doxytag="Main.cpp::bSavingScreenshot"></a><p>
1194<table class="mdTable" cellpadding="2" cellspacing="0">
1195  <tr>
1196    <td class="mdRow">
1197      <table cellpadding="0" cellspacing="0" border="0">
1198        <tr>
1199          <td class="md" nowrap valign="top">bool <a class="el" href="_main_8cpp.html#a14">bSavingScreenshot</a> = false          </td>
1200        </tr>
1201      </table>
1202    </td>
1203  </tr>
1204</table>
1205<table cellspacing="5" cellpadding="0" border="0">
1206  <tr>
1207    <td>
1208      &nbsp;
1209    </td>
1210    <td>
1211
1212<p>
1213boolean for screenshot capturing
1214<p>
1215    </td>
1216  </tr>
1217</table>
1218<a class="anchor" name="a17" doxytag="Main.cpp::camera"></a><p>
1219<table class="mdTable" cellpadding="2" cellspacing="0">
1220  <tr>
1221    <td class="mdRow">
1222      <table cellpadding="0" cellspacing="0" border="0">
1223        <tr>
1224          <td class="md" nowrap valign="top">CModelViewerCamera <a class="el" href="_main_8cpp.html#a17">camera</a>          </td>
1225        </tr>
1226      </table>
1227    </td>
1228  </tr>
1229</table>
1230<table cellspacing="5" cellpadding="0" border="0">
1231  <tr>
1232    <td>
1233      &nbsp;
1234    </td>
1235    <td>
1236
1237<p>
1238the camera
1239<p>
1240    </td>
1241  </tr>
1242</table>
1243<a class="anchor" name="a3" doxytag="Main.cpp::CHARBUFFER_SIZE"></a><p>
1244<table class="mdTable" cellpadding="2" cellspacing="0">
1245  <tr>
1246    <td class="mdRow">
1247      <table cellpadding="0" cellspacing="0" border="0">
1248        <tr>
1249          <td class="md" nowrap valign="top">const int <a class="el" href="_main_8cpp.html#a3">CHARBUFFER_SIZE</a> = 200          </td>
1250        </tr>
1251      </table>
1252    </td>
1253  </tr>
1254</table>
1255<table cellspacing="5" cellpadding="0" border="0">
1256  <tr>
1257    <td>
1258      &nbsp;
1259    </td>
1260    <td>
1261
1262<p>
1263length of the buffer (one line to be saved to file)
1264<p>
1265    </td>
1266  </tr>
1267</table>
1268<a class="anchor" name="a15" doxytag="Main.cpp::counter"></a><p>
1269<table class="mdTable" cellpadding="2" cellspacing="0">
1270  <tr>
1271    <td class="mdRow">
1272      <table cellpadding="0" cellspacing="0" border="0">
1273        <tr>
1274          <td class="md" nowrap valign="top">int <a class="el" href="_main_8cpp.html#a15">counter</a> = 0          </td>
1275        </tr>
1276      </table>
1277    </td>
1278  </tr>
1279</table>
1280<table cellspacing="5" cellpadding="0" border="0">
1281  <tr>
1282    <td>
1283      &nbsp;
1284    </td>
1285    <td>
1286
1287<p>
1288counter for screenshots (see <a class="el" href="_main_8cpp.html#a33">GenerateNewFileName()</a>)
1289<p>
1290    </td>
1291  </tr>
1292</table>
1293<a class="anchor" name="a6" doxytag="Main.cpp::envmapRenderer"></a><p>
1294<table class="mdTable" cellpadding="2" cellspacing="0">
1295  <tr>
1296    <td class="mdRow">
1297      <table cellpadding="0" cellspacing="0" border="0">
1298        <tr>
1299          <td class="md" nowrap valign="top"><a class="el" href="class_env_map.html">EnvMap</a>* <a class="el" href="_main_8cpp.html#a6">envmapRenderer</a>          </td>
1300        </tr>
1301      </table>
1302    </td>
1303  </tr>
1304</table>
1305<table cellspacing="5" cellpadding="0" border="0">
1306  <tr>
1307    <td>
1308      &nbsp;
1309    </td>
1310    <td>
1311
1312<p>
1313PROBLEM-SPECIFIC CLASS.
1314<p>
1315    </td>
1316  </tr>
1317</table>
1318<a class="anchor" name="a8" doxytag="Main.cpp::g_DialogResourceManager"></a><p>
1319<table class="mdTable" cellpadding="2" cellspacing="0">
1320  <tr>
1321    <td class="mdRow">
1322      <table cellpadding="0" cellspacing="0" border="0">
1323        <tr>
1324          <td class="md" nowrap valign="top">CDXUTDialogResourceManager <a class="el" href="_main_8cpp.html#a8">g_DialogResourceManager</a>          </td>
1325        </tr>
1326      </table>
1327    </td>
1328  </tr>
1329</table>
1330<table cellspacing="5" cellpadding="0" border="0">
1331  <tr>
1332    <td>
1333      &nbsp;
1334    </td>
1335    <td>
1336
1337<p>
1338Manager for shared resources of dialogs.
1339<p>
1340    </td>
1341  </tr>
1342</table>
1343<a class="anchor" name="a10" doxytag="Main.cpp::g_HUD"></a><p>
1344<table class="mdTable" cellpadding="2" cellspacing="0">
1345  <tr>
1346    <td class="mdRow">
1347      <table cellpadding="0" cellspacing="0" border="0">
1348        <tr>
1349          <td class="md" nowrap valign="top">CDXUTDialog <a class="el" href="_main_8cpp.html#a10">g_HUD</a>          </td>
1350        </tr>
1351      </table>
1352    </td>
1353  </tr>
1354</table>
1355<table cellspacing="5" cellpadding="0" border="0">
1356  <tr>
1357    <td>
1358      &nbsp;
1359    </td>
1360    <td>
1361
1362<p>
1363Dialog for sample specific controls.
1364<p>
1365    </td>
1366  </tr>
1367</table>
1368<a class="anchor" name="a4" doxytag="Main.cpp::g_pd3dDevice"></a><p>
1369<table class="mdTable" cellpadding="2" cellspacing="0">
1370  <tr>
1371    <td class="mdRow">
1372      <table cellpadding="0" cellspacing="0" border="0">
1373        <tr>
1374          <td class="md" nowrap valign="top">IDirect3DDevice9* <a class="el" href="_mesh_8cpp.html#a0">g_pd3dDevice</a>          </td>
1375        </tr>
1376      </table>
1377    </td>
1378  </tr>
1379</table>
1380<table cellspacing="5" cellpadding="0" border="0">
1381  <tr>
1382    <td>
1383      &nbsp;
1384    </td>
1385    <td>
1386
1387<p>
1388THE D3D DEVICE.
1389<p>
1390    </td>
1391  </tr>
1392</table>
1393<a class="anchor" name="a5" doxytag="Main.cpp::g_pEffect"></a><p>
1394<table class="mdTable" cellpadding="2" cellspacing="0">
1395  <tr>
1396    <td class="mdRow">
1397      <table cellpadding="0" cellspacing="0" border="0">
1398        <tr>
1399          <td class="md" nowrap valign="top">ID3DXEffect* <a class="el" href="_main_8cpp.html#a5">g_pEffect</a>          </td>
1400        </tr>
1401      </table>
1402    </td>
1403  </tr>
1404</table>
1405<table cellspacing="5" cellpadding="0" border="0">
1406  <tr>
1407    <td>
1408      &nbsp;
1409    </td>
1410    <td>
1411
1412<p>
1413THE EFFECT FILE.
1414<p>
1415    </td>
1416  </tr>
1417</table>
1418<a class="anchor" name="a11" doxytag="Main.cpp::g_pFont"></a><p>
1419<table class="mdTable" cellpadding="2" cellspacing="0">
1420  <tr>
1421    <td class="mdRow">
1422      <table cellpadding="0" cellspacing="0" border="0">
1423        <tr>
1424          <td class="md" nowrap valign="top">ID3DXFont* <a class="el" href="_main_8cpp.html#a11">g_pFont</a>          </td>
1425        </tr>
1426      </table>
1427    </td>
1428  </tr>
1429</table>
1430<table cellspacing="5" cellpadding="0" border="0">
1431  <tr>
1432    <td>
1433      &nbsp;
1434    </td>
1435    <td>
1436
1437<p>
1438Font for drawing text.
1439<p>
1440    </td>
1441  </tr>
1442</table>
1443<a class="anchor" name="a13" doxytag="Main.cpp::g_pSaveSurface"></a><p>
1444<table class="mdTable" cellpadding="2" cellspacing="0">
1445  <tr>
1446    <td class="mdRow">
1447      <table cellpadding="0" cellspacing="0" border="0">
1448        <tr>
1449          <td class="md" nowrap valign="top">IDirect3DSurface9* <a class="el" href="_main_8cpp.html#a13">g_pSaveSurface</a>          </td>
1450        </tr>
1451      </table>
1452    </td>
1453  </tr>
1454</table>
1455<table cellspacing="5" cellpadding="0" border="0">
1456  <tr>
1457    <td>
1458      &nbsp;
1459    </td>
1460    <td>
1461
1462<p>
1463surface for screenshot capturing
1464<p>
1465    </td>
1466  </tr>
1467</table>
1468<a class="anchor" name="a12" doxytag="Main.cpp::g_pTextSprite"></a><p>
1469<table class="mdTable" cellpadding="2" cellspacing="0">
1470  <tr>
1471    <td class="mdRow">
1472      <table cellpadding="0" cellspacing="0" border="0">
1473        <tr>
1474          <td class="md" nowrap valign="top">ID3DXSprite* <a class="el" href="_main_8cpp.html#a12">g_pTextSprite</a>          </td>
1475        </tr>
1476      </table>
1477    </td>
1478  </tr>
1479</table>
1480<table cellspacing="5" cellpadding="0" border="0">
1481  <tr>
1482    <td>
1483      &nbsp;
1484    </td>
1485    <td>
1486
1487<p>
1488Sprite for batching draw text calls.
1489<p>
1490    </td>
1491  </tr>
1492</table>
1493<a class="anchor" name="a9" doxytag="Main.cpp::g_SettingsDlg"></a><p>
1494<table class="mdTable" cellpadding="2" cellspacing="0">
1495  <tr>
1496    <td class="mdRow">
1497      <table cellpadding="0" cellspacing="0" border="0">
1498        <tr>
1499          <td class="md" nowrap valign="top">CD3DSettingsDlg <a class="el" href="_main_8cpp.html#a9">g_SettingsDlg</a>          </td>
1500        </tr>
1501      </table>
1502    </td>
1503  </tr>
1504</table>
1505<table cellspacing="5" cellpadding="0" border="0">
1506  <tr>
1507    <td>
1508      &nbsp;
1509    </td>
1510    <td>
1511
1512<p>
1513Device settings dialog.
1514<p>
1515    </td>
1516  </tr>
1517</table>
1518<a class="anchor" name="a2" doxytag="Main.cpp::HEIGHT"></a><p>
1519<table class="mdTable" cellpadding="2" cellspacing="0">
1520  <tr>
1521    <td class="mdRow">
1522      <table cellpadding="0" cellspacing="0" border="0">
1523        <tr>
1524          <td class="md" nowrap valign="top">const int <a class="el" href="_main_8cpp.html#a2">HEIGHT</a> = 800          </td>
1525        </tr>
1526      </table>
1527    </td>
1528  </tr>
1529</table>
1530<table cellspacing="5" cellpadding="0" border="0">
1531  <tr>
1532    <td>
1533      &nbsp;
1534    </td>
1535    <td>
1536
1537<p>
1538screen height
1539<p>
1540    </td>
1541  </tr>
1542</table>
1543<a class="anchor" name="a16" doxytag="Main.cpp::hr"></a><p>
1544<table class="mdTable" cellpadding="2" cellspacing="0">
1545  <tr>
1546    <td class="mdRow">
1547      <table cellpadding="0" cellspacing="0" border="0">
1548        <tr>
1549          <td class="md" nowrap valign="top">HRESULT <a class="el" href="_main_8cpp.html#a16">hr</a>          </td>
1550        </tr>
1551      </table>
1552    </td>
1553  </tr>
1554</table>
1555<table cellspacing="5" cellpadding="0" border="0">
1556  <tr>
1557    <td>
1558      &nbsp;
1559    </td>
1560    <td>
1561
1562<p>
1563    </td>
1564  </tr>
1565</table>
1566<a class="anchor" name="a7" doxytag="Main.cpp::pp"></a><p>
1567<table class="mdTable" cellpadding="2" cellspacing="0">
1568  <tr>
1569    <td class="mdRow">
1570      <table cellpadding="0" cellspacing="0" border="0">
1571        <tr>
1572          <td class="md" nowrap valign="top"><a class="el" href="class_parameters.html">Parameters</a> <a class="el" href="_main_8cpp.html#a7">pp</a>          </td>
1573        </tr>
1574      </table>
1575    </td>
1576  </tr>
1577</table>
1578<table cellspacing="5" cellpadding="0" border="0">
1579  <tr>
1580    <td>
1581      &nbsp;
1582    </td>
1583    <td>
1584
1585<p>
1586HELPER CLASS TO MANAGE VARIOUS PARAMETERS.
1587<p>
1588    </td>
1589  </tr>
1590</table>
1591<a class="anchor" name="a1" doxytag="Main.cpp::WIDTH"></a><p>
1592<table class="mdTable" cellpadding="2" cellspacing="0">
1593  <tr>
1594    <td class="mdRow">
1595      <table cellpadding="0" cellspacing="0" border="0">
1596        <tr>
1597          <td class="md" nowrap valign="top">const int <a class="el" href="_main_8cpp.html#a1">WIDTH</a> = 800          </td>
1598        </tr>
1599      </table>
1600    </td>
1601  </tr>
1602</table>
1603<table cellspacing="5" cellpadding="0" border="0">
1604  <tr>
1605    <td>
1606      &nbsp;
1607    </td>
1608    <td>
1609
1610<p>
1611screen width
1612<p>
1613    </td>
1614  </tr>
1615</table>
1616<hr size="1"><address style="align: right;"><small>Generated on Wed Aug 23 00:00:39 2006 for Indirect Environment Mapping by&nbsp;
1617<a href="http://www.doxygen.org/index.html">
1618<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.2 </small></address>
1619</body>
1620</html>
Note: See TracBrowser for help on using the repository browser.