1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2<html xml:lang="en-US" lang="en-US" xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 5 <meta http-equiv="Content-Style-Type" content="text/css" /> 6 <link rel="stylesheet" href="../../../css/manpage.css" type="text/css" /> 7 <style type="text/css"><!-- 8 span.static_style 9 { 10 font-size : 8pt; 11 color : white; 12 font-weight : bold; 13 background : #44f; 14 border-left : solid 1px #aaf; 15 border-top : solid 1px #aaf; 16 border-right : solid 1px #00c; 17 border-bottom : solid 1px #00c; 18 padding-left : 2px; 19 padding-right : 2px; 20 } 21 22 span.virtual_style 23 { 24 font-size : 8pt; 25 color : white; 26 font-weight : bold; 27 background : #0a0; 28 border-left : solid 1px #0f0; 29 border-top : solid 1px #0f0; 30 border-right : solid 1px #060; 31 border-bottom : solid 1px #060; 32 padding-left : 2px; 33 padding-right : 2px; 34 } 35 36 span.protected_style 37 { 38 font-size : 8pt; 39 color : white; 40 font-weight : bold; 41 background : #444; 42 border-left : solid 1px #ccc; 43 border-top : solid 1px #ccc; 44 border-right : solid 1px #222; 45 border-bottom : solid 1px #222; 46 padding-left : 2px; 47 padding-right : 2px; 48 } 49 --></style> 50 <title>nw::gfx::BasicRenderQueue</title> 51 </head> 52 <body> 53 <h1><CODE>nw::gfx::BasicRenderQueue</CODE> Class</h1> 54 <h2>Syntax</h2> 55 <div class="section"> 56 <pre class="definition">template <typename TElement, typename TElementList, typename TElementKeyFactory> 57class BasicRenderQueue : public <a href="../../../nw/gfx/GfxObject/Overview.html">nw::gfx::GfxObject</a></pre> 58 </div> 59 <h2>Template Arguments</h2> 60 <div class="section"> 61 <table class="arguments"> 62 <thead> 63 <tr> 64 <th>Name</th> 65 <td>Description</td> 66 </tr> 67 </thead> 68 <tr> 69 <th><CODE>TElement</CODE></th> 70 <td>Class serving as the render unit.</td> 71 </tr> 72 <tr> 73 <th><CODE>TElementList</CODE></th> 74 <td>Container used to store the class serving as the render unit.</td> 75 </tr> 76 <tr> 77 <th><CODE>TElementKeyFactory</CODE></th> 78 <td>Class that creates the keys used to sort the render units.</td> 79 </tr> </table> 80 </div> 81 <h2>Description</h2> 82 <div class="section"> 83 <p>Queue class that stores render elements.</p> 84 </div> 85 <a name="class" id="class"> 86 <h2>Classes</h2> 87 <div class="section"> 88 <table class="members"> 89 <tr> 90 <th> 91 <a href="../../../nw/gfx/BasicRenderQueue/Builder/Overview.html"><CODE>nw::gfx::BasicRenderQueue::Builder</CODE></a> 92 </th> 93 <td>Class for creating <a href="../../../../nw/gfx/BasicRenderQueue/Overview.html"><CODE>BasicRenderQueue</CODE></a>s.</td> 94 </tr> </table> 95 </div> 96 </a> <a name="struct" id="struct"> 97 <h2>Structures</h2> 98 <div class="section"> 99 <table class="members"> 100 <tr> 101 <th> 102 <a href="../../../nw/gfx/BasicRenderQueue/AlwaysCalculatingFunctor/Overview.html">nw::gfx::BasicRenderQueue::AlwaysCalculatingFunctor</a> 103 </th> 104 <td>Always calculates the depth.</td> 105 </tr> 106 <tr> 107 <th> 108 <a href="../../../nw/gfx/BasicRenderQueue/BasicEnqueueModelFunctor/Overview.html">nw::gfx::BasicRenderQueue::BasicEnqueueModelFunctor</a> 109 </th> 110 <td>Functor for adding models to the render queue.</td> 111 </tr> 112 <tr> 113 <th> 114 <a href="../../../nw/gfx/BasicRenderQueue/BasicEnqueueModelTranslucentModelBaseFunctor/Overview.html">nw::gfx::BasicRenderQueue::BasicEnqueueModelTranslucentModelBaseFunctor</a> 115 </th> 116 <td>Functor for adding models to the render queue.</td> 117 </tr> 118 <tr> 119 <th> 120 <a href="../../../nw/gfx/BasicRenderQueue/CalculateDepthFunctor/Overview.html">nw::gfx::BasicRenderQueue::CalculateDepthFunctor</a> 121 </th> 122 <td>Function object that calculates depth in the clip coordinate system.</td> 123 </tr> 124 <tr> 125 <th> 126 <a href="../../../nw/gfx/BasicRenderQueue/CalculateDepthOfSkeletalModelFunctor/Overview.html">nw::gfx::BasicRenderQueue::CalculateDepthOfSkeletalModelFunctor</a> 127 </th> 128 <td>Function object that calculates depth in the clip coordinate system used for skeletal models.</td> 129 </tr> 130 <tr> 131 <th> 132 <a href="../../../nw/gfx/BasicRenderQueue/IsCalculatingOnlyLayer1Functor/Overview.html">nw::gfx::BasicRenderQueue::IsCalculatingOnlyLayer1Functor</a> 133 </th> 134 <td>Function object that calculates depth only when the render layer is 1 (translucent).</td> 135 </tr> 136 <tr> 137 <th> 138 <a href="../../../nw/gfx/BasicRenderQueue/ReportFunctor/Overview.html">nw::gfx::BasicRenderQueue::ReportFunctor</a> 139 </th> 140 <td>Function object for reporting render queue status to log output.</td> 141 </tr> </table> 142 </div> 143 </a> <a name="typedef" id="typedef"> 144 <h2><CODE>typedef</CODE> Definitions</h2> 145 <div class="section"> 146 <table class="members"> 147 <tr> 148 <td width="100" /> 149 <th> 150 <a href="../../../nw/gfx/BasicRenderQueue/ElementType.html"><CODE>ElementType</CODE></a> 151 </th> 152 <td> 153 </td> 154 </tr> 155 <tr> 156 <td width="100" /> 157 <th> 158 <a href="../../../nw/gfx/BasicRenderQueue/ElementListType.html"><CODE>ElementListType</CODE></a> 159 </th> 160 <td> 161 </td> 162 </tr> 163 <tr> 164 <td width="100" /> 165 <th> 166 <a href="../../../nw/gfx/BasicRenderQueue/ElementKeyFactoryType.html"><CODE>ElementKeyFactoryType</CODE></a> 167 </th> 168 <td> 169 </td> 170 </tr> 171 <tr> 172 <td width="100" /> 173 <th> 174 <a href="../../../nw/gfx/BasicRenderQueue/ElementKeyType.html"><CODE>ElementKeyType</CODE></a> 175 </th> 176 <td> 177 </td> 178 </tr> 179 <tr> 180 <td width="100" /> 181 <th> 182 <a href="../../../nw/gfx/BasicRenderQueue/reference.html"><CODE>reference</CODE></a> 183 </th> 184 <td> 185 </td> 186 </tr> 187 <tr> 188 <td width="100" /> 189 <th> 190 <a href="../../../nw/gfx/BasicRenderQueue/difference_type.html"><CODE>difference_type</CODE></a> 191 </th> 192 <td> 193 </td> 194 </tr> 195 <tr> 196 <td width="100" /> 197 <th> 198 <a href="../../../nw/gfx/BasicRenderQueue/value_type.html"><CODE>value_type</CODE></a> 199 </th> 200 <td> 201 </td> 202 </tr> 203 <tr> 204 <td width="100" /> 205 <th> 206 <a href="../../../nw/gfx/BasicRenderQueue/iterator.html"><CODE>iterator</CODE></a> 207 </th> 208 <td> 209 </td> 210 </tr> 211 <tr> 212 <td width="100" /> 213 <th> 214 <a href="../../../nw/gfx/BasicRenderQueue/const_iterator.html"><CODE>const_iterator</CODE></a> 215 </th> 216 <td> 217 </td> 218 </tr> 219 <tr> 220 <td width="100" /> 221 <th> 222 <a href="../../../nw/gfx/BasicRenderQueue/reverse_iterator.html"><CODE>reverse_iterator</CODE></a> 223 </th> 224 <td> 225 </td> 226 </tr> 227 <tr> 228 <td width="100" /> 229 <th> 230 <a href="../../../nw/gfx/BasicRenderQueue/const_reverse_iterator.html"><CODE>const_reverse_iterator</CODE></a> 231 </th> 232 <td> 233 </td> 234 </tr> 235 <tr> 236 <td width="100" /> 237 <th> 238 <a href="../../../nw/gfx/BasicRenderQueue/EnqueueModelFunctor.html">EnqueueModelFunctor</a> 239 </th> 240 <td>Functor for adding models to the render queue.</td> 241 </tr> 242 <tr> 243 <td width="100" /> 244 <th> 245 <a href="../../../nw/gfx/BasicRenderQueue/EnqueueSkeletalModelFunctor.html">EnqueueSkeletalModelFunctor</a> 246 </th> 247 <td>The functor for adding skeletal models to the render queue.</td> 248 </tr> 249 <tr> 250 <td width="100" /> 251 <th> 252 <a href="../../../nw/gfx/BasicRenderQueue/FastEnqueueModelFunctor.html">FastEnqueueModelFunctor</a> 253 </th> 254 <td>Functor for adding models to the render queue. Depth is calculated only when the render layer is 1 (translucent).</td> 255 </tr> 256 <tr> 257 <td width="100" /> 258 <th> 259 <a href="../../../nw/gfx/BasicRenderQueue/FastEnqueueSkeletalModelFunctor.html">FastEnqueueSkeletalModelFunctor</a> 260 </th> 261 <td>The functor for adding skeletal models to the render queue. Depth is calculated only when the render layer is 1 (translucent).</td> 262 </tr> 263 <tr> 264 <td width="100" /> 265 <th> 266 <a href="../../../nw/gfx/BasicRenderQueue/EnqueueModelTranslucentModelBaseFunctor.html">EnqueueModelTranslucentModelBaseFunctor</a> 267 </th> 268 <td>Functor for adding models to the render queue.</td> 269 </tr> 270 <tr> 271 <td width="100" /> 272 <th> 273 <a href="../../../nw/gfx/BasicRenderQueue/EnqueueSkeletalModelTranslucentModelBaseFunctor.html">EnqueueSkeletalModelTranslucentModelBaseFunctor</a> 274 </th> 275 <td>The functor for adding skeletal models to the render queue.</td> 276 </tr> 277 <tr> 278 <td width="100" /> 279 <th> 280 <a href="../../../nw/gfx/BasicRenderQueue/FastEnqueueModelTranslucentModelBaseFunctor.html">FastEnqueueModelTranslucentModelBaseFunctor</a> 281 </th> 282 <td>Functor for adding models to the render queue. Depth is calculated only when the render layer is 1 (translucent).</td> 283 </tr> 284 <tr> 285 <td width="100" /> 286 <th> 287 <a href="../../../nw/gfx/BasicRenderQueue/FastEnqueueSkeletalModelTranslucentModelBaseFunctor.html">FastEnqueueSkeletalModelTranslucentModelBaseFunctor</a> 288 </th> 289 <td>The functor for adding skeletal models to the render queue. Depth is calculated only when the render layer is 1 (translucent).</td> 290 </tr> </table> 291 </div> 292 </a> <a name="constant" id="constant"> 293 <h2>Member Constants</h2> 294 <div class="section"> 295 <table class="members"> 296 <tr> 297 <td width="100"> 298 <span class="static_style" title="static">S</span> 299 </td> 300 <th> 301 <span class="argument"><a href="../../../nw/gfx/BasicRenderQueue/PRIORITY_END.html">PRIORITY_END</a></span> 302 </th> 303 <td>Definition representing the last (highest value) priority.</td> 304 </tr> </table> 305 </div> 306 </a> <a name="variable" id="variable"> 307 <h2>Member Variables</h2> 308 <div class="section"> 309 <table class="members"> 310 <tr> 311 <td width="100"> </td> 312 <th> 313 <span class="argument"><CODE>NW_UT_RUNTIME_TYPEINFO</CODE></span> 314 </th> 315 <td> 316 </td> 317 </tr> </table> 318 </div> 319 </a> <a name="function" id="function"> 320 <h2>Member Functions</h2> 321 <div class="section"> 322 <table class="members"> 323 <tr> 324 <th class="category" colspan="3">Key Operations</th> 325 </tr> 326 <tr> 327 <td width="100"> </td> 328 <th> 329 <a href="../../../nw/gfx/BasicRenderQueue/EnqueueElement.html">EnqueueElement</a> 330 </th> 331 <td>Adds a render element to the queue.</td> 332 </tr> 333 <tr> 334 <td width="100"> </td> 335 <th> 336 <a href="../../../nw/gfx/BasicRenderQueue/EnqueueMesh.html"><CODE>EnqueueMesh</CODE></a> 337 </th> 338 <td>Adds a mesh to the queue.</td> 339 </tr> 340 <tr> 341 <td width="100"> </td> 342 <th> 343 <a href="../../../nw/gfx/BasicRenderQueue/EnqueueModel.html"><CODE>EnqueueModel</CODE></a> 344 </th> 345 <td>Adds mesh elements included in the model to the queue.</td> 346 </tr> 347 <tr> 348 <td width="100"> </td> 349 <th> 350 <a href="../../../nw/gfx/BasicRenderQueue/EnqueueSkeletalModel.html"><CODE>EnqueueSkeletalModel</CODE></a> 351 </th> 352 <td>Adds mesh elements included in the skeletal model to the queue.</td> 353 </tr> 354 <tr> 355 <td width="100"> </td> 356 <th> 357 <a href="../../../nw/gfx/BasicRenderQueue/EnqueueCommand.html"><CODE>EnqueueCommand</CODE></a> 358 </th> 359 <td>Adds a command to the queue.</td> 360 </tr> 361 <tr> 362 <td width="100"> </td> 363 <th> 364 <a href="../../../nw/gfx/BasicRenderQueue/Reset.html">Reset</a> 365 </th> 366 <td>Deletes all items in the queue.</td> 367 </tr> 368 <tr> 369 <th class="category" colspan="3">Set/Get</th> 370 </tr> 371 <tr> 372 <td width="100"> </td> 373 <th> 374 <a href="../../../nw/gfx/BasicRenderQueue/Size.html">Size</a> 375 </th> 376 <td>Gets the number of elements.</td> 377 </tr> 378 <tr> 379 <td width="100"> </td> 380 <th> 381 <a href="../../../nw/gfx/BasicRenderQueue/Empty.html"><CODE>Empty</CODE></a> 382 </th> 383 <td>Returns <CODE>true</CODE> if there are no elements.</td> 384 </tr> 385 <tr> 386 <td width="100"> </td> 387 <th> 388 <a href="../../../nw/gfx/BasicRenderQueue/Peek.html"><CODE>Peek</CODE></a> 389 </th> 390 <td>Accesses the first element.</td> 391 </tr> 392 <tr> 393 <td width="100"> </td> 394 <th> 395 <a href="../../../nw/gfx/BasicRenderQueue/Begin.html"><CODE>Begin</CODE></a> 396 </th> 397 <td>Gets an iterator to the start.</td> 398 </tr> 399 <tr> 400 <td width="100"> </td> 401 <th> 402 <a href="../../../nw/gfx/BasicRenderQueue/End.html">END</a> 403 </th> 404 <td>Gets an iterator to the end.</td> 405 </tr> 406 <tr> 407 <td width="100"> </td> 408 <th> 409 <a href="../../../nw/gfx/BasicRenderQueue/ReverseBegin.html"><CODE>ReverseBegin</CODE></a> 410 </th> 411 <td>Gets an reverse iterator to the start.</td> 412 </tr> 413 <tr> 414 <td width="100"> </td> 415 <th> 416 <a href="../../../nw/gfx/BasicRenderQueue/ReverseEnd.html"><CODE>ReverseEnd</CODE></a> 417 </th> 418 <td>Gets a reverse iterator to the end.</td> 419 </tr> 420 <tr> 421 <th class="category" colspan="3">Utilities</th> 422 </tr> 423 <tr> 424 <td width="100"> </td> 425 <th> 426 <a href="../../../nw/gfx/BasicRenderQueue/NW_DEPRECATED_FUNCTION.html">NW_DEPRECATED_FUNCTION</a> 427 </th> 428 <td>Calculates the depth in clip coordinates. (Deprecated)</td> 429 </tr> 430 <tr> 431 <th class="category" colspan="3">Create/Destroy</th> 432 </tr> 433 <tr> 434 <td width="100"> </td> 435 <th> 436 <a href="../../../nw/gfx/GfxObject/Destroy.html"><CODE>Destroy</CODE></a> 437 </th> 438 <td>Destroys an object.(Derived from <a href="../../../nw/gfx/GfxObject/Overview.html"><CODE>GfxObject</CODE></a>.</td> 439 </tr> </table> 440 </div> 441 </a> 442 <h2>Class Hierarchy</h2> 443 <div class="section"> 444 <p class="hierarchy"><a href="../../../nw/gfx/GfxObject/Overview.html">nw::gfx::GfxObject</a><br /> <b>nw::gfx::BasicRenderQueue</b> 445 </p> 446 </div> 447 <hr><p>CONFIDENTIAL</p></body> 448</html>