Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > bad97183153701b09df5fae1052b1c30 > files > 3502

crystalspace-doc-1.2.1-5mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Crystal Space 1.2.1: iRenderBuffer Struct Reference (Crystal Space 1.2.1 Public API Reference)</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<table border="0" cellpadding="0" cellspacing="0" width="100%" class="head">
 <tr height="59">
  <td class="head" width="202" valign="bottom" style="padding-left:0;"><a href="http://www.crystalspace3d.org/"><img src="csblur.png" width="236" height="59" alt="CrystalSpace" border="0"></a></td>
  <td class="head"><h2>Public API Reference</h2></td>
 </tr>
 <tr height="11">
  <td colspan="2" class="headshadow" valign="top" style="padding-left:0;"><img src="csblurb.png" width="236" height="11" alt="" border="0"></td>
 </tr>
</table>
<div class="content">
<!-- Generated by Doxygen 1.5.3 -->
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li><a href="modules.html"><span>Modules</span></a></li>
    <li><a href="namespaces.html"><span>Namespaces</span></a></li>
    <li class="current"><a href="classes.html"><span>Classes</span></a></li>
    <li><a href="files.html"><span>Files</span></a></li>
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  </ul>
</div>
<div class="tabs">
  <ul>
    <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
    <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
    <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
    <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
  </ul>
</div>
<h1>iRenderBuffer Struct Reference<br>
<small>
[<a class="el" href="group__gfx3d.html">3D</a>]</small>
</h1><!-- doxytag: class="iRenderBuffer" --><!-- doxytag: inherits="iBase" -->This is a general buffer.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="rndbuf_8h-source.html">ivideo/rndbuf.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for iRenderBuffer:</div>
<div class="dynsection">
<p><center><img src="structiRenderBuffer__inherit__graph.png" border="0" usemap="#iRenderBuffer__inherit__map" alt="Inheritance graph"></center>
<map name="iRenderBuffer__inherit__map">
<area shape="rect" href="classscfImplementation1.html" title="scfImplementation1\&lt; csRenderBuffer, iRenderBuffer \&gt;" alt="" coords="397,5,776,32"><area shape="rect" href="classscfImplementation2.html" title="scfImplementation2\&lt; CS::RenderBufferPersistent, iRenderBuffer, iRenderBufferPersistence \&gt;" alt="" coords="271,56,903,83"><area shape="rect" href="structiBase.html" title="This is the basic interface: all other interfaces should be derived from this one..." alt="" coords="5,31,61,57"><area shape="rect" href="classcsRenderBuffer.html" title="Render buffer &#45; basic container for mesh geometry data." alt="" coords="952,5,1075,32"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>

<p>
<a href="structiRenderBuffer-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#2da58b375797619667a7337ec7c95cc3">CopyInto</a> (const void *data, size_t elementCount, size_t elemOffset=0)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy data to the render buffer.  <a href="#2da58b375797619667a7337ec7c95cc3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <br>
<a class="el" href="group__gfx3d.html#ge5b18d205d829115e359b43a81a963b4">csRenderBufferType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#18a6e3ed4a1de9784568bffb7ef98f52">GetBufferType</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get type of buffer (static/dynamic).  <a href="#18a6e3ed4a1de9784568bffb7ef98f52"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#39e622dc64c4acc4a3ed2df051e10598">GetComponentCount</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the number of components per element.  <a href="#39e622dc64c4acc4a3ed2df051e10598"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <br>
<a class="el" href="group__gfx3d.html#g2e793d8189bb8566ed81c168875f452b">csRenderBufferComponentType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#23e7848455338c7636d6a97e5a09c7c8">GetComponentType</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the component type (float, int, etc).  <a href="#23e7848455338c7636d6a97e5a09c7c8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#2c43d2f649e4725a8e86abfa5dfbfffe">GetElementCount</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Number of elements in a buffer.  <a href="#2c43d2f649e4725a8e86abfa5dfbfffe"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#77535f2913a88ee424d4bfe52e8a646d">GetElementDistance</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the distance between two elements (in bytes, includes stride).  <a href="#77535f2913a88ee424d4bfe52e8a646d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="structiRenderBuffer.html">iRenderBuffer</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#ccd6c11709e7907e31e38ba8b4a060d7">GetMasterBuffer</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the master buffer in case this is an interleaved buffer.  <a href="#ccd6c11709e7907e31e38ba8b4a060d7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#527e690865e28a5f3fd8963e70a33fde">GetOffset</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the offset of the buffer (in bytes).  <a href="#527e690865e28a5f3fd8963e70a33fde"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#f97a51260833f11509f91617d6fda0de">GetRangeEnd</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The highest index contained in this buffer, only valid for index buffers.  <a href="#f97a51260833f11509f91617d6fda0de"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#acfc7003a6a831431e34dbaf49696563">GetRangeStart</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The lowest index contained in this buffer, only valid for index buffers.  <a href="#acfc7003a6a831431e34dbaf49696563"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#f4ffdccb0f00259d47c117a69522bf53">GetSize</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the size of the buffer (in bytes).  <a href="#f4ffdccb0f00259d47c117a69522bf53"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#af0df851f17cd16b1789a796a35508cf">GetStride</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the stride of the buffer (in bytes).  <a href="#af0df851f17cd16b1789a796a35508cf"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="group__util.html#g91ad9478d81a7aaf2593e8d9c3d06a14">uint</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#a72cd7b6378ba988426ab0a89d125229">GetVersion</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get version.  <a href="#a72cd7b6378ba988426ab0a89d125229"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#4d5291d9681843605e04e9ce076307a2">IsIndexBuffer</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Whether the buffer is an index buffer.  <a href="#4d5291d9681843605e04e9ce076307a2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#7c03d7a103a3b83597386caf3f3c5c3b">Lock</a> (<a class="el" href="group__gfx3d.html#g6415ede5d389a1c56c44ddbc924c8fdc">csRenderBufferLockType</a> lockType)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Lock the buffer to allow reading or writing to it directly.  <a href="#7c03d7a103a3b83597386caf3f3c5c3b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#52455e929de9ca42c4e85be85b9075ae">Release</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Releases the buffer.  <a href="#52455e929de9ca42c4e85be85b9075ae"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#828620a53fc1a26e18f07aaa3b9e73ec">SetCallback</a> (<a class="el" href="structiRenderBufferCallback.html">iRenderBufferCallback</a> *cb)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set callback object to use.  <a href="#828620a53fc1a26e18f07aaa3b9e73ec"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiRenderBuffer.html#9a0f79d319266202eb4bcd7389cab755">SetData</a> (const void *data)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the buffer data.  <a href="#9a0f79d319266202eb4bcd7389cab755"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
This is a general buffer. 
<p>
Main creators of instances implementing this interface:<ul>
<li><a class="el" href="classcsRenderBuffer.html#086168dc988e839906af0d2cca953db7" title="Create a render buffer.">csRenderBuffer::CreateRenderBuffer()</a></li><li><a class="el" href="classcsRenderBuffer.html#e3985e043bc052d022b00195d269c30a" title="Create an index buffer.">csRenderBuffer::CreateIndexRenderBuffer()</a></li><li><a class="el" href="classcsRenderBuffer.html#c9ad483adeaec3e274a289335da2ecdc" title="Create an interleaved renderbuffer (You would use this then set stride to determine...">csRenderBuffer::CreateInterleavedRenderBuffers()</a></li></ul>
<p>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classcsRenderBuffer.html" title="Render buffer - basic container for mesh geometry data.">csRenderBuffer</a> </dd></dl>

<p>Definition at line <a class="el" href="rndbuf_8h-source.html#l00141">141</a> of file <a class="el" href="rndbuf_8h-source.html">rndbuf.h</a>.</p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="2da58b375797619667a7337ec7c95cc3"></a><!-- doxytag: member="iRenderBuffer::CopyInto" ref="2da58b375797619667a7337ec7c95cc3" args="(const void *data, size_t elementCount, size_t elemOffset=0)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void iRenderBuffer::CopyInto           </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>elementCount</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>elemOffset</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Copy data to the render buffer. 
<p>
<dl class="remark" compact><dt><b>Remarks:</b></dt><dd>Do not call on a locked buffer. Does not work with interleaved buffer, copy to master buffer instead. </dd></dl>

<p>Implemented in <a class="el" href="classcsRenderBuffer.html#436deb746bef8c3127aa978a4c719199">csRenderBuffer</a>.</p>

</div>
</div><p>
<a class="anchor" name="18a6e3ed4a1de9784568bffb7ef98f52"></a><!-- doxytag: member="iRenderBuffer::GetBufferType" ref="18a6e3ed4a1de9784568bffb7ef98f52" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__gfx3d.html#ge5b18d205d829115e359b43a81a963b4">csRenderBufferType</a> iRenderBuffer::GetBufferType           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get type of buffer (static/dynamic). 
<p>

<p>Implemented in <a class="el" href="classcsRenderBuffer.html#678cf41b3b28afecadbbd9f069474569">csRenderBuffer</a>.</p>

</div>
</div><p>
<a class="anchor" name="39e622dc64c4acc4a3ed2df051e10598"></a><!-- doxytag: member="iRenderBuffer::GetComponentCount" ref="39e622dc64c4acc4a3ed2df051e10598" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int iRenderBuffer::GetComponentCount           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Gets the number of components per element. 
<p>

<p>Implemented in <a class="el" href="classcsRenderBuffer.html#9ef0b716aafb2621d75db69e954a332e">csRenderBuffer</a>.</p>

<p>Referenced by <a class="el" href="vertexlistwalker_8h-source.html#l00055">csVertexListWalker&lt; Tbase, Tcomplex &gt;::csVertexListWalker()</a>.</p>

</div>
</div><p>
<a class="anchor" name="23e7848455338c7636d6a97e5a09c7c8"></a><!-- doxytag: member="iRenderBuffer::GetComponentType" ref="23e7848455338c7636d6a97e5a09c7c8" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__gfx3d.html#g2e793d8189bb8566ed81c168875f452b">csRenderBufferComponentType</a> iRenderBuffer::GetComponentType           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Gets the component type (float, int, etc). 
<p>

<p>Implemented in <a class="el" href="classcsRenderBuffer.html#a7f47a648af24558d2bed04ff603cfae">csRenderBuffer</a>.</p>

<p>Referenced by <a class="el" href="trianglestream_8h-source.html#l00181">CS::TriangleIndicesStream&lt; T &gt;::BeginTriangulate()</a>, and <a class="el" href="vertexlistwalker_8h-source.html#l00055">csVertexListWalker&lt; Tbase, Tcomplex &gt;::csVertexListWalker()</a>.</p>

</div>
</div><p>
<a class="anchor" name="2c43d2f649e4725a8e86abfa5dfbfffe"></a><!-- doxytag: member="iRenderBuffer::GetElementCount" ref="2c43d2f649e4725a8e86abfa5dfbfffe" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual size_t iRenderBuffer::GetElementCount           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Number of elements in a buffer. 
<p>

<p>Implemented in <a class="el" href="classcsRenderBuffer.html#097fca3c99143d29bdd339663f9517ba">csRenderBuffer</a>.</p>

<p>Referenced by <a class="el" href="trianglestream_8h-source.html#l00181">CS::TriangleIndicesStream&lt; T &gt;::BeginTriangulate()</a>, <a class="el" href="rbuflock_8h-source.html#l00116">csRenderBufferLock&lt; unsigned char &gt;::csRenderBufferLock()</a>, and <a class="el" href="vertexlistwalker_8h-source.html#l00055">csVertexListWalker&lt; Tbase, Tcomplex &gt;::csVertexListWalker()</a>.</p>

</div>
</div><p>
<a class="anchor" name="77535f2913a88ee424d4bfe52e8a646d"></a><!-- doxytag: member="iRenderBuffer::GetElementDistance" ref="77535f2913a88ee424d4bfe52e8a646d" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual size_t iRenderBuffer::GetElementDistance           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the distance between two elements (in bytes, includes stride). 
<p>

<p>Implemented in <a class="el" href="classcsRenderBuffer.html#5b102d909ea1a0daf28aa70918986a0a">csRenderBuffer</a>.</p>

<p>Referenced by <a class="el" href="trianglestream_8h-source.html#l00181">CS::TriangleIndicesStream&lt; T &gt;::BeginTriangulate()</a>.</p>

</div>
</div><p>
<a class="anchor" name="ccd6c11709e7907e31e38ba8b4a060d7"></a><!-- doxytag: member="iRenderBuffer::GetMasterBuffer" ref="ccd6c11709e7907e31e38ba8b4a060d7" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structiRenderBuffer.html">iRenderBuffer</a>* iRenderBuffer::GetMasterBuffer           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the master buffer in case this is an interleaved buffer. 
<p>
The master buffer is the buffer that actually holds the data; while it can be used to retrieve or set data, it must not be used for actual rendering. Use the interleaved buffers instead. 
<p>Implemented in <a class="el" href="classcsRenderBuffer.html#3e9297f60847d14356f4b99ed275e378">csRenderBuffer</a>.</p>

</div>
</div><p>
<a class="anchor" name="527e690865e28a5f3fd8963e70a33fde"></a><!-- doxytag: member="iRenderBuffer::GetOffset" ref="527e690865e28a5f3fd8963e70a33fde" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual size_t iRenderBuffer::GetOffset           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the offset of the buffer (in bytes). 
<p>

<p>Implemented in <a class="el" href="classcsRenderBuffer.html#6d20d5a23e566d7705f5fe2d2be3944c">csRenderBuffer</a>.</p>

</div>
</div><p>
<a class="anchor" name="f97a51260833f11509f91617d6fda0de"></a><!-- doxytag: member="iRenderBuffer::GetRangeEnd" ref="f97a51260833f11509f91617d6fda0de" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual size_t iRenderBuffer::GetRangeEnd           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The highest index contained in this buffer, only valid for index buffers. 
<p>

<p>Implemented in <a class="el" href="classcsRenderBuffer.html#d6ff45db45621deddbc0ac220e3ab1ea">csRenderBuffer</a>.</p>

</div>
</div><p>
<a class="anchor" name="acfc7003a6a831431e34dbaf49696563"></a><!-- doxytag: member="iRenderBuffer::GetRangeStart" ref="acfc7003a6a831431e34dbaf49696563" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual size_t iRenderBuffer::GetRangeStart           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The lowest index contained in this buffer, only valid for index buffers. 
<p>

<p>Implemented in <a class="el" href="classcsRenderBuffer.html#c9c52a734a1b292edde25d428f6fea1f">csRenderBuffer</a>.</p>

</div>
</div><p>
<a class="anchor" name="f4ffdccb0f00259d47c117a69522bf53"></a><!-- doxytag: member="iRenderBuffer::GetSize" ref="f4ffdccb0f00259d47c117a69522bf53" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual size_t iRenderBuffer::GetSize           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the size of the buffer (in bytes). 
<p>

<p>Implemented in <a class="el" href="classcsRenderBuffer.html#9ee78879570168bd102e7597f7d4ba36">csRenderBuffer</a>.</p>

</div>
</div><p>
<a class="anchor" name="af0df851f17cd16b1789a796a35508cf"></a><!-- doxytag: member="iRenderBuffer::GetStride" ref="af0df851f17cd16b1789a796a35508cf" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual size_t iRenderBuffer::GetStride           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the stride of the buffer (in bytes). 
<p>

<p>Implemented in <a class="el" href="classcsRenderBuffer.html#fdaef8516373a534381edf5ce99fe6a0">csRenderBuffer</a>.</p>

</div>
</div><p>
<a class="anchor" name="a72cd7b6378ba988426ab0a89d125229"></a><!-- doxytag: member="iRenderBuffer::GetVersion" ref="a72cd7b6378ba988426ab0a89d125229" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__util.html#g91ad9478d81a7aaf2593e8d9c3d06a14">uint</a> iRenderBuffer::GetVersion           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get version. 
<p>

<p>Implemented in <a class="el" href="classcsRenderBuffer.html#9c8ef4b9a533d75e5d2cc081bf10b43b">csRenderBuffer</a>.</p>

</div>
</div><p>
<a class="anchor" name="4d5291d9681843605e04e9ce076307a2"></a><!-- doxytag: member="iRenderBuffer::IsIndexBuffer" ref="4d5291d9681843605e04e9ce076307a2" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool iRenderBuffer::IsIndexBuffer           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Whether the buffer is an index buffer. 
<p>

<p>Implemented in <a class="el" href="classcsRenderBuffer.html#6716d1a72bff4449bfd6bfb48f608e55">csRenderBuffer</a>.</p>

</div>
</div><p>
<a class="anchor" name="7c03d7a103a3b83597386caf3f3c5c3b"></a><!-- doxytag: member="iRenderBuffer::Lock" ref="7c03d7a103a3b83597386caf3f3c5c3b" args="(csRenderBufferLockType lockType)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void* iRenderBuffer::Lock           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__gfx3d.html#g6415ede5d389a1c56c44ddbc924c8fdc">csRenderBufferLockType</a>&nbsp;</td>
          <td class="paramname"> <em>lockType</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Lock the buffer to allow reading or writing to it directly. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>lockType</em>&nbsp;</td><td>The type of lock desired. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A pointer to the first element or (void*)-1 if there was some error. </dd></dl>
<dl class="remark" compact><dt><b>Remarks:</b></dt><dd>After the data was used as desired <a class="el" href="structiRenderBuffer.html#52455e929de9ca42c4e85be85b9075ae" title="Releases the buffer.">Release()</a> <b>must</b> be called. </dd></dl>

<p>Implemented in <a class="el" href="classcsRenderBuffer.html#ac201ab5b72a26fa64fc500337ed5560">csRenderBuffer</a>.</p>

<p>Referenced by <a class="el" href="trianglestream_8h-source.html#l00181">CS::TriangleIndicesStream&lt; T &gt;::BeginTriangulate()</a>.</p>

</div>
</div><p>
<a class="anchor" name="52455e929de9ca42c4e85be85b9075ae"></a><!-- doxytag: member="iRenderBuffer::Release" ref="52455e929de9ca42c4e85be85b9075ae" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void iRenderBuffer::Release           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Releases the buffer. 
<p>
After this all access to the buffer pointer is illegal. 
<p>Implemented in <a class="el" href="classcsRenderBuffer.html#83d05cf4586dcffbc6cec05e632957ff">csRenderBuffer</a>.</p>

<p>Referenced by <a class="el" href="trianglestream_8h-source.html#l00134">CS::TriangleIndicesStream&lt; T &gt;::~TriangleIndicesStream()</a>.</p>

</div>
</div><p>
<a class="anchor" name="828620a53fc1a26e18f07aaa3b9e73ec"></a><!-- doxytag: member="iRenderBuffer::SetCallback" ref="828620a53fc1a26e18f07aaa3b9e73ec" args="(iRenderBufferCallback *cb)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void iRenderBuffer::SetCallback           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structiRenderBufferCallback.html">iRenderBufferCallback</a> *&nbsp;</td>
          <td class="paramname"> <em>cb</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set callback object to use. 
<p>

<p>Implemented in <a class="el" href="classcsRenderBuffer.html#84849ceac263f55aa6359175e823a917">csRenderBuffer</a>.</p>

</div>
</div><p>
<a class="anchor" name="9a0f79d319266202eb4bcd7389cab755"></a><!-- doxytag: member="iRenderBuffer::SetData" ref="9a0f79d319266202eb4bcd7389cab755" args="(const void *data)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void iRenderBuffer::SetData           </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>data</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set the buffer data. 
<p>
This changes the internal pointer to the buffer data to <em>buffer</em> instead. It will also be returned by <a class="el" href="structiRenderBuffer.html#7c03d7a103a3b83597386caf3f3c5c3b" title="Lock the buffer to allow reading or writing to it directly.">Lock()</a>. It is the responsibility of the caller to ensure that the memory pointed to by <em>data</em> is valid for as long as the render buffer is used. <dl class="remark" compact><dt><b>Remarks:</b></dt><dd>Do not call on a locked buffer. Does not work with interleaved buffer, set data on master buffer instead. </dd></dl>

<p>Implemented in <a class="el" href="classcsRenderBuffer.html#91953b37414064b6bc2aa156ad84f5d5">csRenderBuffer</a>.</p>

</div>
</div><p>
<hr>The documentation for this struct was generated from the following file:<ul>
<li>ivideo/<a class="el" href="rndbuf_8h-source.html">rndbuf.h</a></ul>
<hr size="1"><address><small>Generated for Crystal Space 1.2.1 by 
<a href="http://www.doxygen.org/index.html">doxygen</a> 1.5.3 
</small></address> </div></body> </html>