source: OGRE/trunk/ogrenew/Docs/api/html/classOgre_1_1GLHardwareVertexBuffer.html @ 657

Revision 657, 64.3 KB checked in by mattausch, 18 years ago (diff)

added ogre dependencies and patched ogre sources

Line 
1<html>
2<head>
3<title>Ogre::GLHardwareVertexBuffer class Reference - OGRE Documentation</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
4<link type="text/css" rel="stylesheet" href="style.css">
5</head>
6
7<body>
8<!-- Generated by Doxygen 1.3.6 -->
9<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
10<h1>Ogre::GLHardwareVertexBuffer Class Reference</h1>Specialisation of <a class="el" href="classOgre_1_1HardwareVertexBuffer.html">HardwareVertexBuffer</a> for OpenGL. 
11<a href="#_details">More...</a>
12<p>
13<code>#include &lt;<a class="el" href="OgreGLHardwareVertexBuffer_8h-source.html">OgreGLHardwareVertexBuffer.h</a>&gt;</code>
14<p>
15<p>Inheritance diagram for Ogre::GLHardwareVertexBuffer:
16<p><center><img src="classOgre_1_1GLHardwareVertexBuffer.png" usemap="#Ogre::GLHardwareVertexBuffer_map" border="0" alt=""></center>
17<map name="Ogre::GLHardwareVertexBuffer_map">
18<area href="classOgre_1_1HardwareVertexBuffer.html" alt="Ogre::HardwareVertexBuffer" shape="rect" coords="0,56,191,80">
19<area href="classOgre_1_1HardwareBuffer.html" alt="Ogre::HardwareBuffer" shape="rect" coords="0,0,191,24">
20</map>
21<a href="classOgre_1_1GLHardwareVertexBuffer-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
22<tr><td></td></tr>
23<tr><td colspan=2><br><h2>Public Types</h2></td></tr>
24<tr><td class="memItemLeft" nowrap align=right valign=top>enum &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11">Usage</a> { <br>
25&nbsp;&nbsp;<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw0">HBU_STATIC</a> =  1,
26<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw1">HBU_DYNAMIC</a> =  2,
27<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw2">HBU_WRITE_ONLY</a> =  4,
28<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw3">HBU_DISCARDABLE</a> =  8,
29<br>
30&nbsp;&nbsp;<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw4">HBU_STATIC_WRITE_ONLY</a> =  5,
31<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw5">HBU_DYNAMIC_WRITE_ONLY</a> =  6,
32<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw6">HBU_DYNAMIC_WRITE_ONLY_DISCARDABLE</a> =  14
33<br>
34 }</td></tr>
35
36<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Enums describing buffer usage; not mutually exclusive.  <a href="#Ogre_1_1HardwareVertexBufferw11">More...</a><br><br></td></tr>
37<tr><td class="memItemLeft" nowrap align=right valign=top>enum &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a> { <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12Ogre_1_1HardwareVertexBufferw7">HBL_NORMAL</a>,
38<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12Ogre_1_1HardwareVertexBufferw8">HBL_DISCARD</a>,
39<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12Ogre_1_1HardwareVertexBufferw9">HBL_READ_ONLY</a>,
40<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12Ogre_1_1HardwareVertexBufferw10">HBL_NO_OVERWRITE</a>
41 }</td></tr>
42
43<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locking options.  <a href="#Ogre_1_1HardwareVertexBufferw12">More...</a><br><br></td></tr>
44<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
45<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLHardwareVertexBuffer.html#Ogre_1_1GLHardwareVertexBuffera0">GLHardwareVertexBuffer</a> (size_t vertexSize, size_t numVertices, <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11">HardwareBuffer::Usage</a> usage, bool useShadowBuffer)</td></tr>
46
47<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLHardwareVertexBuffer.html#Ogre_1_1GLHardwareVertexBuffera1">~GLHardwareVertexBuffer</a> ()</td></tr>
48
49<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLHardwareVertexBuffer.html#Ogre_1_1GLHardwareVertexBuffera2">readData</a> (size_t offset, size_t length, void *pDest)</td></tr>
50
51<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See <a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a>.  <a href="#Ogre_1_1GLHardwareVertexBuffera2"></a><br><br></td></tr>
52<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLHardwareVertexBuffer.html#Ogre_1_1GLHardwareVertexBuffera3">writeData</a> (size_t offset, size_t length, const void *pSource, bool discardWholeBuffer=false)</td></tr>
53
54<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See <a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a>.  <a href="#Ogre_1_1GLHardwareVertexBuffera3"></a><br><br></td></tr>
55<tr><td class="memItemLeft" nowrap align=right valign=top>GLuint&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLHardwareVertexBuffer.html#Ogre_1_1GLHardwareVertexBuffera4">getGLBufferId</a> (void) const </td></tr>
56
57<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareVertexBuffer.html#Ogre_1_1HardwareVertexBuffera2">getVertexSize</a> (void) const </td></tr>
58
59<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the size in bytes of a single vertex in this buffer.  <a href="#Ogre_1_1HardwareVertexBuffera2"></a><br><br></td></tr>
60<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareVertexBuffer.html#Ogre_1_1HardwareVertexBuffera3">getNumVertices</a> (void) const </td></tr>
61
62<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the number of vertices in this buffer.  <a href="#Ogre_1_1HardwareVertexBuffera3"></a><br><br></td></tr>
63<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera4">lock</a> (size_t offset, size_t length, <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a> options)</td></tr>
64
65<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Lock the buffer for (potentially) reading / writing.  <a href="#Ogre_1_1HardwareVertexBuffera4"></a><br><br></td></tr>
66<tr><td class="memItemLeft" nowrap align=right valign=top>void *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera5">lock</a> (<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a> options)</td></tr>
67
68<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Lock the entire buffer for (potentially) reading / writing.  <a href="#Ogre_1_1HardwareVertexBuffera5"></a><br><br></td></tr>
69<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera6">unlock</a> (void)</td></tr>
70
71<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Releases the lock on this buffer.  <a href="#Ogre_1_1HardwareVertexBuffera6"></a><br><br></td></tr>
72<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera9">copyData</a> (<a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a> &amp;srcBuffer, size_t srcOffset, size_t dstOffset, size_t length, bool discardWholeBuffer=false)</td></tr>
73
74<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy data from another buffer into this one.  <a href="#Ogre_1_1HardwareVertexBuffera9"></a><br><br></td></tr>
75<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera10">_updateFromShadow</a> (void)</td></tr>
76
77<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Updates the real buffer from the shadow buffer, if required.  <a href="#Ogre_1_1HardwareVertexBuffera10"></a><br><br></td></tr>
78<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera11">getSizeInBytes</a> (void) const </td></tr>
79
80<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the size of this buffer in bytes.  <a href="#Ogre_1_1HardwareVertexBuffera11"></a><br><br></td></tr>
81<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11">Usage</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera12">getUsage</a> (void) const </td></tr>
82
83<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the Usage flags with which this buffer was created.  <a href="#Ogre_1_1HardwareVertexBuffera12"></a><br><br></td></tr>
84<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera13">isSystemMemory</a> (void) const </td></tr>
85
86<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns whether this buffer is held in system memory.  <a href="#Ogre_1_1HardwareVertexBuffera13"></a><br><br></td></tr>
87<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera14">hasShadowBuffer</a> (void) const </td></tr>
88
89<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns whether this buffer has a system memory shadow for quicker reading.  <a href="#Ogre_1_1HardwareVertexBuffera14"></a><br><br></td></tr>
90<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera15">isLocked</a> (void) const </td></tr>
91
92<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns whether or not this buffer is currently locked.  <a href="#Ogre_1_1HardwareVertexBuffera15"></a><br><br></td></tr>
93<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera16">suppressHardwareUpdate</a> (bool suppress)</td></tr>
94
95<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classOgre_1_1Pass.html">Pass</a> true to suppress hardware upload of shadow buffer changes.  <a href="#Ogre_1_1HardwareVertexBuffera16"></a><br><br></td></tr>
96<tr><td colspan=2><br><h2>Protected Member Functions</h2></td></tr>
97<tr><td class="memItemLeft" nowrap align=right valign=top>void *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLHardwareVertexBuffer.html#Ogre_1_1GLHardwareVertexBufferb0">lockImpl</a> (size_t offset, size_t length, <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a> options)</td></tr>
98
99<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See <a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a>.  <a href="#Ogre_1_1GLHardwareVertexBufferb0"></a><br><br></td></tr>
100<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLHardwareVertexBuffer.html#Ogre_1_1GLHardwareVertexBufferb1">unlockImpl</a> (void)</td></tr>
101
102<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See <a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a>.  <a href="#Ogre_1_1GLHardwareVertexBufferb1"></a><br><br></td></tr>
103<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
104<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareVertexBuffer.html#Ogre_1_1HardwareVertexBufferp0">mNumVertices</a></td></tr>
105
106<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareVertexBuffer.html#Ogre_1_1HardwareVertexBufferp1">mVertexSize</a></td></tr>
107
108<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp2">mSizeInBytes</a></td></tr>
109
110<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11">Usage</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp3">mUsage</a></td></tr>
111
112<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp4">mIsLocked</a></td></tr>
113
114<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp5">mLockStart</a></td></tr>
115
116<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp6">mLockSize</a></td></tr>
117
118<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp7">mSystemMemory</a></td></tr>
119
120<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp8">mUseShadowBuffer</a></td></tr>
121
122<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp9">mpShadowBuffer</a></td></tr>
123
124<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp10">mShadowUpdated</a></td></tr>
125
126<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp11">mSuppressHardwareUpdate</a></td></tr>
127
128<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
129<tr><td class="memItemLeft" nowrap align=right valign=top>GLuint&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLHardwareVertexBuffer.html#Ogre_1_1GLHardwareVertexBufferr0">mBufferId</a></td></tr>
130
131</table>
132<hr><a name="_details"></a><h2>Detailed Description</h2>
133Specialisation of <a class="el" href="classOgre_1_1HardwareVertexBuffer.html">HardwareVertexBuffer</a> for OpenGL.
134<p>
135
136<p>
137Definition at line <a class="el" href="OgreGLHardwareVertexBuffer_8h-source.html#l00034">34</a> of file <a class="el" href="OgreGLHardwareVertexBuffer_8h-source.html">OgreGLHardwareVertexBuffer.h</a>.<hr><h2>Member Enumeration Documentation</h2>
138<a class="anchor" name="Ogre_1_1HardwareVertexBufferw12" doxytag="Ogre::GLHardwareVertexBuffer::LockOptions" ></a><p>
139<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
140  <tr>
141    <td class="mdRow">
142      <table cellpadding="0" cellspacing="0" border="0">
143        <tr>
144          <td class="md" nowrap valign="top"> enum <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">Ogre::HardwareBuffer::LockOptions</a><code> [inherited]</code>
145      </table>
146    </td>
147  </tr>
148</table>
149<table cellspacing=5 cellpadding=0 border=0>
150  <tr>
151    <td>
152      &nbsp;
153    </td>
154    <td>
155
156<p>
157Locking options.
158<p>
159<dl compact><dt><b>Enumeration values: </b></dt><dd>
160<table border=0 cellspacing=2 cellpadding=0>
161<tr><td valign=top><em><a class="anchor" name="Ogre_1_1HardwareVertexBufferw12Ogre_1_1HardwareVertexBufferw7" doxytag="HBL_NORMAL" ></a>HBL_NORMAL</em>&nbsp;</td><td>
162Normal mode, ie allows read/write and contents are preserved. </td></tr>
163<tr><td valign=top><em><a class="anchor" name="Ogre_1_1HardwareVertexBufferw12Ogre_1_1HardwareVertexBufferw8" doxytag="HBL_DISCARD" ></a>HBL_DISCARD</em>&nbsp;</td><td>
164Discards the <em>entire</em> buffer while locking; this allows optimisation to be performed because synchronisation issues are relaxed.
165<p>
166Only allowed on buffers created with the HBU_DYNAMIC flag.</td></tr>
167<tr><td valign=top><em><a class="anchor" name="Ogre_1_1HardwareVertexBufferw12Ogre_1_1HardwareVertexBufferw9" doxytag="HBL_READ_ONLY" ></a>HBL_READ_ONLY</em>&nbsp;</td><td>
168Lock the buffer for reading only.
169<p>
170Not allowed in buffers which are created with HBU_WRITE_ONLY. Mandatory on statuc buffers, ie those created without the HBU_DYNAMIC flag.</td></tr>
171<tr><td valign=top><em><a class="anchor" name="Ogre_1_1HardwareVertexBufferw12Ogre_1_1HardwareVertexBufferw10" doxytag="HBL_NO_OVERWRITE" ></a>HBL_NO_OVERWRITE</em>&nbsp;</td><td>
172As HBL_NORMAL, except the application guarantees not to overwrite any region of the buffer which has already been used in this frame, can allow some optimisation on some APIs. </td></tr>
173</table>
174</dl>
175
176<p>
177Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00111">111</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
178  </tr>
179</table>
180<a class="anchor" name="Ogre_1_1HardwareVertexBufferw11" doxytag="Ogre::GLHardwareVertexBuffer::Usage" ></a><p>
181<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
182  <tr>
183    <td class="mdRow">
184      <table cellpadding="0" cellspacing="0" border="0">
185        <tr>
186          <td class="md" nowrap valign="top"> enum <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11">Ogre::HardwareBuffer::Usage</a><code> [inherited]</code>
187      </table>
188    </td>
189  </tr>
190</table>
191<table cellspacing=5 cellpadding=0 border=0>
192  <tr>
193    <td>
194      &nbsp;
195    </td>
196    <td>
197
198<p>
199Enums describing buffer usage; not mutually exclusive.
200<p>
201<dl compact><dt><b>Enumeration values: </b></dt><dd>
202<table border=0 cellspacing=2 cellpadding=0>
203<tr><td valign=top><em><a class="anchor" name="Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw0" doxytag="HBU_STATIC" ></a>HBU_STATIC</em>&nbsp;</td><td>
204Static buffer which the application rarely modifies once created.
205<p>
206Modifying the contents of this buffer will involve a performance hit. </td></tr>
207<tr><td valign=top><em><a class="anchor" name="Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw1" doxytag="HBU_DYNAMIC" ></a>HBU_DYNAMIC</em>&nbsp;</td><td>
208Indicates the application would like to modify this buffer with the CPU fairly often.
209<p>
210Buffers created with this flag will typically end up in AGP memory rather than video memory.</td></tr>
211<tr><td valign=top><em><a class="anchor" name="Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw2" doxytag="HBU_WRITE_ONLY" ></a>HBU_WRITE_ONLY</em>&nbsp;</td><td>
212Indicates the application will never read the contents of the buffer back, it will only ever write data.
213<p>
214Locking a buffer with this flag will ALWAYS return a pointer to new, blank memory rather than the memory associated with the contents of the buffer; this avoids DMA stalls because you can write to a new memory area while the previous one is being used.</td></tr>
215<tr><td valign=top><em><a class="anchor" name="Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw3" doxytag="HBU_DISCARDABLE" ></a>HBU_DISCARDABLE</em>&nbsp;</td><td>
216Indicates that the application will be refilling the contents of the buffer regularly (not just updating, but generating the contents from scratch), and therefore does not mind if the contents of the buffer are lost somehow and need to be recreated.
217<p>
218This allows and additional level of optimisation on the buffer. This option only really makes sense when combined with HBU_DYNAMIC_WRITE_ONLY. </td></tr>
219<tr><td valign=top><em><a class="anchor" name="Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw4" doxytag="HBU_STATIC_WRITE_ONLY" ></a>HBU_STATIC_WRITE_ONLY</em>&nbsp;</td><td>
220Combination of HBU_STATIC and HBU_WRITE_ONLY. </td></tr>
221<tr><td valign=top><em><a class="anchor" name="Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw5" doxytag="HBU_DYNAMIC_WRITE_ONLY" ></a>HBU_DYNAMIC_WRITE_ONLY</em>&nbsp;</td><td>
222Combination of HBU_DYNAMIC and HBU_WRITE_ONLY.
223<p>
224If you use this, strongly consider using HBU_DYNAMIC_WRITE_ONLY_DISCARDABLE instead if you update the entire contents of the buffer very regularly. </td></tr>
225<tr><td valign=top><em><a class="anchor" name="Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw6" doxytag="HBU_DYNAMIC_WRITE_ONLY_DISCARDABLE" ></a>HBU_DYNAMIC_WRITE_ONLY_DISCARDABLE</em>&nbsp;</td><td>
226Combination of HBU_DYNAMIC, HBU_WRITE_ONLY and HBU_DISCARDABLE. </td></tr>
227</table>
228</dl>
229
230<p>
231Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00069">69</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
232  </tr>
233</table>
234<hr><h2>Constructor &amp; Destructor Documentation</h2>
235<a class="anchor" name="Ogre_1_1GLHardwareVertexBuffera0" doxytag="Ogre::GLHardwareVertexBuffer::GLHardwareVertexBuffer" ></a><p>
236<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
237  <tr>
238    <td class="mdRow">
239      <table cellpadding="0" cellspacing="0" border="0">
240        <tr>
241          <td class="md" nowrap valign="top"> Ogre::GLHardwareVertexBuffer::GLHardwareVertexBuffer </td>
242          <td class="md" valign="top">(&nbsp;</td>
243          <td class="md" nowrap valign="top">size_t&nbsp;</td>
244          <td class="mdname" nowrap> <em>vertexSize</em>, </td>
245        </tr>
246        <tr>
247          <td class="md" nowrap align="right"></td>
248          <td></td>
249          <td class="md" nowrap>size_t&nbsp;</td>
250          <td class="mdname" nowrap> <em>numVertices</em>, </td>
251        </tr>
252        <tr>
253          <td class="md" nowrap align="right"></td>
254          <td></td>
255          <td class="md" nowrap><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11">HardwareBuffer::Usage</a>&nbsp;</td>
256          <td class="mdname" nowrap> <em>usage</em>, </td>
257        </tr>
258        <tr>
259          <td class="md" nowrap align="right"></td>
260          <td></td>
261          <td class="md" nowrap>bool&nbsp;</td>
262          <td class="mdname" nowrap> <em>useShadowBuffer</em></td>
263        </tr>
264        <tr>
265          <td></td>
266          <td class="md">)&nbsp;</td>
267          <td class="md" colspan="2"></td>
268        </tr>
269
270      </table>
271    </td>
272  </tr>
273</table>
274<table cellspacing=5 cellpadding=0 border=0>
275  <tr>
276    <td>
277      &nbsp;
278    </td>
279    <td>
280
281<p>
282    </td>
283  </tr>
284</table>
285<a class="anchor" name="Ogre_1_1GLHardwareVertexBuffera1" doxytag="Ogre::GLHardwareVertexBuffer::~GLHardwareVertexBuffer" ></a><p>
286<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
287  <tr>
288    <td class="mdRow">
289      <table cellpadding="0" cellspacing="0" border="0">
290        <tr>
291          <td class="md" nowrap valign="top"> Ogre::GLHardwareVertexBuffer::~<a class="el" href="classOgre_1_1GLHardwareVertexBuffer.html">GLHardwareVertexBuffer</a> </td>
292          <td class="md" valign="top">(&nbsp;</td>
293          <td class="mdname1" valign="top" nowrap>          </td>
294          <td class="md" valign="top">&nbsp;)&nbsp;</td>
295          <td class="md" nowrap></td>
296        </tr>
297
298      </table>
299    </td>
300  </tr>
301</table>
302<table cellspacing=5 cellpadding=0 border=0>
303  <tr>
304    <td>
305      &nbsp;
306    </td>
307    <td>
308
309<p>
310    </td>
311  </tr>
312</table>
313<hr><h2>Member Function Documentation</h2>
314<a class="anchor" name="Ogre_1_1HardwareVertexBuffera10" doxytag="Ogre::GLHardwareVertexBuffer::_updateFromShadow" ></a><p>
315<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
316  <tr>
317    <td class="mdRow">
318      <table cellpadding="0" cellspacing="0" border="0">
319        <tr>
320          <td class="md" nowrap valign="top"> virtual void Ogre::HardwareBuffer::_updateFromShadow </td>
321          <td class="md" valign="top">(&nbsp;</td>
322          <td class="md" nowrap valign="top">void&nbsp;</td>
323          <td class="mdname1" valign="top" nowrap>          </td>
324          <td class="md" valign="top">&nbsp;)&nbsp;</td>
325          <td class="md" nowrap><code> [virtual, inherited]</code></td>
326        </tr>
327
328      </table>
329    </td>
330  </tr>
331</table>
332<table cellspacing=5 cellpadding=0 border=0>
333  <tr>
334    <td>
335      &nbsp;
336    </td>
337    <td>
338
339<p>
340Updates the real buffer from the shadow buffer, if required.
341<p>
342
343<p>
344Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00275">275</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
345  </tr>
346</table>
347<a class="anchor" name="Ogre_1_1HardwareVertexBuffera9" doxytag="Ogre::GLHardwareVertexBuffer::copyData" ></a><p>
348<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
349  <tr>
350    <td class="mdRow">
351      <table cellpadding="0" cellspacing="0" border="0">
352        <tr>
353          <td class="md" nowrap valign="top"> virtual void Ogre::HardwareBuffer::copyData </td>
354          <td class="md" valign="top">(&nbsp;</td>
355          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a> &amp;&nbsp;</td>
356          <td class="mdname" nowrap> <em>srcBuffer</em>, </td>
357        </tr>
358        <tr>
359          <td class="md" nowrap align="right"></td>
360          <td></td>
361          <td class="md" nowrap>size_t&nbsp;</td>
362          <td class="mdname" nowrap> <em>srcOffset</em>, </td>
363        </tr>
364        <tr>
365          <td class="md" nowrap align="right"></td>
366          <td></td>
367          <td class="md" nowrap>size_t&nbsp;</td>
368          <td class="mdname" nowrap> <em>dstOffset</em>, </td>
369        </tr>
370        <tr>
371          <td class="md" nowrap align="right"></td>
372          <td></td>
373          <td class="md" nowrap>size_t&nbsp;</td>
374          <td class="mdname" nowrap> <em>length</em>, </td>
375        </tr>
376        <tr>
377          <td class="md" nowrap align="right"></td>
378          <td></td>
379          <td class="md" nowrap>bool&nbsp;</td>
380          <td class="mdname" nowrap> <em>discardWholeBuffer</em> = false</td>
381        </tr>
382        <tr>
383          <td></td>
384          <td class="md">)&nbsp;</td>
385          <td class="md" colspan="2"><code> [virtual, inherited]</code></td>
386        </tr>
387
388      </table>
389    </td>
390  </tr>
391</table>
392<table cellspacing=5 cellpadding=0 border=0>
393  <tr>
394    <td>
395      &nbsp;
396    </td>
397    <td>
398
399<p>
400Copy data from another buffer into this one.
401<p>
402<dl compact><dt><b>Remarks:</b></dt><dd>Note that the source buffer must not be created with the usage HBU_WRITE_ONLY otherwise this will fail. </dd></dl>
403<dl compact><dt><b>Parameters:</b></dt><dd>
404  <table border="0" cellspacing="2" cellpadding="0">
405    <tr><td valign=top><em>srcBuffer</em>&nbsp;</td><td>The buffer from which to read the copied data </td></tr>
406    <tr><td valign=top><em>srcOffset</em>&nbsp;</td><td>Offset in the source buffer at which to start reading </td></tr>
407    <tr><td valign=top><em>dstOffset</em>&nbsp;</td><td>Offset in the destination buffer to start writing </td></tr>
408    <tr><td valign=top><em>length</em>&nbsp;</td><td>Length of the data to copy, in bytes. </td></tr>
409    <tr><td valign=top><em>discardWholeBuffer</em>&nbsp;</td><td>If true, will discard the entire contents of this buffer before copying</td></tr>
410  </table>
411</dl>
412
413<p>
414Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00265">265</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.
415<p>
416References <a class="el" href="OgreHardwareBuffer_8h-source.html#l00171">Ogre::HardwareBuffer::lock()</a>, and <a class="el" href="OgreHardwareBuffer_8h-source.html#l00217">Ogre::HardwareBuffer::unlock()</a>.    </td>
417  </tr>
418</table>
419<a class="anchor" name="Ogre_1_1GLHardwareVertexBuffera4" doxytag="Ogre::GLHardwareVertexBuffer::getGLBufferId" ></a><p>
420<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
421  <tr>
422    <td class="mdRow">
423      <table cellpadding="0" cellspacing="0" border="0">
424        <tr>
425          <td class="md" nowrap valign="top"> GLuint Ogre::GLHardwareVertexBuffer::getGLBufferId </td>
426          <td class="md" valign="top">(&nbsp;</td>
427          <td class="md" nowrap valign="top">void&nbsp;</td>
428          <td class="mdname1" valign="top" nowrap>          </td>
429          <td class="md" valign="top">&nbsp;)&nbsp;</td>
430          <td class="md" nowrap> const</td>
431        </tr>
432
433      </table>
434    </td>
435  </tr>
436</table>
437<table cellspacing=5 cellpadding=0 border=0>
438  <tr>
439    <td>
440      &nbsp;
441    </td>
442    <td>
443
444<p>
445
446<p>
447Definition at line <a class="el" href="OgreGLHardwareVertexBuffer_8h-source.html#l00054">54</a> of file <a class="el" href="OgreGLHardwareVertexBuffer_8h-source.html">OgreGLHardwareVertexBuffer.h</a>.    </td>
448  </tr>
449</table>
450<a class="anchor" name="Ogre_1_1HardwareVertexBuffera3" doxytag="Ogre::GLHardwareVertexBuffer::getNumVertices" ></a><p>
451<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
452  <tr>
453    <td class="mdRow">
454      <table cellpadding="0" cellspacing="0" border="0">
455        <tr>
456          <td class="md" nowrap valign="top"> size_t Ogre::HardwareVertexBuffer::getNumVertices </td>
457          <td class="md" valign="top">(&nbsp;</td>
458          <td class="md" nowrap valign="top">void&nbsp;</td>
459          <td class="mdname1" valign="top" nowrap>          </td>
460          <td class="md" valign="top">&nbsp;)&nbsp;</td>
461          <td class="md" nowrap> const<code> [inherited]</code></td>
462        </tr>
463
464      </table>
465    </td>
466  </tr>
467</table>
468<table cellspacing=5 cellpadding=0 border=0>
469  <tr>
470    <td>
471      &nbsp;
472    </td>
473    <td>
474
475<p>
476Get the number of vertices in this buffer.
477<p>
478
479<p>
480Definition at line <a class="el" href="OgreHardwareVertexBuffer_8h-source.html#l00051">51</a> of file <a class="el" href="OgreHardwareVertexBuffer_8h-source.html">OgreHardwareVertexBuffer.h</a>.    </td>
481  </tr>
482</table>
483<a class="anchor" name="Ogre_1_1HardwareVertexBuffera11" doxytag="Ogre::GLHardwareVertexBuffer::getSizeInBytes" ></a><p>
484<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
485  <tr>
486    <td class="mdRow">
487      <table cellpadding="0" cellspacing="0" border="0">
488        <tr>
489          <td class="md" nowrap valign="top"> size_t Ogre::HardwareBuffer::getSizeInBytes </td>
490          <td class="md" valign="top">(&nbsp;</td>
491          <td class="md" nowrap valign="top">void&nbsp;</td>
492          <td class="mdname1" valign="top" nowrap>          </td>
493          <td class="md" valign="top">&nbsp;)&nbsp;</td>
494          <td class="md" nowrap> const<code> [inherited]</code></td>
495        </tr>
496
497      </table>
498    </td>
499  </tr>
500</table>
501<table cellspacing=5 cellpadding=0 border=0>
502  <tr>
503    <td>
504      &nbsp;
505    </td>
506    <td>
507
508<p>
509Returns the size of this buffer in bytes.
510<p>
511
512<p>
513Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00300">300</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
514  </tr>
515</table>
516<a class="anchor" name="Ogre_1_1HardwareVertexBuffera12" doxytag="Ogre::GLHardwareVertexBuffer::getUsage" ></a><p>
517<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
518  <tr>
519    <td class="mdRow">
520      <table cellpadding="0" cellspacing="0" border="0">
521        <tr>
522          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11">Usage</a> Ogre::HardwareBuffer::getUsage </td>
523          <td class="md" valign="top">(&nbsp;</td>
524          <td class="md" nowrap valign="top">void&nbsp;</td>
525          <td class="mdname1" valign="top" nowrap>          </td>
526          <td class="md" valign="top">&nbsp;)&nbsp;</td>
527          <td class="md" nowrap> const<code> [inherited]</code></td>
528        </tr>
529
530      </table>
531    </td>
532  </tr>
533</table>
534<table cellspacing=5 cellpadding=0 border=0>
535  <tr>
536    <td>
537      &nbsp;
538    </td>
539    <td>
540
541<p>
542Returns the Usage flags with which this buffer was created.
543<p>
544
545<p>
546Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00302">302</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
547  </tr>
548</table>
549<a class="anchor" name="Ogre_1_1HardwareVertexBuffera2" doxytag="Ogre::GLHardwareVertexBuffer::getVertexSize" ></a><p>
550<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
551  <tr>
552    <td class="mdRow">
553      <table cellpadding="0" cellspacing="0" border="0">
554        <tr>
555          <td class="md" nowrap valign="top"> size_t Ogre::HardwareVertexBuffer::getVertexSize </td>
556          <td class="md" valign="top">(&nbsp;</td>
557          <td class="md" nowrap valign="top">void&nbsp;</td>
558          <td class="mdname1" valign="top" nowrap>          </td>
559          <td class="md" valign="top">&nbsp;)&nbsp;</td>
560          <td class="md" nowrap> const<code> [inherited]</code></td>
561        </tr>
562
563      </table>
564    </td>
565  </tr>
566</table>
567<table cellspacing=5 cellpadding=0 border=0>
568  <tr>
569    <td>
570      &nbsp;
571    </td>
572    <td>
573
574<p>
575Gets the size in bytes of a single vertex in this buffer.
576<p>
577
578<p>
579Definition at line <a class="el" href="OgreHardwareVertexBuffer_8h-source.html#l00049">49</a> of file <a class="el" href="OgreHardwareVertexBuffer_8h-source.html">OgreHardwareVertexBuffer.h</a>.    </td>
580  </tr>
581</table>
582<a class="anchor" name="Ogre_1_1HardwareVertexBuffera14" doxytag="Ogre::GLHardwareVertexBuffer::hasShadowBuffer" ></a><p>
583<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
584  <tr>
585    <td class="mdRow">
586      <table cellpadding="0" cellspacing="0" border="0">
587        <tr>
588          <td class="md" nowrap valign="top"> bool Ogre::HardwareBuffer::hasShadowBuffer </td>
589          <td class="md" valign="top">(&nbsp;</td>
590          <td class="md" nowrap valign="top">void&nbsp;</td>
591          <td class="mdname1" valign="top" nowrap>          </td>
592          <td class="md" valign="top">&nbsp;)&nbsp;</td>
593          <td class="md" nowrap> const<code> [inherited]</code></td>
594        </tr>
595
596      </table>
597    </td>
598  </tr>
599</table>
600<table cellspacing=5 cellpadding=0 border=0>
601  <tr>
602    <td>
603      &nbsp;
604    </td>
605    <td>
606
607<p>
608Returns whether this buffer has a system memory shadow for quicker reading.
609<p>
610
611<p>
612Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00306">306</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
613  </tr>
614</table>
615<a class="anchor" name="Ogre_1_1HardwareVertexBuffera15" doxytag="Ogre::GLHardwareVertexBuffer::isLocked" ></a><p>
616<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
617  <tr>
618    <td class="mdRow">
619      <table cellpadding="0" cellspacing="0" border="0">
620        <tr>
621          <td class="md" nowrap valign="top"> bool Ogre::HardwareBuffer::isLocked </td>
622          <td class="md" valign="top">(&nbsp;</td>
623          <td class="md" nowrap valign="top">void&nbsp;</td>
624          <td class="mdname1" valign="top" nowrap>          </td>
625          <td class="md" valign="top">&nbsp;)&nbsp;</td>
626          <td class="md" nowrap> const<code> [inherited]</code></td>
627        </tr>
628
629      </table>
630    </td>
631  </tr>
632</table>
633<table cellspacing=5 cellpadding=0 border=0>
634  <tr>
635    <td>
636      &nbsp;
637    </td>
638    <td>
639
640<p>
641Returns whether or not this buffer is currently locked.
642<p>
643
644<p>
645Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00308">308</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
646  </tr>
647</table>
648<a class="anchor" name="Ogre_1_1HardwareVertexBuffera13" doxytag="Ogre::GLHardwareVertexBuffer::isSystemMemory" ></a><p>
649<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
650  <tr>
651    <td class="mdRow">
652      <table cellpadding="0" cellspacing="0" border="0">
653        <tr>
654          <td class="md" nowrap valign="top"> bool Ogre::HardwareBuffer::isSystemMemory </td>
655          <td class="md" valign="top">(&nbsp;</td>
656          <td class="md" nowrap valign="top">void&nbsp;</td>
657          <td class="mdname1" valign="top" nowrap>          </td>
658          <td class="md" valign="top">&nbsp;)&nbsp;</td>
659          <td class="md" nowrap> const<code> [inherited]</code></td>
660        </tr>
661
662      </table>
663    </td>
664  </tr>
665</table>
666<table cellspacing=5 cellpadding=0 border=0>
667  <tr>
668    <td>
669      &nbsp;
670    </td>
671    <td>
672
673<p>
674Returns whether this buffer is held in system memory.
675<p>
676
677<p>
678Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00304">304</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
679  </tr>
680</table>
681<a class="anchor" name="Ogre_1_1HardwareVertexBuffera5" doxytag="Ogre::GLHardwareVertexBuffer::lock" ></a><p>
682<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
683  <tr>
684    <td class="mdRow">
685      <table cellpadding="0" cellspacing="0" border="0">
686        <tr>
687          <td class="md" nowrap valign="top"> void* Ogre::HardwareBuffer::lock </td>
688          <td class="md" valign="top">(&nbsp;</td>
689          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a>&nbsp;</td>
690          <td class="mdname1" valign="top" nowrap> <em>options</em>          </td>
691          <td class="md" valign="top">&nbsp;)&nbsp;</td>
692          <td class="md" nowrap><code> [inherited]</code></td>
693        </tr>
694
695      </table>
696    </td>
697  </tr>
698</table>
699<table cellspacing=5 cellpadding=0 border=0>
700  <tr>
701    <td>
702      &nbsp;
703    </td>
704    <td>
705
706<p>
707Lock the entire buffer for (potentially) reading / writing.
708<p>
709<dl compact><dt><b>Parameters:</b></dt><dd>
710  <table border="0" cellspacing="2" cellpadding="0">
711    <tr><td valign=top><em>options</em>&nbsp;</td><td>Locking options </td></tr>
712  </table>
713</dl>
714<dl compact><dt><b>Returns:</b></dt><dd>Pointer to the locked memory </dd></dl>
715
716<p>
717Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00201">201</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
718  </tr>
719</table>
720<a class="anchor" name="Ogre_1_1HardwareVertexBuffera4" doxytag="Ogre::GLHardwareVertexBuffer::lock" ></a><p>
721<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
722  <tr>
723    <td class="mdRow">
724      <table cellpadding="0" cellspacing="0" border="0">
725        <tr>
726          <td class="md" nowrap valign="top"> virtual void* Ogre::HardwareBuffer::lock </td>
727          <td class="md" valign="top">(&nbsp;</td>
728          <td class="md" nowrap valign="top">size_t&nbsp;</td>
729          <td class="mdname" nowrap> <em>offset</em>, </td>
730        </tr>
731        <tr>
732          <td class="md" nowrap align="right"></td>
733          <td></td>
734          <td class="md" nowrap>size_t&nbsp;</td>
735          <td class="mdname" nowrap> <em>length</em>, </td>
736        </tr>
737        <tr>
738          <td class="md" nowrap align="right"></td>
739          <td></td>
740          <td class="md" nowrap><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a>&nbsp;</td>
741          <td class="mdname" nowrap> <em>options</em></td>
742        </tr>
743        <tr>
744          <td></td>
745          <td class="md">)&nbsp;</td>
746          <td class="md" colspan="2"><code> [virtual, inherited]</code></td>
747        </tr>
748
749      </table>
750    </td>
751  </tr>
752</table>
753<table cellspacing=5 cellpadding=0 border=0>
754  <tr>
755    <td>
756      &nbsp;
757    </td>
758    <td>
759
760<p>
761Lock the buffer for (potentially) reading / writing.
762<p>
763<dl compact><dt><b>Parameters:</b></dt><dd>
764  <table border="0" cellspacing="2" cellpadding="0">
765    <tr><td valign=top><em>offset</em>&nbsp;</td><td>The byte offset from the start of the buffer to lock </td></tr>
766    <tr><td valign=top><em>length</em>&nbsp;</td><td>The size of the area to lock, in bytes </td></tr>
767    <tr><td valign=top><em>options</em>&nbsp;</td><td>Locking options </td></tr>
768  </table>
769</dl>
770<dl compact><dt><b>Returns:</b></dt><dd>Pointer to the locked memory</dd></dl>
771
772<p>
773Reimplemented in <a class="el" href="classOgre_1_1DefaultHardwareVertexBuffer.html#Ogre_1_1DefaultHardwareVertexBuffera4">Ogre::DefaultHardwareVertexBuffer</a>, <a class="el" href="classOgre_1_1DefaultHardwareIndexBuffer.html#Ogre_1_1DefaultHardwareIndexBuffera4">Ogre::DefaultHardwareIndexBuffer</a>, <a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera3">Ogre::HardwarePixelBuffer</a>, <a class="el" href="classOgre_1_1GLDefaultHardwareVertexBuffer.html#Ogre_1_1GLDefaultHardwareVertexBuffera4">Ogre::GLDefaultHardwareVertexBuffer</a>, and <a class="el" href="classOgre_1_1GLDefaultHardwareIndexBuffer.html#Ogre_1_1GLDefaultHardwareIndexBuffera4">Ogre::GLDefaultHardwareIndexBuffer</a>.
774<p>
775Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00171">171</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.
776<p>
777Referenced by <a class="el" href="OgreHardwareBuffer_8h-source.html#l00265">Ogre::HardwareBuffer::copyData()</a>.    </td>
778  </tr>
779</table>
780<a class="anchor" name="Ogre_1_1GLHardwareVertexBufferb0" doxytag="Ogre::GLHardwareVertexBuffer::lockImpl" ></a><p>
781<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
782  <tr>
783    <td class="mdRow">
784      <table cellpadding="0" cellspacing="0" border="0">
785        <tr>
786          <td class="md" nowrap valign="top"> void* Ogre::GLHardwareVertexBuffer::lockImpl </td>
787          <td class="md" valign="top">(&nbsp;</td>
788          <td class="md" nowrap valign="top">size_t&nbsp;</td>
789          <td class="mdname" nowrap> <em>offset</em>, </td>
790        </tr>
791        <tr>
792          <td class="md" nowrap align="right"></td>
793          <td></td>
794          <td class="md" nowrap>size_t&nbsp;</td>
795          <td class="mdname" nowrap> <em>length</em>, </td>
796        </tr>
797        <tr>
798          <td class="md" nowrap align="right"></td>
799          <td></td>
800          <td class="md" nowrap><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a>&nbsp;</td>
801          <td class="mdname" nowrap> <em>options</em></td>
802        </tr>
803        <tr>
804          <td></td>
805          <td class="md">)&nbsp;</td>
806          <td class="md" colspan="2"><code> [protected, virtual]</code></td>
807        </tr>
808
809      </table>
810    </td>
811  </tr>
812</table>
813<table cellspacing=5 cellpadding=0 border=0>
814  <tr>
815    <td>
816      &nbsp;
817    </td>
818    <td>
819
820<p>
821See <a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a>.
822<p>
823
824<p>
825Implements <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferb0">Ogre::HardwareBuffer</a>.    </td>
826  </tr>
827</table>
828<a class="anchor" name="Ogre_1_1GLHardwareVertexBuffera2" doxytag="Ogre::GLHardwareVertexBuffer::readData" ></a><p>
829<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
830  <tr>
831    <td class="mdRow">
832      <table cellpadding="0" cellspacing="0" border="0">
833        <tr>
834          <td class="md" nowrap valign="top"> void Ogre::GLHardwareVertexBuffer::readData </td>
835          <td class="md" valign="top">(&nbsp;</td>
836          <td class="md" nowrap valign="top">size_t&nbsp;</td>
837          <td class="mdname" nowrap> <em>offset</em>, </td>
838        </tr>
839        <tr>
840          <td class="md" nowrap align="right"></td>
841          <td></td>
842          <td class="md" nowrap>size_t&nbsp;</td>
843          <td class="mdname" nowrap> <em>length</em>, </td>
844        </tr>
845        <tr>
846          <td class="md" nowrap align="right"></td>
847          <td></td>
848          <td class="md" nowrap>void *&nbsp;</td>
849          <td class="mdname" nowrap> <em>pDest</em></td>
850        </tr>
851        <tr>
852          <td></td>
853          <td class="md">)&nbsp;</td>
854          <td class="md" colspan="2"><code> [virtual]</code></td>
855        </tr>
856
857      </table>
858    </td>
859  </tr>
860</table>
861<table cellspacing=5 cellpadding=0 border=0>
862  <tr>
863    <td>
864      &nbsp;
865    </td>
866    <td>
867
868<p>
869See <a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a>.
870<p>
871
872<p>
873Implements <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera7">Ogre::HardwareBuffer</a>.    </td>
874  </tr>
875</table>
876<a class="anchor" name="Ogre_1_1HardwareVertexBuffera16" doxytag="Ogre::GLHardwareVertexBuffer::suppressHardwareUpdate" ></a><p>
877<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
878  <tr>
879    <td class="mdRow">
880      <table cellpadding="0" cellspacing="0" border="0">
881        <tr>
882          <td class="md" nowrap valign="top"> void Ogre::HardwareBuffer::suppressHardwareUpdate </td>
883          <td class="md" valign="top">(&nbsp;</td>
884          <td class="md" nowrap valign="top">bool&nbsp;</td>
885          <td class="mdname1" valign="top" nowrap> <em>suppress</em>          </td>
886          <td class="md" valign="top">&nbsp;)&nbsp;</td>
887          <td class="md" nowrap><code> [inherited]</code></td>
888        </tr>
889
890      </table>
891    </td>
892  </tr>
893</table>
894<table cellspacing=5 cellpadding=0 border=0>
895  <tr>
896    <td>
897      &nbsp;
898    </td>
899    <td>
900
901<p>
902<a class="el" href="classOgre_1_1Pass.html">Pass</a> true to suppress hardware upload of shadow buffer changes.
903<p>
904
905<p>
906Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00312">312</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
907  </tr>
908</table>
909<a class="anchor" name="Ogre_1_1HardwareVertexBuffera6" doxytag="Ogre::GLHardwareVertexBuffer::unlock" ></a><p>
910<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
911  <tr>
912    <td class="mdRow">
913      <table cellpadding="0" cellspacing="0" border="0">
914        <tr>
915          <td class="md" nowrap valign="top"> virtual void Ogre::HardwareBuffer::unlock </td>
916          <td class="md" valign="top">(&nbsp;</td>
917          <td class="md" nowrap valign="top">void&nbsp;</td>
918          <td class="mdname1" valign="top" nowrap>          </td>
919          <td class="md" valign="top">&nbsp;)&nbsp;</td>
920          <td class="md" nowrap><code> [virtual, inherited]</code></td>
921        </tr>
922
923      </table>
924    </td>
925  </tr>
926</table>
927<table cellspacing=5 cellpadding=0 border=0>
928  <tr>
929    <td>
930      &nbsp;
931    </td>
932    <td>
933
934<p>
935Releases the lock on this buffer.
936<p>
937<dl compact><dt><b>Remarks:</b></dt><dd>Locking and unlocking a buffer can, in some rare circumstances such as switching video modes whilst the buffer is locked, corrupt the contents of a buffer. This is pretty rare, but if it occurs, this method will throw an exception, meaning you must re-upload the data. </dd></dl>
938<dl compact><dt><b></b></dt><dd>Note that using the 'read' and 'write' forms of updating the buffer does not suffer from this problem, so if you want to be 100% sure your data will not be lost, use the 'read' and 'write' forms instead. </dd></dl>
939
940<p>
941Reimplemented in <a class="el" href="classOgre_1_1DefaultHardwareVertexBuffer.html#Ogre_1_1DefaultHardwareVertexBuffera5">Ogre::DefaultHardwareVertexBuffer</a>, <a class="el" href="classOgre_1_1DefaultHardwareIndexBuffer.html#Ogre_1_1DefaultHardwareIndexBuffera5">Ogre::DefaultHardwareIndexBuffer</a>, <a class="el" href="classOgre_1_1GLDefaultHardwareVertexBuffer.html#Ogre_1_1GLDefaultHardwareVertexBuffera5">Ogre::GLDefaultHardwareVertexBuffer</a>, and <a class="el" href="classOgre_1_1GLDefaultHardwareIndexBuffer.html#Ogre_1_1GLDefaultHardwareIndexBuffera5">Ogre::GLDefaultHardwareIndexBuffer</a>.
942<p>
943Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00217">217</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.
944<p>
945Referenced by <a class="el" href="OgreHardwareBuffer_8h-source.html#l00265">Ogre::HardwareBuffer::copyData()</a>.    </td>
946  </tr>
947</table>
948<a class="anchor" name="Ogre_1_1GLHardwareVertexBufferb1" doxytag="Ogre::GLHardwareVertexBuffer::unlockImpl" ></a><p>
949<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
950  <tr>
951    <td class="mdRow">
952      <table cellpadding="0" cellspacing="0" border="0">
953        <tr>
954          <td class="md" nowrap valign="top"> void Ogre::GLHardwareVertexBuffer::unlockImpl </td>
955          <td class="md" valign="top">(&nbsp;</td>
956          <td class="md" nowrap valign="top">void&nbsp;</td>
957          <td class="mdname1" valign="top" nowrap>          </td>
958          <td class="md" valign="top">&nbsp;)&nbsp;</td>
959          <td class="md" nowrap><code> [protected, virtual]</code></td>
960        </tr>
961
962      </table>
963    </td>
964  </tr>
965</table>
966<table cellspacing=5 cellpadding=0 border=0>
967  <tr>
968    <td>
969      &nbsp;
970    </td>
971    <td>
972
973<p>
974See <a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a>.
975<p>
976
977<p>
978Implements <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferb1">Ogre::HardwareBuffer</a>.    </td>
979  </tr>
980</table>
981<a class="anchor" name="Ogre_1_1GLHardwareVertexBuffera3" doxytag="Ogre::GLHardwareVertexBuffer::writeData" ></a><p>
982<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
983  <tr>
984    <td class="mdRow">
985      <table cellpadding="0" cellspacing="0" border="0">
986        <tr>
987          <td class="md" nowrap valign="top"> void Ogre::GLHardwareVertexBuffer::writeData </td>
988          <td class="md" valign="top">(&nbsp;</td>
989          <td class="md" nowrap valign="top">size_t&nbsp;</td>
990          <td class="mdname" nowrap> <em>offset</em>, </td>
991        </tr>
992        <tr>
993          <td class="md" nowrap align="right"></td>
994          <td></td>
995          <td class="md" nowrap>size_t&nbsp;</td>
996          <td class="mdname" nowrap> <em>length</em>, </td>
997        </tr>
998        <tr>
999          <td class="md" nowrap align="right"></td>
1000          <td></td>
1001          <td class="md" nowrap>const void *&nbsp;</td>
1002          <td class="mdname" nowrap> <em>pSource</em>, </td>
1003        </tr>
1004        <tr>
1005          <td class="md" nowrap align="right"></td>
1006          <td></td>
1007          <td class="md" nowrap>bool&nbsp;</td>
1008          <td class="mdname" nowrap> <em>discardWholeBuffer</em> = false</td>
1009        </tr>
1010        <tr>
1011          <td></td>
1012          <td class="md">)&nbsp;</td>
1013          <td class="md" colspan="2"><code> [virtual]</code></td>
1014        </tr>
1015
1016      </table>
1017    </td>
1018  </tr>
1019</table>
1020<table cellspacing=5 cellpadding=0 border=0>
1021  <tr>
1022    <td>
1023      &nbsp;
1024    </td>
1025    <td>
1026
1027<p>
1028See <a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a>.
1029<p>
1030
1031<p>
1032Implements <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera8">Ogre::HardwareBuffer</a>.    </td>
1033  </tr>
1034</table>
1035<hr><h2>Member Data Documentation</h2>
1036<a class="anchor" name="Ogre_1_1GLHardwareVertexBufferr0" doxytag="Ogre::GLHardwareVertexBuffer::mBufferId" ></a><p>
1037<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1038  <tr>
1039    <td class="mdRow">
1040      <table cellpadding="0" cellspacing="0" border="0">
1041        <tr>
1042          <td class="md" nowrap valign="top"> GLuint <a class="el" href="classOgre_1_1GLHardwareVertexBuffer.html#Ogre_1_1GLHardwareVertexBufferr0">Ogre::GLHardwareVertexBuffer::mBufferId</a><code> [private]</code>
1043      </table>
1044    </td>
1045  </tr>
1046</table>
1047<table cellspacing=5 cellpadding=0 border=0>
1048  <tr>
1049    <td>
1050      &nbsp;
1051    </td>
1052    <td>
1053
1054<p>
1055
1056<p>
1057Definition at line <a class="el" href="OgreGLHardwareVertexBuffer_8h-source.html#l00037">37</a> of file <a class="el" href="OgreGLHardwareVertexBuffer_8h-source.html">OgreGLHardwareVertexBuffer.h</a>.    </td>
1058  </tr>
1059</table>
1060<a class="anchor" name="Ogre_1_1HardwareVertexBufferp4" doxytag="Ogre::GLHardwareVertexBuffer::mIsLocked" ></a><p>
1061<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1062  <tr>
1063    <td class="mdRow">
1064      <table cellpadding="0" cellspacing="0" border="0">
1065        <tr>
1066          <td class="md" nowrap valign="top"> bool <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp4">Ogre::HardwareBuffer::mIsLocked</a><code> [protected, inherited]</code>
1067      </table>
1068    </td>
1069  </tr>
1070</table>
1071<table cellspacing=5 cellpadding=0 border=0>
1072  <tr>
1073    <td>
1074      &nbsp;
1075    </td>
1076    <td>
1077
1078<p>
1079
1080<p>
1081Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00133">133</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
1082  </tr>
1083</table>
1084<a class="anchor" name="Ogre_1_1HardwareVertexBufferp6" doxytag="Ogre::GLHardwareVertexBuffer::mLockSize" ></a><p>
1085<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1086  <tr>
1087    <td class="mdRow">
1088      <table cellpadding="0" cellspacing="0" border="0">
1089        <tr>
1090          <td class="md" nowrap valign="top"> size_t <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp6">Ogre::HardwareBuffer::mLockSize</a><code> [protected, inherited]</code>
1091      </table>
1092    </td>
1093  </tr>
1094</table>
1095<table cellspacing=5 cellpadding=0 border=0>
1096  <tr>
1097    <td>
1098      &nbsp;
1099    </td>
1100    <td>
1101
1102<p>
1103
1104<p>
1105Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00135">135</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
1106  </tr>
1107</table>
1108<a class="anchor" name="Ogre_1_1HardwareVertexBufferp5" doxytag="Ogre::GLHardwareVertexBuffer::mLockStart" ></a><p>
1109<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1110  <tr>
1111    <td class="mdRow">
1112      <table cellpadding="0" cellspacing="0" border="0">
1113        <tr>
1114          <td class="md" nowrap valign="top"> size_t <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp5">Ogre::HardwareBuffer::mLockStart</a><code> [protected, inherited]</code>
1115      </table>
1116    </td>
1117  </tr>
1118</table>
1119<table cellspacing=5 cellpadding=0 border=0>
1120  <tr>
1121    <td>
1122      &nbsp;
1123    </td>
1124    <td>
1125
1126<p>
1127
1128<p>
1129Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00134">134</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
1130  </tr>
1131</table>
1132<a class="anchor" name="Ogre_1_1HardwareVertexBufferp0" doxytag="Ogre::GLHardwareVertexBuffer::mNumVertices" ></a><p>
1133<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1134  <tr>
1135    <td class="mdRow">
1136      <table cellpadding="0" cellspacing="0" border="0">
1137        <tr>
1138          <td class="md" nowrap valign="top"> size_t <a class="el" href="classOgre_1_1HardwareVertexBuffer.html#Ogre_1_1HardwareVertexBufferp0">Ogre::HardwareVertexBuffer::mNumVertices</a><code> [protected, inherited]</code>
1139      </table>
1140    </td>
1141  </tr>
1142</table>
1143<table cellspacing=5 cellpadding=0 border=0>
1144  <tr>
1145    <td>
1146      &nbsp;
1147    </td>
1148    <td>
1149
1150<p>
1151
1152<p>
1153Definition at line <a class="el" href="OgreHardwareVertexBuffer_8h-source.html#l00040">40</a> of file <a class="el" href="OgreHardwareVertexBuffer_8h-source.html">OgreHardwareVertexBuffer.h</a>.    </td>
1154  </tr>
1155</table>
1156<a class="anchor" name="Ogre_1_1HardwareVertexBufferp9" doxytag="Ogre::GLHardwareVertexBuffer::mpShadowBuffer" ></a><p>
1157<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1158  <tr>
1159    <td class="mdRow">
1160      <table cellpadding="0" cellspacing="0" border="0">
1161        <tr>
1162          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a>* <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp9">Ogre::HardwareBuffer::mpShadowBuffer</a><code> [protected, inherited]</code>
1163      </table>
1164    </td>
1165  </tr>
1166</table>
1167<table cellspacing=5 cellpadding=0 border=0>
1168  <tr>
1169    <td>
1170      &nbsp;
1171    </td>
1172    <td>
1173
1174<p>
1175
1176<p>
1177Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00138">138</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
1178  </tr>
1179</table>
1180<a class="anchor" name="Ogre_1_1HardwareVertexBufferp10" doxytag="Ogre::GLHardwareVertexBuffer::mShadowUpdated" ></a><p>
1181<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1182  <tr>
1183    <td class="mdRow">
1184      <table cellpadding="0" cellspacing="0" border="0">
1185        <tr>
1186          <td class="md" nowrap valign="top"> bool <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp10">Ogre::HardwareBuffer::mShadowUpdated</a><code> [protected, inherited]</code>
1187      </table>
1188    </td>
1189  </tr>
1190</table>
1191<table cellspacing=5 cellpadding=0 border=0>
1192  <tr>
1193    <td>
1194      &nbsp;
1195    </td>
1196    <td>
1197
1198<p>
1199
1200<p>
1201Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00139">139</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
1202  </tr>
1203</table>
1204<a class="anchor" name="Ogre_1_1HardwareVertexBufferp2" doxytag="Ogre::GLHardwareVertexBuffer::mSizeInBytes" ></a><p>
1205<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1206  <tr>
1207    <td class="mdRow">
1208      <table cellpadding="0" cellspacing="0" border="0">
1209        <tr>
1210          <td class="md" nowrap valign="top"> size_t <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp2">Ogre::HardwareBuffer::mSizeInBytes</a><code> [protected, inherited]</code>
1211      </table>
1212    </td>
1213  </tr>
1214</table>
1215<table cellspacing=5 cellpadding=0 border=0>
1216  <tr>
1217    <td>
1218      &nbsp;
1219    </td>
1220    <td>
1221
1222<p>
1223
1224<p>
1225Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00131">131</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
1226  </tr>
1227</table>
1228<a class="anchor" name="Ogre_1_1HardwareVertexBufferp11" doxytag="Ogre::GLHardwareVertexBuffer::mSuppressHardwareUpdate" ></a><p>
1229<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1230  <tr>
1231    <td class="mdRow">
1232      <table cellpadding="0" cellspacing="0" border="0">
1233        <tr>
1234          <td class="md" nowrap valign="top"> bool <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp11">Ogre::HardwareBuffer::mSuppressHardwareUpdate</a><code> [protected, inherited]</code>
1235      </table>
1236    </td>
1237  </tr>
1238</table>
1239<table cellspacing=5 cellpadding=0 border=0>
1240  <tr>
1241    <td>
1242      &nbsp;
1243    </td>
1244    <td>
1245
1246<p>
1247
1248<p>
1249Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00140">140</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
1250  </tr>
1251</table>
1252<a class="anchor" name="Ogre_1_1HardwareVertexBufferp7" doxytag="Ogre::GLHardwareVertexBuffer::mSystemMemory" ></a><p>
1253<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1254  <tr>
1255    <td class="mdRow">
1256      <table cellpadding="0" cellspacing="0" border="0">
1257        <tr>
1258          <td class="md" nowrap valign="top"> bool <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp7">Ogre::HardwareBuffer::mSystemMemory</a><code> [protected, inherited]</code>
1259      </table>
1260    </td>
1261  </tr>
1262</table>
1263<table cellspacing=5 cellpadding=0 border=0>
1264  <tr>
1265    <td>
1266      &nbsp;
1267    </td>
1268    <td>
1269
1270<p>
1271
1272<p>
1273Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00136">136</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
1274  </tr>
1275</table>
1276<a class="anchor" name="Ogre_1_1HardwareVertexBufferp3" doxytag="Ogre::GLHardwareVertexBuffer::mUsage" ></a><p>
1277<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1278  <tr>
1279    <td class="mdRow">
1280      <table cellpadding="0" cellspacing="0" border="0">
1281        <tr>
1282          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11">Usage</a> <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp3">Ogre::HardwareBuffer::mUsage</a><code> [protected, inherited]</code>
1283      </table>
1284    </td>
1285  </tr>
1286</table>
1287<table cellspacing=5 cellpadding=0 border=0>
1288  <tr>
1289    <td>
1290      &nbsp;
1291    </td>
1292    <td>
1293
1294<p>
1295
1296<p>
1297Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00132">132</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
1298  </tr>
1299</table>
1300<a class="anchor" name="Ogre_1_1HardwareVertexBufferp8" doxytag="Ogre::GLHardwareVertexBuffer::mUseShadowBuffer" ></a><p>
1301<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1302  <tr>
1303    <td class="mdRow">
1304      <table cellpadding="0" cellspacing="0" border="0">
1305        <tr>
1306          <td class="md" nowrap valign="top"> bool <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferp8">Ogre::HardwareBuffer::mUseShadowBuffer</a><code> [protected, inherited]</code>
1307      </table>
1308    </td>
1309  </tr>
1310</table>
1311<table cellspacing=5 cellpadding=0 border=0>
1312  <tr>
1313    <td>
1314      &nbsp;
1315    </td>
1316    <td>
1317
1318<p>
1319
1320<p>
1321Definition at line <a class="el" href="OgreHardwareBuffer_8h-source.html#l00137">137</a> of file <a class="el" href="OgreHardwareBuffer_8h-source.html">OgreHardwareBuffer.h</a>.    </td>
1322  </tr>
1323</table>
1324<a class="anchor" name="Ogre_1_1HardwareVertexBufferp1" doxytag="Ogre::GLHardwareVertexBuffer::mVertexSize" ></a><p>
1325<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1326  <tr>
1327    <td class="mdRow">
1328      <table cellpadding="0" cellspacing="0" border="0">
1329        <tr>
1330          <td class="md" nowrap valign="top"> size_t <a class="el" href="classOgre_1_1HardwareVertexBuffer.html#Ogre_1_1HardwareVertexBufferp1">Ogre::HardwareVertexBuffer::mVertexSize</a><code> [protected, inherited]</code>
1331      </table>
1332    </td>
1333  </tr>
1334</table>
1335<table cellspacing=5 cellpadding=0 border=0>
1336  <tr>
1337    <td>
1338      &nbsp;
1339    </td>
1340    <td>
1341
1342<p>
1343
1344<p>
1345Definition at line <a class="el" href="OgreHardwareVertexBuffer_8h-source.html#l00041">41</a> of file <a class="el" href="OgreHardwareVertexBuffer_8h-source.html">OgreHardwareVertexBuffer.h</a>.    </td>
1346  </tr>
1347</table>
1348<hr>The documentation for this class was generated from the following file:<ul>
1349<li><a class="el" href="OgreGLHardwareVertexBuffer_8h-source.html">OgreGLHardwareVertexBuffer.h</a></ul>
1350<hr>
1351<p>
1352Copyright &copy; 2000-2005 by The OGRE Team<br />
1353<!--Creative Commons License--><a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/"><img alt="Creative Commons License" border="0" src="http://creativecommons.org/images/public/somerights20.png"/></a><br/>
1354This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/">Creative Commons Attribution-ShareAlike 2.5 License</a>.<br/>
1355                <!--/Creative Commons License--><!-- <rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
1356                <Work rdf:about="">
1357                        <license rdf:resource="http://creativecommons.org/licenses/by-sa/2.5/" />
1358        <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
1359                </Work>
1360                <License rdf:about="http://creativecommons.org/licenses/by-sa/2.5/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/><requires rdf:resource="http://web.resource.org/cc/ShareAlike"/></License></rdf:RDF> -->
1361
1362Last modified Sun Feb 12 13:10:19 2006
1363</p>
1364</body>
1365</html>
Note: See TracBrowser for help on using the repository browser.