Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 807a538c0f4abf81467b8a86879881d9 > files > 1413

OpenSceneGraph-devel-2.8.4-2.fc14.i686.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>OpenSceneGraph: osg::TemplatePrimitiveFunctor&lt; T &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.4 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">OpenSceneGraph&#160;<span id="projectnumber">2.8.4</span></div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="a01628.html">osg</a>      </li>
      <li class="navelem"><a class="el" href="a00871.html">TemplatePrimitiveFunctor</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a>  </div>
  <div class="headertitle">
<div class="title">osg::TemplatePrimitiveFunctor&lt; T &gt; Class Template Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="osg::TemplatePrimitiveFunctor" --><!-- doxytag: inherits="osg::PrimitiveFunctor" -->
<p>Provides access to the primitives that compose an <code><a class="el" href="a00216.html" title="Pure virtual base class for drawable geometry.">osg::Drawable</a></code>.  
 <a href="a00871.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for osg::TemplatePrimitiveFunctor&lt; T &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="a02051.png" border="0" usemap="#osg_1_1TemplatePrimitiveFunctor_3_01T_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="osg_1_1TemplatePrimitiveFunctor_3_01T_01_4_inherit__map" id="osg_1_1TemplatePrimitiveFunctor_3_01T_01_4_inherit__map">
<area shape="rect" id="node2" href="a00577.html" title="A PrimitiveFunctor is used (in conjunction with osg::Drawable::accept (PrimitiveFunctor&amp;)) to get acc..." alt="" coords="56,5,221,35"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="a02052.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#aecee442faeefbb209cbd6d8b5f2fed79">TemplatePrimitiveFunctor</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#aac86e315cca4acdef1a47eedbd1288eb">~TemplatePrimitiveFunctor</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a1e0f5cbd8da2fbe6ef0bb4f619502bb4">setTreatVertexDataAsTemporary</a> (bool treatVertexDataAsTemporary)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#afae11ce6b1dc358a9bff4c3e17e4d27e">getTreatVertexDataAsTemporary</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#ac6ee8cbe3489e2abfcfe0bea085d3aa7">setVertexArray</a> (unsigned int, const <a class="el" href="a01062.html">Vec2</a> *)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the array of vertices used to describe the primitives.  <a href="#ac6ee8cbe3489e2abfcfe0bea085d3aa7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a47461224ce5effd4cef3584897ec02ba">setVertexArray</a> (unsigned int count, const <a class="el" href="a01069.html">Vec3</a> *vertices)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the array of vertices used to describe the primitives.  <a href="#a47461224ce5effd4cef3584897ec02ba"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a987588314612db64cfc7d4ab9e46afd3">setVertexArray</a> (unsigned int, const <a class="el" href="a01074.html">Vec4</a> *)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the array of vertices used to describe the primitives.  <a href="#a987588314612db64cfc7d4ab9e46afd3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a17dd457d356315575497c248831f0adb">setVertexArray</a> (unsigned int, const <a class="el" href="a01061.html">Vec2d</a> *)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the array of vertices used to describe the primitives.  <a href="#a17dd457d356315575497c248831f0adb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a22b8bff12bb11472e8b873df0f659efc">setVertexArray</a> (unsigned int, const <a class="el" href="a01067.html">Vec3d</a> *)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the array of vertices used to describe the primitives.  <a href="#a22b8bff12bb11472e8b873df0f659efc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a3487e9255f4bb1685e7057b0d195c1c8">setVertexArray</a> (unsigned int, const <a class="el" href="a01073.html">Vec4d</a> *)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the array of vertices used to describe the primitives.  <a href="#a3487e9255f4bb1685e7057b0d195c1c8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a9f4a1018e98b3d4ba7714053a6f341a2">drawArrays</a> (GLenum mode, GLint first, GLsizei count)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Mimics the OpenGL <code>glDrawArrays()</code> function.  <a href="#a9f4a1018e98b3d4ba7714053a6f341a2"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class IndexType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00871.html#a0438d40ecdf5f8a0d2ff7c828f87a807">drawElementsTemplate</a> (GLenum mode, GLsizei count, const IndexType *indices)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a22528d05fe496f61560add2f397c69de">drawElements</a> (GLenum mode, GLsizei count, const GLubyte *indices)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Mimics the OpenGL <code>glDrawElements()</code> function.  <a href="#a22528d05fe496f61560add2f397c69de"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a7537d7ca16acb67cf488c6e8467918bf">drawElements</a> (GLenum mode, GLsizei count, const GLushort *indices)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Mimics the OpenGL <code>glDrawElements()</code> function.  <a href="#a7537d7ca16acb67cf488c6e8467918bf"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a1a178e2f58f1f94ffc3c2faad8435a97">drawElements</a> (GLenum mode, GLsizei count, const GLuint *indices)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Mimics the OpenGL <code>glDrawElements()</code> function.  <a href="#a1a178e2f58f1f94ffc3c2faad8435a97"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a1fbf9632ea5c2020980dd3d55759a910">begin</a> (GLenum mode)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Note: begin(..),vertex(..) &amp; <a class="el" href="a00871.html#a1fabdde208caff82fca41faece06050a" title="Mimics the OpenGL glEnd() function.">end()</a> are convenience methods for adapting non vertex array primitives to vertex array based primitives.  <a href="#a1fbf9632ea5c2020980dd3d55759a910"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a16446acb5fe40225c182970ece0d5c62">vertex</a> (const <a class="el" href="a01062.html">Vec2</a> &amp;vert)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Mimics the OpenGL <code>glVertex()</code> "family of functions".  <a href="#a16446acb5fe40225c182970ece0d5c62"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#ac8aaf0cae641ea526db755cf30e1b8b1">vertex</a> (const <a class="el" href="a01069.html">Vec3</a> &amp;vert)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Mimics the OpenGL <code>glVertex()</code> "family of functions".  <a href="#ac8aaf0cae641ea526db755cf30e1b8b1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a9523df2a1409c53d8ca77e1881dea8ce">vertex</a> (const <a class="el" href="a01074.html">Vec4</a> &amp;vert)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Mimics the OpenGL <code>glVertex()</code> "family of functions".  <a href="#a9523df2a1409c53d8ca77e1881dea8ce"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#aeb1dfc8d740c3e7c40ffefc05d3fe9ac">vertex</a> (float x, float y)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Mimics the OpenGL <code>glVertex()</code> "family of functions".  <a href="#aeb1dfc8d740c3e7c40ffefc05d3fe9ac"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#aa104967f38ee161d57ee26b9924d6a0c">vertex</a> (float x, float y, float z)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Mimics the OpenGL <code>glVertex()</code> "family of functions".  <a href="#aa104967f38ee161d57ee26b9924d6a0c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a6a5c814d4ccc6b8ecd4400d1b991b31d">vertex</a> (float x, float y, float z, float w)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Mimics the OpenGL <code>glVertex()</code> "family of functions".  <a href="#a6a5c814d4ccc6b8ecd4400d1b991b31d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a1fabdde208caff82fca41faece06050a">end</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Mimics the OpenGL <code>glEnd()</code> function.  <a href="#a1fabdde208caff82fca41faece06050a"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#ac05e51f671fded7c730bfa8a9fdf7a73">_vertexArraySize</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a01069.html">Vec3</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#acb48d8341faf2f02488a1ae872fcf5d8">_vertexArrayPtr</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">GLenum&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a48b0ebfd335c99200a1b4d7ef51597b2">_modeCache</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="a01069.html">Vec3</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#a9f2365d4c4664dff451a2e1bdd19988f">_vertexCache</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00871.html#adc2f73400324b97cf01ddf503efded73">_treatVertexDataAsTemporary</a></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><h3>template&lt;class T&gt;<br/>
class osg::TemplatePrimitiveFunctor&lt; T &gt;</h3>

<p>Provides access to the primitives that compose an <code><a class="el" href="a00216.html" title="Pure virtual base class for drawable geometry.">osg::Drawable</a></code>. </p>
<p>Notice that <code><a class="el" href="a00871.html" title="Provides access to the primitives that compose an osg::Drawable.">TemplatePrimitiveFunctor</a></code> is a class template, and that it inherits from its template parameter <code>T</code>. This template parameter must implement <code>operator()(const <a class="el" href="a01628.html#a3e445c808dcca39d411fede76b0d8dfa">osg::Vec3</a> v1, const <a class="el" href="a01628.html#a3e445c808dcca39d411fede76b0d8dfa">osg::Vec3</a> v2, const <a class="el" href="a01628.html#a3e445c808dcca39d411fede76b0d8dfa">osg::Vec3</a> v3, bool treatVertexDataAsTemporary)</code>, <code>operator()(const <a class="el" href="a01628.html#a3e445c808dcca39d411fede76b0d8dfa">osg::Vec3</a> v1, const <a class="el" href="a01628.html#a3e445c808dcca39d411fede76b0d8dfa">osg::Vec3</a> v2, bool treatVertexDataAsTemporary)</code>, <code>operator()(const <a class="el" href="a01628.html#a3e445c808dcca39d411fede76b0d8dfa">osg::Vec3</a> v1, const <a class="el" href="a01628.html#a3e445c808dcca39d411fede76b0d8dfa">osg::Vec3</a> v2, const <a class="el" href="a01628.html#a3e445c808dcca39d411fede76b0d8dfa">osg::Vec3</a> v3, bool treatVertexDataAsTemporary)</code>, and <code>operator()(const <a class="el" href="a01628.html#a3e445c808dcca39d411fede76b0d8dfa">osg::Vec3</a> v1, const <a class="el" href="a01628.html#a3e445c808dcca39d411fede76b0d8dfa">osg::Vec3</a> v2, const <a class="el" href="a01628.html#a3e445c808dcca39d411fede76b0d8dfa">osg::Vec3</a> v3, const <a class="el" href="a01628.html#a3e445c808dcca39d411fede76b0d8dfa">osg::Vec3</a> v4, bool treatVertexDataAsTemporary)</code> which will be called for the matching primitive when the functor is applied to a <code><a class="el" href="a00216.html" title="Pure virtual base class for drawable geometry.">Drawable</a></code>. Parameters <code>v1</code>, <code>v2</code>, <code>v3</code>, and <code>v4</code> are the vertices of the primitive. The last parameter, <code>treatVertexDataAsTemporary</code>, indicates whether these vertices are coming from a "real" vertex array, or from a temporary vertex array, created by the <code><a class="el" href="a00871.html" title="Provides access to the primitives that compose an osg::Drawable.">TemplatePrimitiveFunctor</a></code> from some other geometry representation. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><code><a class="el" href="a00577.html" title="A PrimitiveFunctor is used (in conjunction with osg::Drawable::accept (PrimitiveFunctor&amp;)) to get acc...">PrimitiveFunctor</a></code> for general usage hints. </dd></dl>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="aecee442faeefbb209cbd6d8b5f2fed79"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::TemplatePrimitiveFunctor" ref="aecee442faeefbb209cbd6d8b5f2fed79" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::<a class="el" href="a00871.html">TemplatePrimitiveFunctor</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="a00871.html#a48b0ebfd335c99200a1b4d7ef51597b2">osg::TemplatePrimitiveFunctor&lt; T &gt;::_modeCache</a>, <a class="el" href="a00871.html#adc2f73400324b97cf01ddf503efded73">osg::TemplatePrimitiveFunctor&lt; T &gt;::_treatVertexDataAsTemporary</a>, <a class="el" href="a00871.html#acb48d8341faf2f02488a1ae872fcf5d8">osg::TemplatePrimitiveFunctor&lt; T &gt;::_vertexArrayPtr</a>, and <a class="el" href="a00871.html#ac05e51f671fded7c730bfa8a9fdf7a73">osg::TemplatePrimitiveFunctor&lt; T &gt;::_vertexArraySize</a>.</p>

</div>
</div>
<a class="anchor" id="aac86e315cca4acdef1a47eedbd1288eb"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::~TemplatePrimitiveFunctor" ref="aac86e315cca4acdef1a47eedbd1288eb" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::~<a class="el" href="a00871.html">TemplatePrimitiveFunctor</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a1fbf9632ea5c2020980dd3d55759a910"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::begin" ref="a1fbf9632ea5c2020980dd3d55759a910" args="(GLenum mode)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::begin </td>
          <td>(</td>
          <td class="paramtype">GLenum&#160;</td>
          <td class="paramname"><em>mode</em></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Note: begin(..),vertex(..) &amp; <a class="el" href="a00871.html#a1fabdde208caff82fca41faece06050a" title="Mimics the OpenGL glEnd() function.">end()</a> are convenience methods for adapting non vertex array primitives to vertex array based primitives. </p>
<p>This is done to simplify the implementation of primitive functor subclasses - users only need override drawArray and drawElements. </p>

<p>Implements <a class="el" href="a00577.html#abfc5deeaa9548221aefda9c97605cbe7">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a00871.html#a48b0ebfd335c99200a1b4d7ef51597b2">osg::TemplatePrimitiveFunctor&lt; T &gt;::_modeCache</a>, and <a class="el" href="a00871.html#a9f2365d4c4664dff451a2e1bdd19988f">osg::TemplatePrimitiveFunctor&lt; T &gt;::_vertexCache</a>.</p>

</div>
</div>
<a class="anchor" id="a9f4a1018e98b3d4ba7714053a6f341a2"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::drawArrays" ref="a9f4a1018e98b3d4ba7714053a6f341a2" args="(GLenum mode, GLint first, GLsizei count)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::drawArrays </td>
          <td>(</td>
          <td class="paramtype">GLenum&#160;</td>
          <td class="paramname"><em>mode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">GLint&#160;</td>
          <td class="paramname"><em>first</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">GLsizei&#160;</td>
          <td class="paramname"><em>count</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Mimics the OpenGL <code>glDrawArrays()</code> function. </p>

<p>Implements <a class="el" href="a00577.html#a15bbb3e32d929a0999a3d5453108cee5">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a00871.html#adc2f73400324b97cf01ddf503efded73">osg::TemplatePrimitiveFunctor&lt; T &gt;::_treatVertexDataAsTemporary</a>, and <a class="el" href="a00871.html#acb48d8341faf2f02488a1ae872fcf5d8">osg::TemplatePrimitiveFunctor&lt; T &gt;::_vertexArrayPtr</a>.</p>

<p>Referenced by <a class="el" href="a00871.html#a1fabdde208caff82fca41faece06050a">osg::TemplatePrimitiveFunctor&lt; T &gt;::end()</a>.</p>

</div>
</div>
<a class="anchor" id="a22528d05fe496f61560add2f397c69de"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::drawElements" ref="a22528d05fe496f61560add2f397c69de" args="(GLenum mode, GLsizei count, const GLubyte *indices)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::drawElements </td>
          <td>(</td>
          <td class="paramtype">GLenum&#160;</td>
          <td class="paramname"><em>mode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">GLsizei&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const GLubyte *&#160;</td>
          <td class="paramname"><em>indices</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Mimics the OpenGL <code>glDrawElements()</code> function. </p>

<p>Implements <a class="el" href="a00577.html#a4867f17a87b3dacc530870c3c0faed8e">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a00871.html#a0438d40ecdf5f8a0d2ff7c828f87a807">osg::TemplatePrimitiveFunctor&lt; T &gt;::drawElementsTemplate()</a>.</p>

</div>
</div>
<a class="anchor" id="a1a178e2f58f1f94ffc3c2faad8435a97"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::drawElements" ref="a1a178e2f58f1f94ffc3c2faad8435a97" args="(GLenum mode, GLsizei count, const GLuint *indices)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::drawElements </td>
          <td>(</td>
          <td class="paramtype">GLenum&#160;</td>
          <td class="paramname"><em>mode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">GLsizei&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const GLuint *&#160;</td>
          <td class="paramname"><em>indices</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Mimics the OpenGL <code>glDrawElements()</code> function. </p>

<p>Implements <a class="el" href="a00577.html#a365996cc3b0269a2e44e6d9a6d537e04">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a00871.html#a0438d40ecdf5f8a0d2ff7c828f87a807">osg::TemplatePrimitiveFunctor&lt; T &gt;::drawElementsTemplate()</a>.</p>

</div>
</div>
<a class="anchor" id="a7537d7ca16acb67cf488c6e8467918bf"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::drawElements" ref="a7537d7ca16acb67cf488c6e8467918bf" args="(GLenum mode, GLsizei count, const GLushort *indices)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::drawElements </td>
          <td>(</td>
          <td class="paramtype">GLenum&#160;</td>
          <td class="paramname"><em>mode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">GLsizei&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const GLushort *&#160;</td>
          <td class="paramname"><em>indices</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Mimics the OpenGL <code>glDrawElements()</code> function. </p>

<p>Implements <a class="el" href="a00577.html#a9152955f2d3a785e510a070d39690f86">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a00871.html#a0438d40ecdf5f8a0d2ff7c828f87a807">osg::TemplatePrimitiveFunctor&lt; T &gt;::drawElementsTemplate()</a>.</p>

</div>
</div>
<a class="anchor" id="a0438d40ecdf5f8a0d2ff7c828f87a807"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::drawElementsTemplate" ref="a0438d40ecdf5f8a0d2ff7c828f87a807" args="(GLenum mode, GLsizei count, const IndexType *indices)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<div class="memtemplate">
template&lt;class IndexType &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::drawElementsTemplate </td>
          <td>(</td>
          <td class="paramtype">GLenum&#160;</td>
          <td class="paramname"><em>mode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">GLsizei&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const IndexType *&#160;</td>
          <td class="paramname"><em>indices</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="a00871.html#adc2f73400324b97cf01ddf503efded73">osg::TemplatePrimitiveFunctor&lt; T &gt;::_treatVertexDataAsTemporary</a>, and <a class="el" href="a00871.html#acb48d8341faf2f02488a1ae872fcf5d8">osg::TemplatePrimitiveFunctor&lt; T &gt;::_vertexArrayPtr</a>.</p>

<p>Referenced by <a class="el" href="a00871.html#a22528d05fe496f61560add2f397c69de">osg::TemplatePrimitiveFunctor&lt; T &gt;::drawElements()</a>.</p>

</div>
</div>
<a class="anchor" id="a1fabdde208caff82fca41faece06050a"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::end" ref="a1fabdde208caff82fca41faece06050a" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::end </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Mimics the OpenGL <code>glEnd()</code> function. </p>

<p>Implements <a class="el" href="a00577.html#af9e2b226bbfab5dfdb7bad738f429e39">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a00871.html#a48b0ebfd335c99200a1b4d7ef51597b2">osg::TemplatePrimitiveFunctor&lt; T &gt;::_modeCache</a>, <a class="el" href="a00871.html#adc2f73400324b97cf01ddf503efded73">osg::TemplatePrimitiveFunctor&lt; T &gt;::_treatVertexDataAsTemporary</a>, <a class="el" href="a00871.html#a9f2365d4c4664dff451a2e1bdd19988f">osg::TemplatePrimitiveFunctor&lt; T &gt;::_vertexCache</a>, <a class="el" href="a00871.html#a9f4a1018e98b3d4ba7714053a6f341a2">osg::TemplatePrimitiveFunctor&lt; T &gt;::drawArrays()</a>, and <a class="el" href="a00871.html#ac6ee8cbe3489e2abfcfe0bea085d3aa7">osg::TemplatePrimitiveFunctor&lt; T &gt;::setVertexArray()</a>.</p>

</div>
</div>
<a class="anchor" id="afae11ce6b1dc358a9bff4c3e17e4d27e"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::getTreatVertexDataAsTemporary" ref="afae11ce6b1dc358a9bff4c3e17e4d27e" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::getTreatVertexDataAsTemporary </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="a00871.html#adc2f73400324b97cf01ddf503efded73">osg::TemplatePrimitiveFunctor&lt; T &gt;::_treatVertexDataAsTemporary</a>.</p>

</div>
</div>
<a class="anchor" id="a1e0f5cbd8da2fbe6ef0bb4f619502bb4"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::setTreatVertexDataAsTemporary" ref="a1e0f5cbd8da2fbe6ef0bb4f619502bb4" args="(bool treatVertexDataAsTemporary)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::setTreatVertexDataAsTemporary </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>treatVertexDataAsTemporary</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="a00871.html#adc2f73400324b97cf01ddf503efded73">osg::TemplatePrimitiveFunctor&lt; T &gt;::_treatVertexDataAsTemporary</a>.</p>

</div>
</div>
<a class="anchor" id="ac6ee8cbe3489e2abfcfe0bea085d3aa7"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::setVertexArray" ref="ac6ee8cbe3489e2abfcfe0bea085d3aa7" args="(unsigned int, const Vec2 *)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::setVertexArray </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a01062.html">Vec2</a> *&#160;</td>
          <td class="paramname"><em>vertices</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the array of vertices used to describe the primitives. </p>
<p>Somehow mimics the OpenGL <code>glVertexPointer()</code> function. </p>

<p>Implements <a class="el" href="a00577.html#acc5eb41b41a5526e724acad748667a0a">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a01628.html#a9d7b8fb9d25855a45e4507f8449ab596">osg::notify()</a>, and <a class="el" href="a01628.html#a32e50146c0f96ef6dc821cbc3c0e41d3a1bc96fe6de8f81f8dfdd779e2b8f2c08">osg::WARN</a>.</p>

<p>Referenced by <a class="el" href="a00871.html#a1fabdde208caff82fca41faece06050a">osg::TemplatePrimitiveFunctor&lt; T &gt;::end()</a>.</p>

</div>
</div>
<a class="anchor" id="a3487e9255f4bb1685e7057b0d195c1c8"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::setVertexArray" ref="a3487e9255f4bb1685e7057b0d195c1c8" args="(unsigned int, const Vec4d *)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::setVertexArray </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a01073.html">Vec4d</a> *&#160;</td>
          <td class="paramname"><em>vertices</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the array of vertices used to describe the primitives. </p>
<p>Somehow mimics the OpenGL <code>glVertexPointer()</code> function. </p>

<p>Implements <a class="el" href="a00577.html#ae98dd15310d38e7af25c562bb6dfed2c">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a01628.html#a9d7b8fb9d25855a45e4507f8449ab596">osg::notify()</a>, and <a class="el" href="a01628.html#a32e50146c0f96ef6dc821cbc3c0e41d3a1bc96fe6de8f81f8dfdd779e2b8f2c08">osg::WARN</a>.</p>

</div>
</div>
<a class="anchor" id="a47461224ce5effd4cef3584897ec02ba"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::setVertexArray" ref="a47461224ce5effd4cef3584897ec02ba" args="(unsigned int count, const Vec3 *vertices)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::setVertexArray </td>
          <td>(</td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a01069.html">Vec3</a> *&#160;</td>
          <td class="paramname"><em>vertices</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the array of vertices used to describe the primitives. </p>
<p>Somehow mimics the OpenGL <code>glVertexPointer()</code> function. </p>

<p>Implements <a class="el" href="a00577.html#adaca6968d9540149430ebadb5c156d48">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a00871.html#acb48d8341faf2f02488a1ae872fcf5d8">osg::TemplatePrimitiveFunctor&lt; T &gt;::_vertexArrayPtr</a>, and <a class="el" href="a00871.html#ac05e51f671fded7c730bfa8a9fdf7a73">osg::TemplatePrimitiveFunctor&lt; T &gt;::_vertexArraySize</a>.</p>

</div>
</div>
<a class="anchor" id="a987588314612db64cfc7d4ab9e46afd3"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::setVertexArray" ref="a987588314612db64cfc7d4ab9e46afd3" args="(unsigned int, const Vec4 *)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::setVertexArray </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a01074.html">Vec4</a> *&#160;</td>
          <td class="paramname"><em>vertices</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the array of vertices used to describe the primitives. </p>
<p>Somehow mimics the OpenGL <code>glVertexPointer()</code> function. </p>

<p>Implements <a class="el" href="a00577.html#ae8ecd564d8161c54ee54cd7a991f59cd">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a01628.html#a9d7b8fb9d25855a45e4507f8449ab596">osg::notify()</a>, and <a class="el" href="a01628.html#a32e50146c0f96ef6dc821cbc3c0e41d3a1bc96fe6de8f81f8dfdd779e2b8f2c08">osg::WARN</a>.</p>

</div>
</div>
<a class="anchor" id="a17dd457d356315575497c248831f0adb"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::setVertexArray" ref="a17dd457d356315575497c248831f0adb" args="(unsigned int, const Vec2d *)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::setVertexArray </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a01061.html">Vec2d</a> *&#160;</td>
          <td class="paramname"><em>vertices</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the array of vertices used to describe the primitives. </p>
<p>Somehow mimics the OpenGL <code>glVertexPointer()</code> function. </p>

<p>Implements <a class="el" href="a00577.html#a5e7009c6c078fc7805e5cd56686596cd">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a01628.html#a9d7b8fb9d25855a45e4507f8449ab596">osg::notify()</a>, and <a class="el" href="a01628.html#a32e50146c0f96ef6dc821cbc3c0e41d3a1bc96fe6de8f81f8dfdd779e2b8f2c08">osg::WARN</a>.</p>

</div>
</div>
<a class="anchor" id="a22b8bff12bb11472e8b873df0f659efc"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::setVertexArray" ref="a22b8bff12bb11472e8b873df0f659efc" args="(unsigned int, const Vec3d *)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::setVertexArray </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a01067.html">Vec3d</a> *&#160;</td>
          <td class="paramname"><em>vertices</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the array of vertices used to describe the primitives. </p>
<p>Somehow mimics the OpenGL <code>glVertexPointer()</code> function. </p>

<p>Implements <a class="el" href="a00577.html#a0d1a4a14833a125d01a9a6a626d1fb20">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a01628.html#a9d7b8fb9d25855a45e4507f8449ab596">osg::notify()</a>, and <a class="el" href="a01628.html#a32e50146c0f96ef6dc821cbc3c0e41d3a1bc96fe6de8f81f8dfdd779e2b8f2c08">osg::WARN</a>.</p>

</div>
</div>
<a class="anchor" id="aa104967f38ee161d57ee26b9924d6a0c"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::vertex" ref="aa104967f38ee161d57ee26b9924d6a0c" args="(float x, float y, float z)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::vertex </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>z</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Mimics the OpenGL <code>glVertex()</code> "family of functions". </p>

<p>Implements <a class="el" href="a00577.html#a04f1c0fccd366be7d2ab91d211c1ff78">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a00871.html#a9f2365d4c4664dff451a2e1bdd19988f">osg::TemplatePrimitiveFunctor&lt; T &gt;::_vertexCache</a>.</p>

</div>
</div>
<a class="anchor" id="a6a5c814d4ccc6b8ecd4400d1b991b31d"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::vertex" ref="a6a5c814d4ccc6b8ecd4400d1b991b31d" args="(float x, float y, float z, float w)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::vertex </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>z</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>w</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Mimics the OpenGL <code>glVertex()</code> "family of functions". </p>

<p>Implements <a class="el" href="a00577.html#a85664445b0b5ff0c92348fba150511e0">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a00871.html#a9f2365d4c4664dff451a2e1bdd19988f">osg::TemplatePrimitiveFunctor&lt; T &gt;::_vertexCache</a>.</p>

</div>
</div>
<a class="anchor" id="ac8aaf0cae641ea526db755cf30e1b8b1"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::vertex" ref="ac8aaf0cae641ea526db755cf30e1b8b1" args="(const Vec3 &amp;vert)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::vertex </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a01069.html">Vec3</a> &amp;&#160;</td>
          <td class="paramname"><em>vert</em></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Mimics the OpenGL <code>glVertex()</code> "family of functions". </p>

<p>Implements <a class="el" href="a00577.html#ab3617b660eba5326298ed3e877238d9f">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a00871.html#a9f2365d4c4664dff451a2e1bdd19988f">osg::TemplatePrimitiveFunctor&lt; T &gt;::_vertexCache</a>.</p>

</div>
</div>
<a class="anchor" id="aeb1dfc8d740c3e7c40ffefc05d3fe9ac"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::vertex" ref="aeb1dfc8d740c3e7c40ffefc05d3fe9ac" args="(float x, float y)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::vertex </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>y</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Mimics the OpenGL <code>glVertex()</code> "family of functions". </p>

<p>Implements <a class="el" href="a00577.html#a98c16a7d5050b24cb807f50694447882">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a00871.html#a9f2365d4c4664dff451a2e1bdd19988f">osg::TemplatePrimitiveFunctor&lt; T &gt;::_vertexCache</a>.</p>

</div>
</div>
<a class="anchor" id="a16446acb5fe40225c182970ece0d5c62"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::vertex" ref="a16446acb5fe40225c182970ece0d5c62" args="(const Vec2 &amp;vert)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::vertex </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a01062.html">Vec2</a> &amp;&#160;</td>
          <td class="paramname"><em>vert</em></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Mimics the OpenGL <code>glVertex()</code> "family of functions". </p>

<p>Implements <a class="el" href="a00577.html#addcbef08b281bbe51c6633b8d7162e6d">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a00871.html#a9f2365d4c4664dff451a2e1bdd19988f">osg::TemplatePrimitiveFunctor&lt; T &gt;::_vertexCache</a>.</p>

</div>
</div>
<a class="anchor" id="a9523df2a1409c53d8ca77e1881dea8ce"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::vertex" ref="a9523df2a1409c53d8ca77e1881dea8ce" args="(const Vec4 &amp;vert)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::vertex </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a01074.html">Vec4</a> &amp;&#160;</td>
          <td class="paramname"><em>vert</em></td><td>)</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Mimics the OpenGL <code>glVertex()</code> "family of functions". </p>

<p>Implements <a class="el" href="a00577.html#a95867eb1dfb383057fb45459a38256d6">osg::PrimitiveFunctor</a>.</p>

<p>References <a class="el" href="a00871.html#a9f2365d4c4664dff451a2e1bdd19988f">osg::TemplatePrimitiveFunctor&lt; T &gt;::_vertexCache</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a48b0ebfd335c99200a1b4d7ef51597b2"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::_modeCache" ref="a48b0ebfd335c99200a1b4d7ef51597b2" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">GLenum <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::<a class="el" href="a00871.html#a48b0ebfd335c99200a1b4d7ef51597b2">_modeCache</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="a00871.html#a1fbf9632ea5c2020980dd3d55759a910">osg::TemplatePrimitiveFunctor&lt; T &gt;::begin()</a>, <a class="el" href="a00871.html#a1fabdde208caff82fca41faece06050a">osg::TemplatePrimitiveFunctor&lt; T &gt;::end()</a>, and <a class="el" href="a00871.html#aecee442faeefbb209cbd6d8b5f2fed79">osg::TemplatePrimitiveFunctor&lt; T &gt;::TemplatePrimitiveFunctor()</a>.</p>

</div>
</div>
<a class="anchor" id="adc2f73400324b97cf01ddf503efded73"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::_treatVertexDataAsTemporary" ref="adc2f73400324b97cf01ddf503efded73" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::<a class="el" href="a00871.html#adc2f73400324b97cf01ddf503efded73">_treatVertexDataAsTemporary</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="a00871.html#a9f4a1018e98b3d4ba7714053a6f341a2">osg::TemplatePrimitiveFunctor&lt; T &gt;::drawArrays()</a>, <a class="el" href="a00871.html#a0438d40ecdf5f8a0d2ff7c828f87a807">osg::TemplatePrimitiveFunctor&lt; T &gt;::drawElementsTemplate()</a>, <a class="el" href="a00871.html#a1fabdde208caff82fca41faece06050a">osg::TemplatePrimitiveFunctor&lt; T &gt;::end()</a>, <a class="el" href="a00871.html#afae11ce6b1dc358a9bff4c3e17e4d27e">osg::TemplatePrimitiveFunctor&lt; T &gt;::getTreatVertexDataAsTemporary()</a>, <a class="el" href="a00871.html#a1e0f5cbd8da2fbe6ef0bb4f619502bb4">osg::TemplatePrimitiveFunctor&lt; T &gt;::setTreatVertexDataAsTemporary()</a>, and <a class="el" href="a00871.html#aecee442faeefbb209cbd6d8b5f2fed79">osg::TemplatePrimitiveFunctor&lt; T &gt;::TemplatePrimitiveFunctor()</a>.</p>

</div>
</div>
<a class="anchor" id="acb48d8341faf2f02488a1ae872fcf5d8"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::_vertexArrayPtr" ref="acb48d8341faf2f02488a1ae872fcf5d8" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="a01069.html">Vec3</a>* <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::<a class="el" href="a00871.html#acb48d8341faf2f02488a1ae872fcf5d8">_vertexArrayPtr</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="a00871.html#a9f4a1018e98b3d4ba7714053a6f341a2">osg::TemplatePrimitiveFunctor&lt; T &gt;::drawArrays()</a>, <a class="el" href="a00871.html#a0438d40ecdf5f8a0d2ff7c828f87a807">osg::TemplatePrimitiveFunctor&lt; T &gt;::drawElementsTemplate()</a>, <a class="el" href="a00871.html#a47461224ce5effd4cef3584897ec02ba">osg::TemplatePrimitiveFunctor&lt; T &gt;::setVertexArray()</a>, and <a class="el" href="a00871.html#aecee442faeefbb209cbd6d8b5f2fed79">osg::TemplatePrimitiveFunctor&lt; T &gt;::TemplatePrimitiveFunctor()</a>.</p>

</div>
</div>
<a class="anchor" id="ac05e51f671fded7c730bfa8a9fdf7a73"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::_vertexArraySize" ref="ac05e51f671fded7c730bfa8a9fdf7a73" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">unsigned int <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::<a class="el" href="a00871.html#ac05e51f671fded7c730bfa8a9fdf7a73">_vertexArraySize</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="a00871.html#a47461224ce5effd4cef3584897ec02ba">osg::TemplatePrimitiveFunctor&lt; T &gt;::setVertexArray()</a>, and <a class="el" href="a00871.html#aecee442faeefbb209cbd6d8b5f2fed79">osg::TemplatePrimitiveFunctor&lt; T &gt;::TemplatePrimitiveFunctor()</a>.</p>

</div>
</div>
<a class="anchor" id="a9f2365d4c4664dff451a2e1bdd19988f"></a><!-- doxytag: member="osg::TemplatePrimitiveFunctor::_vertexCache" ref="a9f2365d4c4664dff451a2e1bdd19988f" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;<a class="el" href="a01069.html">Vec3</a>&gt; <a class="el" href="a00871.html">osg::TemplatePrimitiveFunctor</a>&lt; T &gt;::<a class="el" href="a00871.html#a9f2365d4c4664dff451a2e1bdd19988f">_vertexCache</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="a00871.html#a1fbf9632ea5c2020980dd3d55759a910">osg::TemplatePrimitiveFunctor&lt; T &gt;::begin()</a>, <a class="el" href="a00871.html#a1fabdde208caff82fca41faece06050a">osg::TemplatePrimitiveFunctor&lt; T &gt;::end()</a>, and <a class="el" href="a00871.html#a16446acb5fe40225c182970ece0d5c62">osg::TemplatePrimitiveFunctor&lt; T &gt;::vertex()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>osg/<a class="el" href="a01255.html">TemplatePrimitiveFunctor</a></li>
</ul>
</div>
<hr>
<table border="0"><tr><td>
  <img src="osg32-32.png" alt="osg logo" />
</td><td>
  <address><small>Generated at Tue May 31 2011 04:19:34 for the <a href="http://www.openscenegraph.org/">OpenSceneGraph</a>
by <a href="http://www.doxygen.org">doxygen</a> 1.7.4.</small></address>
<!-- Dimitri van Heesch's e-mail address removed, lest he get messages on the OpenSceneGraph -->
</td></tr></table>
</body>
</html>