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

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

added ogre dependencies and patched ogre sources

Line 
1<html>
2<head>
3<title>Ogre::HardwarePixelBuffer 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::HardwarePixelBuffer Class Reference</h1>Specialisation of <a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a> for a pixel buffer. 
11<a href="#_details">More...</a>
12<p>
13<code>#include &lt;<a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a>&gt;</code>
14<p>
15<p>Inheritance diagram for Ogre::HardwarePixelBuffer:
16<p><center><img src="classOgre_1_1HardwarePixelBuffer.png" usemap="#Ogre::HardwarePixelBuffer_map" border="0" alt=""></center>
17<map name="Ogre::HardwarePixelBuffer_map">
18<area href="classOgre_1_1HardwareBuffer.html" alt="Ogre::HardwareBuffer" shape="rect" coords="207,0,404,24">
19<area href="classOgre_1_1D3D7HardwarePixelBuffer.html" alt="Ogre::D3D7HardwarePixelBuffer" shape="rect" coords="0,112,197,136">
20<area href="classOgre_1_1D3D9HardwarePixelBuffer.html" alt="Ogre::D3D9HardwarePixelBuffer" shape="rect" coords="207,112,404,136">
21<area href="classOgre_1_1GLHardwarePixelBuffer.html" alt="Ogre::GLHardwarePixelBuffer" shape="rect" coords="414,112,611,136">
22</map>
23<a href="classOgre_1_1HardwarePixelBuffer-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
24<tr><td></td></tr>
25<tr><td colspan=2><br><h2>Public Types</h2></td></tr>
26<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>
27&nbsp;&nbsp;<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw0">HBU_STATIC</a> =  1,
28<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw1">HBU_DYNAMIC</a> =  2,
29<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw2">HBU_WRITE_ONLY</a> =  4,
30<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw3">HBU_DISCARDABLE</a> =  8,
31<br>
32&nbsp;&nbsp;<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw4">HBU_STATIC_WRITE_ONLY</a> =  5,
33<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw5">HBU_DYNAMIC_WRITE_ONLY</a> =  6,
34<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw6">HBU_DYNAMIC_WRITE_ONLY_DISCARDABLE</a> =  14
35<br>
36 }</td></tr>
37
38<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>
39<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>,
40<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12Ogre_1_1HardwareVertexBufferw8">HBL_DISCARD</a>,
41<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12Ogre_1_1HardwareVertexBufferw9">HBL_READ_ONLY</a>,
42<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12Ogre_1_1HardwareVertexBufferw10">HBL_NO_OVERWRITE</a>
43 }</td></tr>
44
45<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Locking options.  <a href="#Ogre_1_1HardwareVertexBufferw12">More...</a><br><br></td></tr>
46<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
47<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera0">HardwarePixelBuffer</a> (size_t <a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp0">mWidth</a>, size_t <a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp1">mHeight</a>, size_t <a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp2">mDepth</a>, <a class="el" href="namespaceOgre.html#a667">PixelFormat</a> <a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp5">mFormat</a>, <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11">HardwareBuffer::Usage</a> usage, bool useSystemMemory, bool useShadowBuffer)</td></tr>
48
49<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Should be called by <a class="el" href="classOgre_1_1HardwareBufferManager.html">HardwareBufferManager</a>.  <a href="#Ogre_1_1HardwarePixelBuffera0"></a><br><br></td></tr>
50<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera1">~HardwarePixelBuffer</a> ()</td></tr>
51
52<tr><td class="memItemLeft" nowrap align=right valign=top>virtual const <a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera2">lock</a> (const <a class="el" href="structOgre_1_1Box.html">Image::Box</a> &amp;lockBox, <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a> options)</td></tr>
53
54<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Lock the buffer for (potentially) reading / writing.  <a href="#Ogre_1_1HardwarePixelBuffera2"></a><br><br></td></tr>
55<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera3">lock</a> (size_t offset, size_t length, <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a> options)</td></tr>
56
57<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><dl compact><dt><b>Parameters:</b></dt><dd>
58  <table border="0" cellspacing="2" cellpadding="0">
59    <tr><td valign=top><em>offset</em>&nbsp;</td><td>The byte offset from the start of the buffer to lock </td></tr>
60    <tr><td valign=top><em>length</em>&nbsp;</td><td>The size of the area to lock, in bytes </td></tr>
61    <tr><td valign=top><em>options</em>&nbsp;</td><td>Locking options </td></tr>
62  </table>
63</dl>
64<dl compact><dt><b>Returns:</b></dt><dd>Pointer to the locked memory </dd></dl>
65  <a href="#Ogre_1_1HardwarePixelBuffera3"></a><br><br></td></tr>
66<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera4">getCurrentLock</a> ()</td></tr>
67
68<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the current locked region.  <a href="#Ogre_1_1HardwarePixelBuffera4"></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_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera5">readData</a> (size_t offset, size_t length, void *pDest)</td></tr>
70
71<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><dl compact><dt><b>Parameters:</b></dt><dd>
72  <table border="0" cellspacing="2" cellpadding="0">
73    <tr><td valign=top><em>offset</em>&nbsp;</td><td>The byte offset from the start of the buffer to read </td></tr>
74    <tr><td valign=top><em>length</em>&nbsp;</td><td>The size of the area to read, in bytes </td></tr>
75    <tr><td valign=top><em>pDest</em>&nbsp;</td><td>The area of memory in which to place the data, must be large enough to accommodate the data!</td></tr>
76  </table>
77</dl>
78  <a href="#Ogre_1_1HardwarePixelBuffera5"></a><br><br></td></tr>
79<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera6">writeData</a> (size_t offset, size_t length, const void *pSource, bool discardWholeBuffer=false)</td></tr>
80
81<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><dl compact><dt><b>Parameters:</b></dt><dd>
82  <table border="0" cellspacing="2" cellpadding="0">
83    <tr><td valign=top><em>offset</em>&nbsp;</td><td>The byte offset from the start of the buffer to start writing </td></tr>
84    <tr><td valign=top><em>length</em>&nbsp;</td><td>The size of the data to write to, in bytes </td></tr>
85    <tr><td valign=top><em>pSource</em>&nbsp;</td><td>The source of the data to be written </td></tr>
86    <tr><td valign=top><em>discardWholeBuffer</em>&nbsp;</td><td>If true, this allows the driver to discard the entire buffer when writing, such that DMA stalls can be avoided; use if you can.</td></tr>
87  </table>
88</dl>
89  <a href="#Ogre_1_1HardwarePixelBuffera6"></a><br><br></td></tr>
90<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera7">blit</a> (<a class="el" href="classOgre_1_1HardwarePixelBuffer.html">HardwarePixelBuffer</a> *src, const <a class="el" href="structOgre_1_1Box.html">Image::Box</a> &amp;srcBox, const <a class="el" href="structOgre_1_1Box.html">Image::Box</a> &amp;dstBox)</td></tr>
91
92<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copies a box from another PixelBuffer to a region of the this PixelBuffer.  <a href="#Ogre_1_1HardwarePixelBuffera7"></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_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera8">blit</a> (<a class="el" href="classOgre_1_1HardwarePixelBuffer.html">HardwarePixelBuffer</a> *src)</td></tr>
94
95<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Convience function that blits the entire source pixel buffer to this buffer.  <a href="#Ogre_1_1HardwarePixelBuffera8"></a><br><br></td></tr>
96<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera9">blitFromMemory</a> (const <a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> &amp;src, const <a class="el" href="structOgre_1_1Box.html">Image::Box</a> &amp;dstBox)=0</td></tr>
97
98<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copies a region from normal memory to a region of this pixelbuffer.  <a href="#Ogre_1_1HardwarePixelBuffera9"></a><br><br></td></tr>
99<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera10">blitFromMemory</a> (const <a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> &amp;src)</td></tr>
100
101<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Convience function that blits a pixelbox from memory to the entire buffer.  <a href="#Ogre_1_1HardwarePixelBuffera10"></a><br><br></td></tr>
102<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera11">blitToMemory</a> (const <a class="el" href="structOgre_1_1Box.html">Image::Box</a> &amp;srcBox, const <a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> &amp;dst)=0</td></tr>
103
104<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copies a region of this pixelbuffer to normal memory.  <a href="#Ogre_1_1HardwarePixelBuffera11"></a><br><br></td></tr>
105<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera12">blitToMemory</a> (const <a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> &amp;dst)</td></tr>
106
107<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Convience function that blits this entire buffer to a pixelbox.  <a href="#Ogre_1_1HardwarePixelBuffera12"></a><br><br></td></tr>
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_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera13">getWidth</a> () const </td></tr>
109
110<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the width of this buffer.  <a href="#Ogre_1_1HardwarePixelBuffera13"></a><br><br></td></tr>
111<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera14">getHeight</a> () const </td></tr>
112
113<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the height of this buffer.  <a href="#Ogre_1_1HardwarePixelBuffera14"></a><br><br></td></tr>
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_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera15">getDepth</a> () const </td></tr>
115
116<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the depth of this buffer.  <a href="#Ogre_1_1HardwarePixelBuffera15"></a><br><br></td></tr>
117<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a667">PixelFormat</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera16">getFormat</a> () const </td></tr>
118
119<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the native pixel format of this buffer.  <a href="#Ogre_1_1HardwarePixelBuffera16"></a><br><br></td></tr>
120<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera17">lock</a> (size_t offset, size_t length, <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a> options)</td></tr>
121
122<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">make every lock method from <a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a> available.  <a href="#Ogre_1_1HardwarePixelBuffera17"></a><br><br></td></tr>
123<tr><td class="memItemLeft" nowrap align=right valign=top>void *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera18">lock</a> (<a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a> options)</td></tr>
124
125<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">make every lock method from <a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a> available.  <a href="#Ogre_1_1HardwarePixelBuffera18"></a><br><br></td></tr>
126<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>
127
128<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>
129<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>
130
131<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>
132<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>
133
134<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>
135<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>
136
137<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>
138<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>
139
140<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>
141<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>
142
143<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>
144<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>
145
146<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>
147<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>
148
149<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>
150<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>
151
152<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>
153<tr><td colspan=2><br><h2>Protected Member Functions</h2></td></tr>
154<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferb0">lockImpl</a> (const <a class="el" href="structOgre_1_1Box.html">Image::Box</a> lockBox, <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a> options)=0</td></tr>
155
156<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Internal implementation of <a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera2">lock()</a>, must be overridden in subclasses.  <a href="#Ogre_1_1HardwarePixelBufferb0"></a><br><br></td></tr>
157<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferb1">lockImpl</a> (size_t offset, size_t length, <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a> options)</td></tr>
158
159<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Internal implementation of <a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera2">lock()</a>, do not OVERRIDE or CALL this for <a class="el" href="classOgre_1_1HardwarePixelBuffer.html">HardwarePixelBuffer</a> implementations, but override the previous method.  <a href="#Ogre_1_1HardwarePixelBufferb1"></a><br><br></td></tr>
160<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_1HardwareVertexBufferb1">unlockImpl</a> (void)=0</td></tr>
161
162<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Internal implementation of <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera6">unlock()</a>.  <a href="#Ogre_1_1HardwareVertexBufferb1"></a><br><br></td></tr>
163<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
164<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp0">mWidth</a></td></tr>
165
166<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp1">mHeight</a></td></tr>
167
168<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp2">mDepth</a></td></tr>
169
170<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp3">mRowPitch</a></td></tr>
171
172<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp4">mSlicePitch</a></td></tr>
173
174<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a667">PixelFormat</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp5">mFormat</a></td></tr>
175
176<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp6">mCurrentLock</a></td></tr>
177
178<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>
179
180<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>
181
182<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>
183
184<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>
185
186<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>
187
188<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>
189
190<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>
191
192<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>
193
194<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>
195
196<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>
197
198</table>
199<hr><a name="_details"></a><h2>Detailed Description</h2>
200Specialisation of <a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a> for a pixel buffer.
201<p>
202The HardwarePixelbuffer abstracts an 1D, 2D or 3D quantity of pixels stored by the rendering API. The buffer can be located on the card or in main memory depending on its usage. One mipmap level of a texture is an example of a <a class="el" href="classOgre_1_1HardwarePixelBuffer.html">HardwarePixelBuffer</a>.
203<p>
204
205<p>
206Definition at line <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00042">42</a> of file <a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a>.<hr><h2>Member Enumeration Documentation</h2>
207<a class="anchor" name="Ogre_1_1HardwareVertexBufferw12" doxytag="Ogre::HardwarePixelBuffer::LockOptions" ></a><p>
208<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
209  <tr>
210    <td class="mdRow">
211      <table cellpadding="0" cellspacing="0" border="0">
212        <tr>
213          <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>
214      </table>
215    </td>
216  </tr>
217</table>
218<table cellspacing=5 cellpadding=0 border=0>
219  <tr>
220    <td>
221      &nbsp;
222    </td>
223    <td>
224
225<p>
226Locking options.
227<p>
228<dl compact><dt><b>Enumeration values: </b></dt><dd>
229<table border=0 cellspacing=2 cellpadding=0>
230<tr><td valign=top><em><a class="anchor" name="Ogre_1_1HardwareVertexBufferw12Ogre_1_1HardwareVertexBufferw7" doxytag="HBL_NORMAL" ></a>HBL_NORMAL</em>&nbsp;</td><td>
231Normal mode, ie allows read/write and contents are preserved. </td></tr>
232<tr><td valign=top><em><a class="anchor" name="Ogre_1_1HardwareVertexBufferw12Ogre_1_1HardwareVertexBufferw8" doxytag="HBL_DISCARD" ></a>HBL_DISCARD</em>&nbsp;</td><td>
233Discards the <em>entire</em> buffer while locking; this allows optimisation to be performed because synchronisation issues are relaxed.
234<p>
235Only allowed on buffers created with the HBU_DYNAMIC flag.</td></tr>
236<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>
237Lock the buffer for reading only.
238<p>
239Not allowed in buffers which are created with HBU_WRITE_ONLY. Mandatory on statuc buffers, ie those created without the HBU_DYNAMIC flag.</td></tr>
240<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>
241As 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>
242</table>
243</dl>
244
245<p>
246Definition 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>
247  </tr>
248</table>
249<a class="anchor" name="Ogre_1_1HardwareVertexBufferw11" doxytag="Ogre::HardwarePixelBuffer::Usage" ></a><p>
250<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
251  <tr>
252    <td class="mdRow">
253      <table cellpadding="0" cellspacing="0" border="0">
254        <tr>
255          <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>
256      </table>
257    </td>
258  </tr>
259</table>
260<table cellspacing=5 cellpadding=0 border=0>
261  <tr>
262    <td>
263      &nbsp;
264    </td>
265    <td>
266
267<p>
268Enums describing buffer usage; not mutually exclusive.
269<p>
270<dl compact><dt><b>Enumeration values: </b></dt><dd>
271<table border=0 cellspacing=2 cellpadding=0>
272<tr><td valign=top><em><a class="anchor" name="Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw0" doxytag="HBU_STATIC" ></a>HBU_STATIC</em>&nbsp;</td><td>
273Static buffer which the application rarely modifies once created.
274<p>
275Modifying the contents of this buffer will involve a performance hit. </td></tr>
276<tr><td valign=top><em><a class="anchor" name="Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw1" doxytag="HBU_DYNAMIC" ></a>HBU_DYNAMIC</em>&nbsp;</td><td>
277Indicates the application would like to modify this buffer with the CPU fairly often.
278<p>
279Buffers created with this flag will typically end up in AGP memory rather than video memory.</td></tr>
280<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>
281Indicates the application will never read the contents of the buffer back, it will only ever write data.
282<p>
283Locking 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>
284<tr><td valign=top><em><a class="anchor" name="Ogre_1_1HardwareVertexBufferw11Ogre_1_1HardwareVertexBufferw3" doxytag="HBU_DISCARDABLE" ></a>HBU_DISCARDABLE</em>&nbsp;</td><td>
285Indicates 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.
286<p>
287This allows and additional level of optimisation on the buffer. This option only really makes sense when combined with HBU_DYNAMIC_WRITE_ONLY. </td></tr>
288<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>
289Combination of HBU_STATIC and HBU_WRITE_ONLY. </td></tr>
290<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>
291Combination of HBU_DYNAMIC and HBU_WRITE_ONLY.
292<p>
293If 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>
294<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>
295Combination of HBU_DYNAMIC, HBU_WRITE_ONLY and HBU_DISCARDABLE. </td></tr>
296</table>
297</dl>
298
299<p>
300Definition 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>
301  </tr>
302</table>
303<hr><h2>Constructor &amp; Destructor Documentation</h2>
304<a class="anchor" name="Ogre_1_1HardwarePixelBuffera0" doxytag="Ogre::HardwarePixelBuffer::HardwarePixelBuffer" ></a><p>
305<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
306  <tr>
307    <td class="mdRow">
308      <table cellpadding="0" cellspacing="0" border="0">
309        <tr>
310          <td class="md" nowrap valign="top"> Ogre::HardwarePixelBuffer::HardwarePixelBuffer </td>
311          <td class="md" valign="top">(&nbsp;</td>
312          <td class="md" nowrap valign="top">size_t&nbsp;</td>
313          <td class="mdname" nowrap> <em>mWidth</em>, </td>
314        </tr>
315        <tr>
316          <td class="md" nowrap align="right"></td>
317          <td></td>
318          <td class="md" nowrap>size_t&nbsp;</td>
319          <td class="mdname" nowrap> <em>mHeight</em>, </td>
320        </tr>
321        <tr>
322          <td class="md" nowrap align="right"></td>
323          <td></td>
324          <td class="md" nowrap>size_t&nbsp;</td>
325          <td class="mdname" nowrap> <em>mDepth</em>, </td>
326        </tr>
327        <tr>
328          <td class="md" nowrap align="right"></td>
329          <td></td>
330          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a667">PixelFormat</a>&nbsp;</td>
331          <td class="mdname" nowrap> <em>mFormat</em>, </td>
332        </tr>
333        <tr>
334          <td class="md" nowrap align="right"></td>
335          <td></td>
336          <td class="md" nowrap><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11">HardwareBuffer::Usage</a>&nbsp;</td>
337          <td class="mdname" nowrap> <em>usage</em>, </td>
338        </tr>
339        <tr>
340          <td class="md" nowrap align="right"></td>
341          <td></td>
342          <td class="md" nowrap>bool&nbsp;</td>
343          <td class="mdname" nowrap> <em>useSystemMemory</em>, </td>
344        </tr>
345        <tr>
346          <td class="md" nowrap align="right"></td>
347          <td></td>
348          <td class="md" nowrap>bool&nbsp;</td>
349          <td class="mdname" nowrap> <em>useShadowBuffer</em></td>
350        </tr>
351        <tr>
352          <td></td>
353          <td class="md">)&nbsp;</td>
354          <td class="md" colspan="2"></td>
355        </tr>
356
357      </table>
358    </td>
359  </tr>
360</table>
361<table cellspacing=5 cellpadding=0 border=0>
362  <tr>
363    <td>
364      &nbsp;
365    </td>
366    <td>
367
368<p>
369Should be called by <a class="el" href="classOgre_1_1HardwareBufferManager.html">HardwareBufferManager</a>.
370<p>
371    </td>
372  </tr>
373</table>
374<a class="anchor" name="Ogre_1_1HardwarePixelBuffera1" doxytag="Ogre::HardwarePixelBuffer::~HardwarePixelBuffer" ></a><p>
375<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
376  <tr>
377    <td class="mdRow">
378      <table cellpadding="0" cellspacing="0" border="0">
379        <tr>
380          <td class="md" nowrap valign="top"> Ogre::HardwarePixelBuffer::~<a class="el" href="classOgre_1_1HardwarePixelBuffer.html">HardwarePixelBuffer</a> </td>
381          <td class="md" valign="top">(&nbsp;</td>
382          <td class="mdname1" valign="top" nowrap>          </td>
383          <td class="md" valign="top">&nbsp;)&nbsp;</td>
384          <td class="md" nowrap></td>
385        </tr>
386
387      </table>
388    </td>
389  </tr>
390</table>
391<table cellspacing=5 cellpadding=0 border=0>
392  <tr>
393    <td>
394      &nbsp;
395    </td>
396    <td>
397
398<p>
399    </td>
400  </tr>
401</table>
402<hr><h2>Member Function Documentation</h2>
403<a class="anchor" name="Ogre_1_1HardwareVertexBuffera10" doxytag="Ogre::HardwarePixelBuffer::_updateFromShadow" ></a><p>
404<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
405  <tr>
406    <td class="mdRow">
407      <table cellpadding="0" cellspacing="0" border="0">
408        <tr>
409          <td class="md" nowrap valign="top"> virtual void Ogre::HardwareBuffer::_updateFromShadow </td>
410          <td class="md" valign="top">(&nbsp;</td>
411          <td class="md" nowrap valign="top">void&nbsp;</td>
412          <td class="mdname1" valign="top" nowrap>          </td>
413          <td class="md" valign="top">&nbsp;)&nbsp;</td>
414          <td class="md" nowrap><code> [virtual, inherited]</code></td>
415        </tr>
416
417      </table>
418    </td>
419  </tr>
420</table>
421<table cellspacing=5 cellpadding=0 border=0>
422  <tr>
423    <td>
424      &nbsp;
425    </td>
426    <td>
427
428<p>
429Updates the real buffer from the shadow buffer, if required.
430<p>
431
432<p>
433Definition 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>
434  </tr>
435</table>
436<a class="anchor" name="Ogre_1_1HardwarePixelBuffera8" doxytag="Ogre::HardwarePixelBuffer::blit" ></a><p>
437<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
438  <tr>
439    <td class="mdRow">
440      <table cellpadding="0" cellspacing="0" border="0">
441        <tr>
442          <td class="md" nowrap valign="top"> void Ogre::HardwarePixelBuffer::blit </td>
443          <td class="md" valign="top">(&nbsp;</td>
444          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1HardwarePixelBuffer.html">HardwarePixelBuffer</a> *&nbsp;</td>
445          <td class="mdname1" valign="top" nowrap> <em>src</em>          </td>
446          <td class="md" valign="top">&nbsp;)&nbsp;</td>
447          <td class="md" nowrap></td>
448        </tr>
449
450      </table>
451    </td>
452  </tr>
453</table>
454<table cellspacing=5 cellpadding=0 border=0>
455  <tr>
456    <td>
457      &nbsp;
458    </td>
459    <td>
460
461<p>
462Convience function that blits the entire source pixel buffer to this buffer.
463<p>
464If source and destination dimensions don't match, scaling is done. <dl compact><dt><b>Parameters:</b></dt><dd>
465  <table border="0" cellspacing="2" cellpadding="0">
466    <tr><td valign=top><em>src</em>&nbsp;</td><td><a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> containing the source pixels and format in memory </td></tr>
467  </table>
468</dl>
469<dl compact><dt><b>Note:</b></dt><dd>Only call this function when the buffer is unlocked.</dd></dl>
470
471<p>
472Definition at line <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00114">114</a> of file <a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a>.
473<p>
474References <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00167">getDepth()</a>, <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00165">getHeight()</a>, and <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00163">getWidth()</a>.    </td>
475  </tr>
476</table>
477<a class="anchor" name="Ogre_1_1HardwarePixelBuffera7" doxytag="Ogre::HardwarePixelBuffer::blit" ></a><p>
478<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
479  <tr>
480    <td class="mdRow">
481      <table cellpadding="0" cellspacing="0" border="0">
482        <tr>
483          <td class="md" nowrap valign="top"> virtual void Ogre::HardwarePixelBuffer::blit </td>
484          <td class="md" valign="top">(&nbsp;</td>
485          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1HardwarePixelBuffer.html">HardwarePixelBuffer</a> *&nbsp;</td>
486          <td class="mdname" nowrap> <em>src</em>, </td>
487        </tr>
488        <tr>
489          <td class="md" nowrap align="right"></td>
490          <td></td>
491          <td class="md" nowrap>const <a class="el" href="structOgre_1_1Box.html">Image::Box</a> &amp;&nbsp;</td>
492          <td class="mdname" nowrap> <em>srcBox</em>, </td>
493        </tr>
494        <tr>
495          <td class="md" nowrap align="right"></td>
496          <td></td>
497          <td class="md" nowrap>const <a class="el" href="structOgre_1_1Box.html">Image::Box</a> &amp;&nbsp;</td>
498          <td class="mdname" nowrap> <em>dstBox</em></td>
499        </tr>
500        <tr>
501          <td></td>
502          <td class="md">)&nbsp;</td>
503          <td class="md" colspan="2"><code> [virtual]</code></td>
504        </tr>
505
506      </table>
507    </td>
508  </tr>
509</table>
510<table cellspacing=5 cellpadding=0 border=0>
511  <tr>
512    <td>
513      &nbsp;
514    </td>
515    <td>
516
517<p>
518Copies a box from another PixelBuffer to a region of the this PixelBuffer.
519<p>
520<dl compact><dt><b>Parameters:</b></dt><dd>
521  <table border="0" cellspacing="2" cellpadding="0">
522    <tr><td valign=top><em>dst</em>&nbsp;</td><td>Source pixel buffer </td></tr>
523    <tr><td valign=top><em>srcBox</em>&nbsp;</td><td><a class="el" href="classOgre_1_1Image.html#Ogre_1_1Imagew0">Image::Box</a> describing the source region in src </td></tr>
524    <tr><td valign=top><em>dstBox</em>&nbsp;</td><td><a class="el" href="classOgre_1_1Image.html#Ogre_1_1Imagew0">Image::Box</a> describing the destination region in this buffer </td></tr>
525  </table>
526</dl>
527<dl compact><dt><b>Remarks:</b></dt><dd>The source and destination regions dimensions don't have to match, in which case scaling is done. This scaling is done in software for some render systems, thus for realtime usage it is recommended to pass the source image in the right dimensions. </dd></dl>
528<dl compact><dt><b>Note:</b></dt><dd>Only call this function when both buffers are unlocked. </dd></dl>
529
530<p>
531Reimplemented in <a class="el" href="classOgre_1_1D3D7HardwarePixelBuffer.html#Ogre_1_1D3D7HardwarePixelBuffera2">Ogre::D3D7HardwarePixelBuffer</a>, <a class="el" href="classOgre_1_1D3D9HardwarePixelBuffer.html#Ogre_1_1D3D9HardwarePixelBuffera3">Ogre::D3D9HardwarePixelBuffer</a>, and <a class="el" href="classOgre_1_1GLHardwarePixelBuffer.html#Ogre_1_1GLHardwarePixelBuffera1">Ogre::GLHardwarePixelBuffer</a>.    </td>
532  </tr>
533</table>
534<a class="anchor" name="Ogre_1_1HardwarePixelBuffera10" doxytag="Ogre::HardwarePixelBuffer::blitFromMemory" ></a><p>
535<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
536  <tr>
537    <td class="mdRow">
538      <table cellpadding="0" cellspacing="0" border="0">
539        <tr>
540          <td class="md" nowrap valign="top"> void Ogre::HardwarePixelBuffer::blitFromMemory </td>
541          <td class="md" valign="top">(&nbsp;</td>
542          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> &amp;&nbsp;</td>
543          <td class="mdname1" valign="top" nowrap> <em>src</em>          </td>
544          <td class="md" valign="top">&nbsp;)&nbsp;</td>
545          <td class="md" nowrap></td>
546        </tr>
547
548      </table>
549    </td>
550  </tr>
551</table>
552<table cellspacing=5 cellpadding=0 border=0>
553  <tr>
554    <td>
555      &nbsp;
556    </td>
557    <td>
558
559<p>
560Convience function that blits a pixelbox from memory to the entire buffer.
561<p>
562The source image is scaled as needed. <dl compact><dt><b>Parameters:</b></dt><dd>
563  <table border="0" cellspacing="2" cellpadding="0">
564    <tr><td valign=top><em>src</em>&nbsp;</td><td><a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> containing the source pixels and format in memory </td></tr>
565  </table>
566</dl>
567<dl compact><dt><b>Note:</b></dt><dd>Only call this function when the buffer is unlocked.</dd></dl>
568
569<p>
570Definition at line <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00138">138</a> of file <a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a>.    </td>
571  </tr>
572</table>
573<a class="anchor" name="Ogre_1_1HardwarePixelBuffera9" doxytag="Ogre::HardwarePixelBuffer::blitFromMemory" ></a><p>
574<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
575  <tr>
576    <td class="mdRow">
577      <table cellpadding="0" cellspacing="0" border="0">
578        <tr>
579          <td class="md" nowrap valign="top"> virtual void Ogre::HardwarePixelBuffer::blitFromMemory </td>
580          <td class="md" valign="top">(&nbsp;</td>
581          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> &amp;&nbsp;</td>
582          <td class="mdname" nowrap> <em>src</em>, </td>
583        </tr>
584        <tr>
585          <td class="md" nowrap align="right"></td>
586          <td></td>
587          <td class="md" nowrap>const <a class="el" href="structOgre_1_1Box.html">Image::Box</a> &amp;&nbsp;</td>
588          <td class="mdname" nowrap> <em>dstBox</em></td>
589        </tr>
590        <tr>
591          <td></td>
592          <td class="md">)&nbsp;</td>
593          <td class="md" colspan="2"><code> [pure virtual]</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>
608Copies a region from normal memory to a region of this pixelbuffer.
609<p>
610The source image can be in any pixel format supported by OGRE, and in any size. <dl compact><dt><b>Parameters:</b></dt><dd>
611  <table border="0" cellspacing="2" cellpadding="0">
612    <tr><td valign=top><em>src</em>&nbsp;</td><td><a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> containing the source pixels and format in memory </td></tr>
613    <tr><td valign=top><em>dstBox</em>&nbsp;</td><td><a class="el" href="classOgre_1_1Image.html#Ogre_1_1Imagew0">Image::Box</a> describing the destination region in this buffer </td></tr>
614  </table>
615</dl>
616<dl compact><dt><b>Remarks:</b></dt><dd>The source and destination regions dimensions don't have to match, in which case scaling is done. This scaling is done in software for some render systems, so for realtime usage it is recommended to pass the source image in the right dimensions. </dd></dl>
617<dl compact><dt><b>Note:</b></dt><dd>Only call this function when the buffer is unlocked.</dd></dl>
618
619<p>
620Implemented in <a class="el" href="classOgre_1_1D3D7HardwarePixelBuffer.html#Ogre_1_1D3D7HardwarePixelBuffera3">Ogre::D3D7HardwarePixelBuffer</a>, <a class="el" href="classOgre_1_1D3D9HardwarePixelBuffer.html#Ogre_1_1D3D9HardwarePixelBuffera4">Ogre::D3D9HardwarePixelBuffer</a>, and <a class="el" href="classOgre_1_1GLHardwarePixelBuffer.html#Ogre_1_1GLHardwarePixelBuffera2">Ogre::GLHardwarePixelBuffer</a>.    </td>
621  </tr>
622</table>
623<a class="anchor" name="Ogre_1_1HardwarePixelBuffera12" doxytag="Ogre::HardwarePixelBuffer::blitToMemory" ></a><p>
624<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
625  <tr>
626    <td class="mdRow">
627      <table cellpadding="0" cellspacing="0" border="0">
628        <tr>
629          <td class="md" nowrap valign="top"> void Ogre::HardwarePixelBuffer::blitToMemory </td>
630          <td class="md" valign="top">(&nbsp;</td>
631          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> &amp;&nbsp;</td>
632          <td class="mdname1" valign="top" nowrap> <em>dst</em>          </td>
633          <td class="md" valign="top">&nbsp;)&nbsp;</td>
634          <td class="md" nowrap></td>
635        </tr>
636
637      </table>
638    </td>
639  </tr>
640</table>
641<table cellspacing=5 cellpadding=0 border=0>
642  <tr>
643    <td>
644      &nbsp;
645    </td>
646    <td>
647
648<p>
649Convience function that blits this entire buffer to a pixelbox.
650<p>
651The image is scaled as needed. <dl compact><dt><b>Parameters:</b></dt><dd>
652  <table border="0" cellspacing="2" cellpadding="0">
653    <tr><td valign=top><em>src</em>&nbsp;</td><td><a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> containing the source pixels and format in memory </td></tr>
654  </table>
655</dl>
656<dl compact><dt><b>Note:</b></dt><dd>Only call this function when the buffer is unlocked.</dd></dl>
657
658<p>
659Definition at line <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00157">157</a> of file <a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a>.    </td>
660  </tr>
661</table>
662<a class="anchor" name="Ogre_1_1HardwarePixelBuffera11" doxytag="Ogre::HardwarePixelBuffer::blitToMemory" ></a><p>
663<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
664  <tr>
665    <td class="mdRow">
666      <table cellpadding="0" cellspacing="0" border="0">
667        <tr>
668          <td class="md" nowrap valign="top"> virtual void Ogre::HardwarePixelBuffer::blitToMemory </td>
669          <td class="md" valign="top">(&nbsp;</td>
670          <td class="md" nowrap valign="top">const <a class="el" href="structOgre_1_1Box.html">Image::Box</a> &amp;&nbsp;</td>
671          <td class="mdname" nowrap> <em>srcBox</em>, </td>
672        </tr>
673        <tr>
674          <td class="md" nowrap align="right"></td>
675          <td></td>
676          <td class="md" nowrap>const <a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> &amp;&nbsp;</td>
677          <td class="mdname" nowrap> <em>dst</em></td>
678        </tr>
679        <tr>
680          <td></td>
681          <td class="md">)&nbsp;</td>
682          <td class="md" colspan="2"><code> [pure virtual]</code></td>
683        </tr>
684
685      </table>
686    </td>
687  </tr>
688</table>
689<table cellspacing=5 cellpadding=0 border=0>
690  <tr>
691    <td>
692      &nbsp;
693    </td>
694    <td>
695
696<p>
697Copies a region of this pixelbuffer to normal memory.
698<p>
699<dl compact><dt><b>Parameters:</b></dt><dd>
700  <table border="0" cellspacing="2" cellpadding="0">
701    <tr><td valign=top><em>srcBox</em>&nbsp;</td><td><a class="el" href="classOgre_1_1Image.html#Ogre_1_1Imagew0">Image::Box</a> describing the source region of this buffer </td></tr>
702    <tr><td valign=top><em>dst</em>&nbsp;</td><td><a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> describing the destination pixels and format in memory </td></tr>
703  </table>
704</dl>
705<dl compact><dt><b>Remarks:</b></dt><dd>The source and destination regions don't have to match, in which case scaling is done. </dd></dl>
706<dl compact><dt><b>Note:</b></dt><dd>Only call this function when the buffer is unlocked.</dd></dl>
707
708<p>
709Implemented in <a class="el" href="classOgre_1_1D3D7HardwarePixelBuffer.html#Ogre_1_1D3D7HardwarePixelBuffera4">Ogre::D3D7HardwarePixelBuffer</a>, <a class="el" href="classOgre_1_1D3D9HardwarePixelBuffer.html#Ogre_1_1D3D9HardwarePixelBuffera5">Ogre::D3D9HardwarePixelBuffer</a>, and <a class="el" href="classOgre_1_1GLHardwarePixelBuffer.html#Ogre_1_1GLHardwarePixelBuffera3">Ogre::GLHardwarePixelBuffer</a>.    </td>
710  </tr>
711</table>
712<a class="anchor" name="Ogre_1_1HardwareVertexBuffera9" doxytag="Ogre::HardwarePixelBuffer::copyData" ></a><p>
713<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
714  <tr>
715    <td class="mdRow">
716      <table cellpadding="0" cellspacing="0" border="0">
717        <tr>
718          <td class="md" nowrap valign="top"> virtual void Ogre::HardwareBuffer::copyData </td>
719          <td class="md" valign="top">(&nbsp;</td>
720          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a> &amp;&nbsp;</td>
721          <td class="mdname" nowrap> <em>srcBuffer</em>, </td>
722        </tr>
723        <tr>
724          <td class="md" nowrap align="right"></td>
725          <td></td>
726          <td class="md" nowrap>size_t&nbsp;</td>
727          <td class="mdname" nowrap> <em>srcOffset</em>, </td>
728        </tr>
729        <tr>
730          <td class="md" nowrap align="right"></td>
731          <td></td>
732          <td class="md" nowrap>size_t&nbsp;</td>
733          <td class="mdname" nowrap> <em>dstOffset</em>, </td>
734        </tr>
735        <tr>
736          <td class="md" nowrap align="right"></td>
737          <td></td>
738          <td class="md" nowrap>size_t&nbsp;</td>
739          <td class="mdname" nowrap> <em>length</em>, </td>
740        </tr>
741        <tr>
742          <td class="md" nowrap align="right"></td>
743          <td></td>
744          <td class="md" nowrap>bool&nbsp;</td>
745          <td class="mdname" nowrap> <em>discardWholeBuffer</em> = false</td>
746        </tr>
747        <tr>
748          <td></td>
749          <td class="md">)&nbsp;</td>
750          <td class="md" colspan="2"><code> [virtual, inherited]</code></td>
751        </tr>
752
753      </table>
754    </td>
755  </tr>
756</table>
757<table cellspacing=5 cellpadding=0 border=0>
758  <tr>
759    <td>
760      &nbsp;
761    </td>
762    <td>
763
764<p>
765Copy data from another buffer into this one.
766<p>
767<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>
768<dl compact><dt><b>Parameters:</b></dt><dd>
769  <table border="0" cellspacing="2" cellpadding="0">
770    <tr><td valign=top><em>srcBuffer</em>&nbsp;</td><td>The buffer from which to read the copied data </td></tr>
771    <tr><td valign=top><em>srcOffset</em>&nbsp;</td><td>Offset in the source buffer at which to start reading </td></tr>
772    <tr><td valign=top><em>dstOffset</em>&nbsp;</td><td>Offset in the destination buffer to start writing </td></tr>
773    <tr><td valign=top><em>length</em>&nbsp;</td><td>Length of the data to copy, in bytes. </td></tr>
774    <tr><td valign=top><em>discardWholeBuffer</em>&nbsp;</td><td>If true, will discard the entire contents of this buffer before copying</td></tr>
775  </table>
776</dl>
777
778<p>
779Definition 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>.
780<p>
781References <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>
782  </tr>
783</table>
784<a class="anchor" name="Ogre_1_1HardwarePixelBuffera4" doxytag="Ogre::HardwarePixelBuffer::getCurrentLock" ></a><p>
785<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
786  <tr>
787    <td class="mdRow">
788      <table cellpadding="0" cellspacing="0" border="0">
789        <tr>
790          <td class="md" nowrap valign="top"> const <a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a>&amp; Ogre::HardwarePixelBuffer::getCurrentLock </td>
791          <td class="md" valign="top">(&nbsp;</td>
792          <td class="mdname1" valign="top" nowrap>          </td>
793          <td class="md" valign="top">&nbsp;)&nbsp;</td>
794          <td class="md" nowrap></td>
795        </tr>
796
797      </table>
798    </td>
799  </tr>
800</table>
801<table cellspacing=5 cellpadding=0 border=0>
802  <tr>
803    <td>
804      &nbsp;
805    </td>
806    <td>
807
808<p>
809Get the current locked region.
810<p>
811This is the same value as returned by lock(const Image::Box, LockOptions) <dl compact><dt><b>Returns:</b></dt><dd><a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> containing the locked region</dd></dl>
812    </td>
813  </tr>
814</table>
815<a class="anchor" name="Ogre_1_1HardwarePixelBuffera15" doxytag="Ogre::HardwarePixelBuffer::getDepth" ></a><p>
816<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
817  <tr>
818    <td class="mdRow">
819      <table cellpadding="0" cellspacing="0" border="0">
820        <tr>
821          <td class="md" nowrap valign="top"> size_t Ogre::HardwarePixelBuffer::getDepth </td>
822          <td class="md" valign="top">(&nbsp;</td>
823          <td class="mdname1" valign="top" nowrap>          </td>
824          <td class="md" valign="top">&nbsp;)&nbsp;</td>
825          <td class="md" nowrap> const</td>
826        </tr>
827
828      </table>
829    </td>
830  </tr>
831</table>
832<table cellspacing=5 cellpadding=0 border=0>
833  <tr>
834    <td>
835      &nbsp;
836    </td>
837    <td>
838
839<p>
840Gets the depth of this buffer.
841<p>
842
843<p>
844Definition at line <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00167">167</a> of file <a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a>.
845<p>
846Referenced by <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00114">blit()</a>.    </td>
847  </tr>
848</table>
849<a class="anchor" name="Ogre_1_1HardwarePixelBuffera16" doxytag="Ogre::HardwarePixelBuffer::getFormat" ></a><p>
850<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
851  <tr>
852    <td class="mdRow">
853      <table cellpadding="0" cellspacing="0" border="0">
854        <tr>
855          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a667">PixelFormat</a> Ogre::HardwarePixelBuffer::getFormat </td>
856          <td class="md" valign="top">(&nbsp;</td>
857          <td class="mdname1" valign="top" nowrap>          </td>
858          <td class="md" valign="top">&nbsp;)&nbsp;</td>
859          <td class="md" nowrap> const</td>
860        </tr>
861
862      </table>
863    </td>
864  </tr>
865</table>
866<table cellspacing=5 cellpadding=0 border=0>
867  <tr>
868    <td>
869      &nbsp;
870    </td>
871    <td>
872
873<p>
874Gets the native pixel format of this buffer.
875<p>
876
877<p>
878Definition at line <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00169">169</a> of file <a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a>.
879<p>
880References <a class="el" href="OgrePixelFormat_8h-source.html#l00033">Ogre::PixelFormat</a>.    </td>
881  </tr>
882</table>
883<a class="anchor" name="Ogre_1_1HardwarePixelBuffera14" doxytag="Ogre::HardwarePixelBuffer::getHeight" ></a><p>
884<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
885  <tr>
886    <td class="mdRow">
887      <table cellpadding="0" cellspacing="0" border="0">
888        <tr>
889          <td class="md" nowrap valign="top"> size_t Ogre::HardwarePixelBuffer::getHeight </td>
890          <td class="md" valign="top">(&nbsp;</td>
891          <td class="mdname1" valign="top" nowrap>          </td>
892          <td class="md" valign="top">&nbsp;)&nbsp;</td>
893          <td class="md" nowrap> const</td>
894        </tr>
895
896      </table>
897    </td>
898  </tr>
899</table>
900<table cellspacing=5 cellpadding=0 border=0>
901  <tr>
902    <td>
903      &nbsp;
904    </td>
905    <td>
906
907<p>
908Gets the height of this buffer.
909<p>
910
911<p>
912Definition at line <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00165">165</a> of file <a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a>.
913<p>
914Referenced by <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00114">blit()</a>.    </td>
915  </tr>
916</table>
917<a class="anchor" name="Ogre_1_1HardwareVertexBuffera11" doxytag="Ogre::HardwarePixelBuffer::getSizeInBytes" ></a><p>
918<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
919  <tr>
920    <td class="mdRow">
921      <table cellpadding="0" cellspacing="0" border="0">
922        <tr>
923          <td class="md" nowrap valign="top"> size_t Ogre::HardwareBuffer::getSizeInBytes </td>
924          <td class="md" valign="top">(&nbsp;</td>
925          <td class="md" nowrap valign="top">void&nbsp;</td>
926          <td class="mdname1" valign="top" nowrap>          </td>
927          <td class="md" valign="top">&nbsp;)&nbsp;</td>
928          <td class="md" nowrap> const<code> [inherited]</code></td>
929        </tr>
930
931      </table>
932    </td>
933  </tr>
934</table>
935<table cellspacing=5 cellpadding=0 border=0>
936  <tr>
937    <td>
938      &nbsp;
939    </td>
940    <td>
941
942<p>
943Returns the size of this buffer in bytes.
944<p>
945
946<p>
947Definition 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>
948  </tr>
949</table>
950<a class="anchor" name="Ogre_1_1HardwareVertexBuffera12" doxytag="Ogre::HardwarePixelBuffer::getUsage" ></a><p>
951<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
952  <tr>
953    <td class="mdRow">
954      <table cellpadding="0" cellspacing="0" border="0">
955        <tr>
956          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw11">Usage</a> Ogre::HardwareBuffer::getUsage </td>
957          <td class="md" valign="top">(&nbsp;</td>
958          <td class="md" nowrap valign="top">void&nbsp;</td>
959          <td class="mdname1" valign="top" nowrap>          </td>
960          <td class="md" valign="top">&nbsp;)&nbsp;</td>
961          <td class="md" nowrap> const<code> [inherited]</code></td>
962        </tr>
963
964      </table>
965    </td>
966  </tr>
967</table>
968<table cellspacing=5 cellpadding=0 border=0>
969  <tr>
970    <td>
971      &nbsp;
972    </td>
973    <td>
974
975<p>
976Returns the Usage flags with which this buffer was created.
977<p>
978
979<p>
980Definition 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>
981  </tr>
982</table>
983<a class="anchor" name="Ogre_1_1HardwarePixelBuffera13" doxytag="Ogre::HardwarePixelBuffer::getWidth" ></a><p>
984<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
985  <tr>
986    <td class="mdRow">
987      <table cellpadding="0" cellspacing="0" border="0">
988        <tr>
989          <td class="md" nowrap valign="top"> size_t Ogre::HardwarePixelBuffer::getWidth </td>
990          <td class="md" valign="top">(&nbsp;</td>
991          <td class="mdname1" valign="top" nowrap>          </td>
992          <td class="md" valign="top">&nbsp;)&nbsp;</td>
993          <td class="md" nowrap> const</td>
994        </tr>
995
996      </table>
997    </td>
998  </tr>
999</table>
1000<table cellspacing=5 cellpadding=0 border=0>
1001  <tr>
1002    <td>
1003      &nbsp;
1004    </td>
1005    <td>
1006
1007<p>
1008Gets the width of this buffer.
1009<p>
1010
1011<p>
1012Definition at line <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00163">163</a> of file <a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a>.
1013<p>
1014Referenced by <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00114">blit()</a>.    </td>
1015  </tr>
1016</table>
1017<a class="anchor" name="Ogre_1_1HardwareVertexBuffera14" doxytag="Ogre::HardwarePixelBuffer::hasShadowBuffer" ></a><p>
1018<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1019  <tr>
1020    <td class="mdRow">
1021      <table cellpadding="0" cellspacing="0" border="0">
1022        <tr>
1023          <td class="md" nowrap valign="top"> bool Ogre::HardwareBuffer::hasShadowBuffer </td>
1024          <td class="md" valign="top">(&nbsp;</td>
1025          <td class="md" nowrap valign="top">void&nbsp;</td>
1026          <td class="mdname1" valign="top" nowrap>          </td>
1027          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1028          <td class="md" nowrap> const<code> [inherited]</code></td>
1029        </tr>
1030
1031      </table>
1032    </td>
1033  </tr>
1034</table>
1035<table cellspacing=5 cellpadding=0 border=0>
1036  <tr>
1037    <td>
1038      &nbsp;
1039    </td>
1040    <td>
1041
1042<p>
1043Returns whether this buffer has a system memory shadow for quicker reading.
1044<p>
1045
1046<p>
1047Definition 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>
1048  </tr>
1049</table>
1050<a class="anchor" name="Ogre_1_1HardwareVertexBuffera15" doxytag="Ogre::HardwarePixelBuffer::isLocked" ></a><p>
1051<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1052  <tr>
1053    <td class="mdRow">
1054      <table cellpadding="0" cellspacing="0" border="0">
1055        <tr>
1056          <td class="md" nowrap valign="top"> bool Ogre::HardwareBuffer::isLocked </td>
1057          <td class="md" valign="top">(&nbsp;</td>
1058          <td class="md" nowrap valign="top">void&nbsp;</td>
1059          <td class="mdname1" valign="top" nowrap>          </td>
1060          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1061          <td class="md" nowrap> const<code> [inherited]</code></td>
1062        </tr>
1063
1064      </table>
1065    </td>
1066  </tr>
1067</table>
1068<table cellspacing=5 cellpadding=0 border=0>
1069  <tr>
1070    <td>
1071      &nbsp;
1072    </td>
1073    <td>
1074
1075<p>
1076Returns whether or not this buffer is currently locked.
1077<p>
1078
1079<p>
1080Definition 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>
1081  </tr>
1082</table>
1083<a class="anchor" name="Ogre_1_1HardwareVertexBuffera13" doxytag="Ogre::HardwarePixelBuffer::isSystemMemory" ></a><p>
1084<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1085  <tr>
1086    <td class="mdRow">
1087      <table cellpadding="0" cellspacing="0" border="0">
1088        <tr>
1089          <td class="md" nowrap valign="top"> bool Ogre::HardwareBuffer::isSystemMemory </td>
1090          <td class="md" valign="top">(&nbsp;</td>
1091          <td class="md" nowrap valign="top">void&nbsp;</td>
1092          <td class="mdname1" valign="top" nowrap>          </td>
1093          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1094          <td class="md" nowrap> const<code> [inherited]</code></td>
1095        </tr>
1096
1097      </table>
1098    </td>
1099  </tr>
1100</table>
1101<table cellspacing=5 cellpadding=0 border=0>
1102  <tr>
1103    <td>
1104      &nbsp;
1105    </td>
1106    <td>
1107
1108<p>
1109Returns whether this buffer is held in system memory.
1110<p>
1111
1112<p>
1113Definition 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>
1114  </tr>
1115</table>
1116<a class="anchor" name="Ogre_1_1HardwarePixelBuffera18" doxytag="Ogre::HardwarePixelBuffer::lock" ></a><p>
1117<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1118  <tr>
1119    <td class="mdRow">
1120      <table cellpadding="0" cellspacing="0" border="0">
1121        <tr>
1122          <td class="md" nowrap valign="top"> void* Ogre::HardwareBuffer::lock </td>
1123          <td class="md" valign="top">(&nbsp;</td>
1124          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a>&nbsp;</td>
1125          <td class="mdname1" valign="top" nowrap> <em>options</em>          </td>
1126          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1127          <td class="md" nowrap></td>
1128        </tr>
1129
1130      </table>
1131    </td>
1132  </tr>
1133</table>
1134<table cellspacing=5 cellpadding=0 border=0>
1135  <tr>
1136    <td>
1137      &nbsp;
1138    </td>
1139    <td>
1140
1141<p>
1142make every lock method from <a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a> available.
1143<p>
1144See <a href="http://www.research.att.com/~bs/bs_faq2.html#overloadderived">http://www.research.att.com/~bs/bs_faq2.html#overloadderived</a>
1145<p>
1146Definition 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>
1147  </tr>
1148</table>
1149<a class="anchor" name="Ogre_1_1HardwarePixelBuffera17" doxytag="Ogre::HardwarePixelBuffer::lock" ></a><p>
1150<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1151  <tr>
1152    <td class="mdRow">
1153      <table cellpadding="0" cellspacing="0" border="0">
1154        <tr>
1155          <td class="md" nowrap valign="top"> virtual void* Ogre::HardwareBuffer::lock </td>
1156          <td class="md" valign="top">(&nbsp;</td>
1157          <td class="md" nowrap valign="top">size_t&nbsp;</td>
1158          <td class="mdname" nowrap> <em>offset</em>, </td>
1159        </tr>
1160        <tr>
1161          <td class="md" nowrap align="right"></td>
1162          <td></td>
1163          <td class="md" nowrap>size_t&nbsp;</td>
1164          <td class="mdname" nowrap> <em>length</em>, </td>
1165        </tr>
1166        <tr>
1167          <td class="md" nowrap align="right"></td>
1168          <td></td>
1169          <td class="md" nowrap><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a>&nbsp;</td>
1170          <td class="mdname" nowrap> <em>options</em></td>
1171        </tr>
1172        <tr>
1173          <td></td>
1174          <td class="md">)&nbsp;</td>
1175          <td class="md" colspan="2"></td>
1176        </tr>
1177
1178      </table>
1179    </td>
1180  </tr>
1181</table>
1182<table cellspacing=5 cellpadding=0 border=0>
1183  <tr>
1184    <td>
1185      &nbsp;
1186    </td>
1187    <td>
1188
1189<p>
1190make every lock method from <a class="el" href="classOgre_1_1HardwareBuffer.html">HardwareBuffer</a> available.
1191<p>
1192See <a href="http://www.research.att.com/~bs/bs_faq2.html#overloadderived">http://www.research.att.com/~bs/bs_faq2.html#overloadderived</a>
1193<p>
1194Definition 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>.    </td>
1195  </tr>
1196</table>
1197<a class="anchor" name="Ogre_1_1HardwarePixelBuffera3" doxytag="Ogre::HardwarePixelBuffer::lock" ></a><p>
1198<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1199  <tr>
1200    <td class="mdRow">
1201      <table cellpadding="0" cellspacing="0" border="0">
1202        <tr>
1203          <td class="md" nowrap valign="top"> virtual void* Ogre::HardwarePixelBuffer::lock </td>
1204          <td class="md" valign="top">(&nbsp;</td>
1205          <td class="md" nowrap valign="top">size_t&nbsp;</td>
1206          <td class="mdname" nowrap> <em>offset</em>, </td>
1207        </tr>
1208        <tr>
1209          <td class="md" nowrap align="right"></td>
1210          <td></td>
1211          <td class="md" nowrap>size_t&nbsp;</td>
1212          <td class="mdname" nowrap> <em>length</em>, </td>
1213        </tr>
1214        <tr>
1215          <td class="md" nowrap align="right"></td>
1216          <td></td>
1217          <td class="md" nowrap><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a>&nbsp;</td>
1218          <td class="mdname" nowrap> <em>options</em></td>
1219        </tr>
1220        <tr>
1221          <td></td>
1222          <td class="md">)&nbsp;</td>
1223          <td class="md" colspan="2"><code> [virtual]</code></td>
1224        </tr>
1225
1226      </table>
1227    </td>
1228  </tr>
1229</table>
1230<table cellspacing=5 cellpadding=0 border=0>
1231  <tr>
1232    <td>
1233      &nbsp;
1234    </td>
1235    <td>
1236
1237<p>
1238<dl compact><dt><b>Parameters:</b></dt><dd>
1239  <table border="0" cellspacing="2" cellpadding="0">
1240    <tr><td valign=top><em>offset</em>&nbsp;</td><td>The byte offset from the start of the buffer to lock </td></tr>
1241    <tr><td valign=top><em>length</em>&nbsp;</td><td>The size of the area to lock, in bytes </td></tr>
1242    <tr><td valign=top><em>options</em>&nbsp;</td><td>Locking options </td></tr>
1243  </table>
1244</dl>
1245<dl compact><dt><b>Returns:</b></dt><dd>Pointer to the locked memory </dd></dl>
1246 
1247<p>
1248
1249<p>
1250Reimplemented from <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera4">Ogre::HardwareBuffer</a>.    </td>
1251  </tr>
1252</table>
1253<a class="anchor" name="Ogre_1_1HardwarePixelBuffera2" doxytag="Ogre::HardwarePixelBuffer::lock" ></a><p>
1254<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1255  <tr>
1256    <td class="mdRow">
1257      <table cellpadding="0" cellspacing="0" border="0">
1258        <tr>
1259          <td class="md" nowrap valign="top"> virtual const <a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a>&amp; Ogre::HardwarePixelBuffer::lock </td>
1260          <td class="md" valign="top">(&nbsp;</td>
1261          <td class="md" nowrap valign="top">const <a class="el" href="structOgre_1_1Box.html">Image::Box</a> &amp;&nbsp;</td>
1262          <td class="mdname" nowrap> <em>lockBox</em>, </td>
1263        </tr>
1264        <tr>
1265          <td class="md" nowrap align="right"></td>
1266          <td></td>
1267          <td class="md" nowrap><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a>&nbsp;</td>
1268          <td class="mdname" nowrap> <em>options</em></td>
1269        </tr>
1270        <tr>
1271          <td></td>
1272          <td class="md">)&nbsp;</td>
1273          <td class="md" colspan="2"><code> [virtual]</code></td>
1274        </tr>
1275
1276      </table>
1277    </td>
1278  </tr>
1279</table>
1280<table cellspacing=5 cellpadding=0 border=0>
1281  <tr>
1282    <td>
1283      &nbsp;
1284    </td>
1285    <td>
1286
1287<p>
1288Lock the buffer for (potentially) reading / writing.
1289<p>
1290<dl compact><dt><b>Parameters:</b></dt><dd>
1291  <table border="0" cellspacing="2" cellpadding="0">
1292    <tr><td valign=top><em>lockBox</em>&nbsp;</td><td>Region of the buffer to lock </td></tr>
1293    <tr><td valign=top><em>options</em>&nbsp;</td><td>Locking options </td></tr>
1294  </table>
1295</dl>
1296<dl compact><dt><b>Returns:</b></dt><dd><a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> containing the locked region, the pitches and the pixel format</dd></dl>
1297    </td>
1298  </tr>
1299</table>
1300<a class="anchor" name="Ogre_1_1HardwarePixelBufferb1" doxytag="Ogre::HardwarePixelBuffer::lockImpl" ></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"> virtual void* Ogre::HardwarePixelBuffer::lockImpl </td>
1307          <td class="md" valign="top">(&nbsp;</td>
1308          <td class="md" nowrap valign="top">size_t&nbsp;</td>
1309          <td class="mdname" nowrap> <em>offset</em>, </td>
1310        </tr>
1311        <tr>
1312          <td class="md" nowrap align="right"></td>
1313          <td></td>
1314          <td class="md" nowrap>size_t&nbsp;</td>
1315          <td class="mdname" nowrap> <em>length</em>, </td>
1316        </tr>
1317        <tr>
1318          <td class="md" nowrap align="right"></td>
1319          <td></td>
1320          <td class="md" nowrap><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a>&nbsp;</td>
1321          <td class="mdname" nowrap> <em>options</em></td>
1322        </tr>
1323        <tr>
1324          <td></td>
1325          <td class="md">)&nbsp;</td>
1326          <td class="md" colspan="2"><code> [protected, virtual]</code></td>
1327        </tr>
1328
1329      </table>
1330    </td>
1331  </tr>
1332</table>
1333<table cellspacing=5 cellpadding=0 border=0>
1334  <tr>
1335    <td>
1336      &nbsp;
1337    </td>
1338    <td>
1339
1340<p>
1341Internal implementation of <a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera2">lock()</a>, do not OVERRIDE or CALL this for <a class="el" href="classOgre_1_1HardwarePixelBuffer.html">HardwarePixelBuffer</a> implementations, but override the previous method.
1342<p>
1343
1344<p>
1345Implements <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferb0">Ogre::HardwareBuffer</a>.    </td>
1346  </tr>
1347</table>
1348<a class="anchor" name="Ogre_1_1HardwarePixelBufferb0" doxytag="Ogre::HardwarePixelBuffer::lockImpl" ></a><p>
1349<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1350  <tr>
1351    <td class="mdRow">
1352      <table cellpadding="0" cellspacing="0" border="0">
1353        <tr>
1354          <td class="md" nowrap valign="top"> virtual <a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> Ogre::HardwarePixelBuffer::lockImpl </td>
1355          <td class="md" valign="top">(&nbsp;</td>
1356          <td class="md" nowrap valign="top">const <a class="el" href="structOgre_1_1Box.html">Image::Box</a>&nbsp;</td>
1357          <td class="mdname" nowrap> <em>lockBox</em>, </td>
1358        </tr>
1359        <tr>
1360          <td class="md" nowrap align="right"></td>
1361          <td></td>
1362          <td class="md" nowrap><a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBufferw12">LockOptions</a>&nbsp;</td>
1363          <td class="mdname" nowrap> <em>options</em></td>
1364        </tr>
1365        <tr>
1366          <td></td>
1367          <td class="md">)&nbsp;</td>
1368          <td class="md" colspan="2"><code> [protected, pure virtual]</code></td>
1369        </tr>
1370
1371      </table>
1372    </td>
1373  </tr>
1374</table>
1375<table cellspacing=5 cellpadding=0 border=0>
1376  <tr>
1377    <td>
1378      &nbsp;
1379    </td>
1380    <td>
1381
1382<p>
1383Internal implementation of <a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBuffera2">lock()</a>, must be overridden in subclasses.
1384<p>
1385
1386<p>
1387Implemented in <a class="el" href="classOgre_1_1D3D7HardwarePixelBuffer.html#Ogre_1_1D3D7HardwarePixelBufferb0">Ogre::D3D7HardwarePixelBuffer</a>, <a class="el" href="classOgre_1_1D3D9HardwarePixelBuffer.html#Ogre_1_1D3D9HardwarePixelBufferb0">Ogre::D3D9HardwarePixelBuffer</a>, and <a class="el" href="classOgre_1_1GLHardwarePixelBuffer.html#Ogre_1_1GLHardwarePixelBufferb0">Ogre::GLHardwarePixelBuffer</a>.    </td>
1388  </tr>
1389</table>
1390<a class="anchor" name="Ogre_1_1HardwarePixelBuffera5" doxytag="Ogre::HardwarePixelBuffer::readData" ></a><p>
1391<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1392  <tr>
1393    <td class="mdRow">
1394      <table cellpadding="0" cellspacing="0" border="0">
1395        <tr>
1396          <td class="md" nowrap valign="top"> virtual void Ogre::HardwarePixelBuffer::readData </td>
1397          <td class="md" valign="top">(&nbsp;</td>
1398          <td class="md" nowrap valign="top">size_t&nbsp;</td>
1399          <td class="mdname" nowrap> <em>offset</em>, </td>
1400        </tr>
1401        <tr>
1402          <td class="md" nowrap align="right"></td>
1403          <td></td>
1404          <td class="md" nowrap>size_t&nbsp;</td>
1405          <td class="mdname" nowrap> <em>length</em>, </td>
1406        </tr>
1407        <tr>
1408          <td class="md" nowrap align="right"></td>
1409          <td></td>
1410          <td class="md" nowrap>void *&nbsp;</td>
1411          <td class="mdname" nowrap> <em>pDest</em></td>
1412        </tr>
1413        <tr>
1414          <td></td>
1415          <td class="md">)&nbsp;</td>
1416          <td class="md" colspan="2"><code> [virtual]</code></td>
1417        </tr>
1418
1419      </table>
1420    </td>
1421  </tr>
1422</table>
1423<table cellspacing=5 cellpadding=0 border=0>
1424  <tr>
1425    <td>
1426      &nbsp;
1427    </td>
1428    <td>
1429
1430<p>
1431<dl compact><dt><b>Parameters:</b></dt><dd>
1432  <table border="0" cellspacing="2" cellpadding="0">
1433    <tr><td valign=top><em>offset</em>&nbsp;</td><td>The byte offset from the start of the buffer to read </td></tr>
1434    <tr><td valign=top><em>length</em>&nbsp;</td><td>The size of the area to read, in bytes </td></tr>
1435    <tr><td valign=top><em>pDest</em>&nbsp;</td><td>The area of memory in which to place the data, must be large enough to accommodate the data!</td></tr>
1436  </table>
1437</dl>
1438 
1439<p>
1440
1441<p>
1442Implements <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera7">Ogre::HardwareBuffer</a>.    </td>
1443  </tr>
1444</table>
1445<a class="anchor" name="Ogre_1_1HardwareVertexBuffera16" doxytag="Ogre::HardwarePixelBuffer::suppressHardwareUpdate" ></a><p>
1446<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1447  <tr>
1448    <td class="mdRow">
1449      <table cellpadding="0" cellspacing="0" border="0">
1450        <tr>
1451          <td class="md" nowrap valign="top"> void Ogre::HardwareBuffer::suppressHardwareUpdate </td>
1452          <td class="md" valign="top">(&nbsp;</td>
1453          <td class="md" nowrap valign="top">bool&nbsp;</td>
1454          <td class="mdname1" valign="top" nowrap> <em>suppress</em>          </td>
1455          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1456          <td class="md" nowrap><code> [inherited]</code></td>
1457        </tr>
1458
1459      </table>
1460    </td>
1461  </tr>
1462</table>
1463<table cellspacing=5 cellpadding=0 border=0>
1464  <tr>
1465    <td>
1466      &nbsp;
1467    </td>
1468    <td>
1469
1470<p>
1471<a class="el" href="classOgre_1_1Pass.html">Pass</a> true to suppress hardware upload of shadow buffer changes.
1472<p>
1473
1474<p>
1475Definition 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>
1476  </tr>
1477</table>
1478<a class="anchor" name="Ogre_1_1HardwareVertexBuffera6" doxytag="Ogre::HardwarePixelBuffer::unlock" ></a><p>
1479<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1480  <tr>
1481    <td class="mdRow">
1482      <table cellpadding="0" cellspacing="0" border="0">
1483        <tr>
1484          <td class="md" nowrap valign="top"> virtual void Ogre::HardwareBuffer::unlock </td>
1485          <td class="md" valign="top">(&nbsp;</td>
1486          <td class="md" nowrap valign="top">void&nbsp;</td>
1487          <td class="mdname1" valign="top" nowrap>          </td>
1488          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1489          <td class="md" nowrap><code> [virtual, inherited]</code></td>
1490        </tr>
1491
1492      </table>
1493    </td>
1494  </tr>
1495</table>
1496<table cellspacing=5 cellpadding=0 border=0>
1497  <tr>
1498    <td>
1499      &nbsp;
1500    </td>
1501    <td>
1502
1503<p>
1504Releases the lock on this buffer.
1505<p>
1506<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>
1507<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>
1508
1509<p>
1510Reimplemented 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>.
1511<p>
1512Definition 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>.
1513<p>
1514Referenced by <a class="el" href="OgreHardwareBuffer_8h-source.html#l00265">Ogre::HardwareBuffer::copyData()</a>.    </td>
1515  </tr>
1516</table>
1517<a class="anchor" name="Ogre_1_1HardwareVertexBufferb1" doxytag="Ogre::HardwarePixelBuffer::unlockImpl" ></a><p>
1518<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1519  <tr>
1520    <td class="mdRow">
1521      <table cellpadding="0" cellspacing="0" border="0">
1522        <tr>
1523          <td class="md" nowrap valign="top"> virtual void Ogre::HardwareBuffer::unlockImpl </td>
1524          <td class="md" valign="top">(&nbsp;</td>
1525          <td class="md" nowrap valign="top">void&nbsp;</td>
1526          <td class="mdname1" valign="top" nowrap>          </td>
1527          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1528          <td class="md" nowrap><code> [protected, pure virtual, inherited]</code></td>
1529        </tr>
1530
1531      </table>
1532    </td>
1533  </tr>
1534</table>
1535<table cellspacing=5 cellpadding=0 border=0>
1536  <tr>
1537    <td>
1538      &nbsp;
1539    </td>
1540    <td>
1541
1542<p>
1543Internal implementation of <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera6">unlock()</a>.
1544<p>
1545
1546<p>
1547Implemented in <a class="el" href="classOgre_1_1DefaultHardwareVertexBuffer.html#Ogre_1_1DefaultHardwareVertexBufferb1">Ogre::DefaultHardwareVertexBuffer</a>, <a class="el" href="classOgre_1_1DefaultHardwareIndexBuffer.html#Ogre_1_1DefaultHardwareIndexBufferb1">Ogre::DefaultHardwareIndexBuffer</a>, <a class="el" href="classOgre_1_1D3D7HardwarePixelBuffer.html#Ogre_1_1D3D7HardwarePixelBufferb1">Ogre::D3D7HardwarePixelBuffer</a>, <a class="el" href="classOgre_1_1D3D9HardwareIndexBuffer.html#Ogre_1_1D3D9HardwareIndexBufferb1">Ogre::D3D9HardwareIndexBuffer</a>, <a class="el" href="classOgre_1_1D3D9HardwarePixelBuffer.html#Ogre_1_1D3D9HardwarePixelBufferb1">Ogre::D3D9HardwarePixelBuffer</a>, <a class="el" href="classOgre_1_1D3D9HardwareVertexBuffer.html#Ogre_1_1D3D9HardwareVertexBufferb1">Ogre::D3D9HardwareVertexBuffer</a>, <a class="el" href="classOgre_1_1GLDefaultHardwareVertexBuffer.html#Ogre_1_1GLDefaultHardwareVertexBufferb1">Ogre::GLDefaultHardwareVertexBuffer</a>, <a class="el" href="classOgre_1_1GLDefaultHardwareIndexBuffer.html#Ogre_1_1GLDefaultHardwareIndexBufferb1">Ogre::GLDefaultHardwareIndexBuffer</a>, <a class="el" href="classOgre_1_1GLHardwareIndexBuffer.html#Ogre_1_1GLHardwareIndexBufferb1">Ogre::GLHardwareIndexBuffer</a>, <a class="el" href="classOgre_1_1GLHardwarePixelBuffer.html#Ogre_1_1GLHardwarePixelBufferb1">Ogre::GLHardwarePixelBuffer</a>, and <a class="el" href="classOgre_1_1GLHardwareVertexBuffer.html#Ogre_1_1GLHardwareVertexBufferb1">Ogre::GLHardwareVertexBuffer</a>.    </td>
1548  </tr>
1549</table>
1550<a class="anchor" name="Ogre_1_1HardwarePixelBuffera6" doxytag="Ogre::HardwarePixelBuffer::writeData" ></a><p>
1551<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1552  <tr>
1553    <td class="mdRow">
1554      <table cellpadding="0" cellspacing="0" border="0">
1555        <tr>
1556          <td class="md" nowrap valign="top"> virtual void Ogre::HardwarePixelBuffer::writeData </td>
1557          <td class="md" valign="top">(&nbsp;</td>
1558          <td class="md" nowrap valign="top">size_t&nbsp;</td>
1559          <td class="mdname" nowrap> <em>offset</em>, </td>
1560        </tr>
1561        <tr>
1562          <td class="md" nowrap align="right"></td>
1563          <td></td>
1564          <td class="md" nowrap>size_t&nbsp;</td>
1565          <td class="mdname" nowrap> <em>length</em>, </td>
1566        </tr>
1567        <tr>
1568          <td class="md" nowrap align="right"></td>
1569          <td></td>
1570          <td class="md" nowrap>const void *&nbsp;</td>
1571          <td class="mdname" nowrap> <em>pSource</em>, </td>
1572        </tr>
1573        <tr>
1574          <td class="md" nowrap align="right"></td>
1575          <td></td>
1576          <td class="md" nowrap>bool&nbsp;</td>
1577          <td class="mdname" nowrap> <em>discardWholeBuffer</em> = false</td>
1578        </tr>
1579        <tr>
1580          <td></td>
1581          <td class="md">)&nbsp;</td>
1582          <td class="md" colspan="2"><code> [virtual]</code></td>
1583        </tr>
1584
1585      </table>
1586    </td>
1587  </tr>
1588</table>
1589<table cellspacing=5 cellpadding=0 border=0>
1590  <tr>
1591    <td>
1592      &nbsp;
1593    </td>
1594    <td>
1595
1596<p>
1597<dl compact><dt><b>Parameters:</b></dt><dd>
1598  <table border="0" cellspacing="2" cellpadding="0">
1599    <tr><td valign=top><em>offset</em>&nbsp;</td><td>The byte offset from the start of the buffer to start writing </td></tr>
1600    <tr><td valign=top><em>length</em>&nbsp;</td><td>The size of the data to write to, in bytes </td></tr>
1601    <tr><td valign=top><em>pSource</em>&nbsp;</td><td>The source of the data to be written </td></tr>
1602    <tr><td valign=top><em>discardWholeBuffer</em>&nbsp;</td><td>If true, this allows the driver to discard the entire buffer when writing, such that DMA stalls can be avoided; use if you can.</td></tr>
1603  </table>
1604</dl>
1605 
1606<p>
1607
1608<p>
1609Implements <a class="el" href="classOgre_1_1HardwareBuffer.html#Ogre_1_1HardwareVertexBuffera8">Ogre::HardwareBuffer</a>.    </td>
1610  </tr>
1611</table>
1612<hr><h2>Member Data Documentation</h2>
1613<a class="anchor" name="Ogre_1_1HardwarePixelBufferp6" doxytag="Ogre::HardwarePixelBuffer::mCurrentLock" ></a><p>
1614<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1615  <tr>
1616    <td class="mdRow">
1617      <table cellpadding="0" cellspacing="0" border="0">
1618        <tr>
1619          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1PixelBox.html">PixelBox</a> <a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp6">Ogre::HardwarePixelBuffer::mCurrentLock</a><code> [protected]</code>
1620      </table>
1621    </td>
1622  </tr>
1623</table>
1624<table cellspacing=5 cellpadding=0 border=0>
1625  <tr>
1626    <td>
1627      &nbsp;
1628    </td>
1629    <td>
1630
1631<p>
1632
1633<p>
1634Definition at line <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00052">52</a> of file <a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a>.    </td>
1635  </tr>
1636</table>
1637<a class="anchor" name="Ogre_1_1HardwarePixelBufferp2" doxytag="Ogre::HardwarePixelBuffer::mDepth" ></a><p>
1638<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1639  <tr>
1640    <td class="mdRow">
1641      <table cellpadding="0" cellspacing="0" border="0">
1642        <tr>
1643          <td class="md" nowrap valign="top"> size_t <a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp2">Ogre::HardwarePixelBuffer::mDepth</a><code> [protected]</code>
1644      </table>
1645    </td>
1646  </tr>
1647</table>
1648<table cellspacing=5 cellpadding=0 border=0>
1649  <tr>
1650    <td>
1651      &nbsp;
1652    </td>
1653    <td>
1654
1655<p>
1656
1657<p>
1658Definition at line <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00046">46</a> of file <a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a>.    </td>
1659  </tr>
1660</table>
1661<a class="anchor" name="Ogre_1_1HardwarePixelBufferp5" doxytag="Ogre::HardwarePixelBuffer::mFormat" ></a><p>
1662<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1663  <tr>
1664    <td class="mdRow">
1665      <table cellpadding="0" cellspacing="0" border="0">
1666        <tr>
1667          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a667">PixelFormat</a> <a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp5">Ogre::HardwarePixelBuffer::mFormat</a><code> [protected]</code>
1668      </table>
1669    </td>
1670  </tr>
1671</table>
1672<table cellspacing=5 cellpadding=0 border=0>
1673  <tr>
1674    <td>
1675      &nbsp;
1676    </td>
1677    <td>
1678
1679<p>
1680
1681<p>
1682Definition at line <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00050">50</a> of file <a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a>.    </td>
1683  </tr>
1684</table>
1685<a class="anchor" name="Ogre_1_1HardwarePixelBufferp1" doxytag="Ogre::HardwarePixelBuffer::mHeight" ></a><p>
1686<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1687  <tr>
1688    <td class="mdRow">
1689      <table cellpadding="0" cellspacing="0" border="0">
1690        <tr>
1691          <td class="md" nowrap valign="top"> size_t <a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp1">Ogre::HardwarePixelBuffer::mHeight</a><code> [protected]</code>
1692      </table>
1693    </td>
1694  </tr>
1695</table>
1696<table cellspacing=5 cellpadding=0 border=0>
1697  <tr>
1698    <td>
1699      &nbsp;
1700    </td>
1701    <td>
1702
1703<p>
1704
1705<p>
1706Definition at line <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00046">46</a> of file <a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a>.    </td>
1707  </tr>
1708</table>
1709<a class="anchor" name="Ogre_1_1HardwareVertexBufferp4" doxytag="Ogre::HardwarePixelBuffer::mIsLocked" ></a><p>
1710<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1711  <tr>
1712    <td class="mdRow">
1713      <table cellpadding="0" cellspacing="0" border="0">
1714        <tr>
1715          <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>
1716      </table>
1717    </td>
1718  </tr>
1719</table>
1720<table cellspacing=5 cellpadding=0 border=0>
1721  <tr>
1722    <td>
1723      &nbsp;
1724    </td>
1725    <td>
1726
1727<p>
1728
1729<p>
1730Definition 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>
1731  </tr>
1732</table>
1733<a class="anchor" name="Ogre_1_1HardwareVertexBufferp6" doxytag="Ogre::HardwarePixelBuffer::mLockSize" ></a><p>
1734<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1735  <tr>
1736    <td class="mdRow">
1737      <table cellpadding="0" cellspacing="0" border="0">
1738        <tr>
1739          <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>
1740      </table>
1741    </td>
1742  </tr>
1743</table>
1744<table cellspacing=5 cellpadding=0 border=0>
1745  <tr>
1746    <td>
1747      &nbsp;
1748    </td>
1749    <td>
1750
1751<p>
1752
1753<p>
1754Definition 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>
1755  </tr>
1756</table>
1757<a class="anchor" name="Ogre_1_1HardwareVertexBufferp5" doxytag="Ogre::HardwarePixelBuffer::mLockStart" ></a><p>
1758<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1759  <tr>
1760    <td class="mdRow">
1761      <table cellpadding="0" cellspacing="0" border="0">
1762        <tr>
1763          <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>
1764      </table>
1765    </td>
1766  </tr>
1767</table>
1768<table cellspacing=5 cellpadding=0 border=0>
1769  <tr>
1770    <td>
1771      &nbsp;
1772    </td>
1773    <td>
1774
1775<p>
1776
1777<p>
1778Definition 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>
1779  </tr>
1780</table>
1781<a class="anchor" name="Ogre_1_1HardwareVertexBufferp9" doxytag="Ogre::HardwarePixelBuffer::mpShadowBuffer" ></a><p>
1782<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1783  <tr>
1784    <td class="mdRow">
1785      <table cellpadding="0" cellspacing="0" border="0">
1786        <tr>
1787          <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>
1788      </table>
1789    </td>
1790  </tr>
1791</table>
1792<table cellspacing=5 cellpadding=0 border=0>
1793  <tr>
1794    <td>
1795      &nbsp;
1796    </td>
1797    <td>
1798
1799<p>
1800
1801<p>
1802Definition 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>
1803  </tr>
1804</table>
1805<a class="anchor" name="Ogre_1_1HardwarePixelBufferp3" doxytag="Ogre::HardwarePixelBuffer::mRowPitch" ></a><p>
1806<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1807  <tr>
1808    <td class="mdRow">
1809      <table cellpadding="0" cellspacing="0" border="0">
1810        <tr>
1811          <td class="md" nowrap valign="top"> size_t <a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp3">Ogre::HardwarePixelBuffer::mRowPitch</a><code> [protected]</code>
1812      </table>
1813    </td>
1814  </tr>
1815</table>
1816<table cellspacing=5 cellpadding=0 border=0>
1817  <tr>
1818    <td>
1819      &nbsp;
1820    </td>
1821    <td>
1822
1823<p>
1824
1825<p>
1826Definition at line <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00048">48</a> of file <a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a>.    </td>
1827  </tr>
1828</table>
1829<a class="anchor" name="Ogre_1_1HardwareVertexBufferp10" doxytag="Ogre::HardwarePixelBuffer::mShadowUpdated" ></a><p>
1830<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1831  <tr>
1832    <td class="mdRow">
1833      <table cellpadding="0" cellspacing="0" border="0">
1834        <tr>
1835          <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>
1836      </table>
1837    </td>
1838  </tr>
1839</table>
1840<table cellspacing=5 cellpadding=0 border=0>
1841  <tr>
1842    <td>
1843      &nbsp;
1844    </td>
1845    <td>
1846
1847<p>
1848
1849<p>
1850Definition 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>
1851  </tr>
1852</table>
1853<a class="anchor" name="Ogre_1_1HardwareVertexBufferp2" doxytag="Ogre::HardwarePixelBuffer::mSizeInBytes" ></a><p>
1854<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1855  <tr>
1856    <td class="mdRow">
1857      <table cellpadding="0" cellspacing="0" border="0">
1858        <tr>
1859          <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>
1860      </table>
1861    </td>
1862  </tr>
1863</table>
1864<table cellspacing=5 cellpadding=0 border=0>
1865  <tr>
1866    <td>
1867      &nbsp;
1868    </td>
1869    <td>
1870
1871<p>
1872
1873<p>
1874Definition 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>
1875  </tr>
1876</table>
1877<a class="anchor" name="Ogre_1_1HardwarePixelBufferp4" doxytag="Ogre::HardwarePixelBuffer::mSlicePitch" ></a><p>
1878<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1879  <tr>
1880    <td class="mdRow">
1881      <table cellpadding="0" cellspacing="0" border="0">
1882        <tr>
1883          <td class="md" nowrap valign="top"> size_t <a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp4">Ogre::HardwarePixelBuffer::mSlicePitch</a><code> [protected]</code>
1884      </table>
1885    </td>
1886  </tr>
1887</table>
1888<table cellspacing=5 cellpadding=0 border=0>
1889  <tr>
1890    <td>
1891      &nbsp;
1892    </td>
1893    <td>
1894
1895<p>
1896
1897<p>
1898Definition at line <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00048">48</a> of file <a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a>.    </td>
1899  </tr>
1900</table>
1901<a class="anchor" name="Ogre_1_1HardwareVertexBufferp11" doxytag="Ogre::HardwarePixelBuffer::mSuppressHardwareUpdate" ></a><p>
1902<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1903  <tr>
1904    <td class="mdRow">
1905      <table cellpadding="0" cellspacing="0" border="0">
1906        <tr>
1907          <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>
1908      </table>
1909    </td>
1910  </tr>
1911</table>
1912<table cellspacing=5 cellpadding=0 border=0>
1913  <tr>
1914    <td>
1915      &nbsp;
1916    </td>
1917    <td>
1918
1919<p>
1920
1921<p>
1922Definition 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>
1923  </tr>
1924</table>
1925<a class="anchor" name="Ogre_1_1HardwareVertexBufferp7" doxytag="Ogre::HardwarePixelBuffer::mSystemMemory" ></a><p>
1926<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1927  <tr>
1928    <td class="mdRow">
1929      <table cellpadding="0" cellspacing="0" border="0">
1930        <tr>
1931          <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>
1932      </table>
1933    </td>
1934  </tr>
1935</table>
1936<table cellspacing=5 cellpadding=0 border=0>
1937  <tr>
1938    <td>
1939      &nbsp;
1940    </td>
1941    <td>
1942
1943<p>
1944
1945<p>
1946Definition 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>
1947  </tr>
1948</table>
1949<a class="anchor" name="Ogre_1_1HardwareVertexBufferp3" doxytag="Ogre::HardwarePixelBuffer::mUsage" ></a><p>
1950<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1951  <tr>
1952    <td class="mdRow">
1953      <table cellpadding="0" cellspacing="0" border="0">
1954        <tr>
1955          <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>
1956      </table>
1957    </td>
1958  </tr>
1959</table>
1960<table cellspacing=5 cellpadding=0 border=0>
1961  <tr>
1962    <td>
1963      &nbsp;
1964    </td>
1965    <td>
1966
1967<p>
1968
1969<p>
1970Definition 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>
1971  </tr>
1972</table>
1973<a class="anchor" name="Ogre_1_1HardwareVertexBufferp8" doxytag="Ogre::HardwarePixelBuffer::mUseShadowBuffer" ></a><p>
1974<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1975  <tr>
1976    <td class="mdRow">
1977      <table cellpadding="0" cellspacing="0" border="0">
1978        <tr>
1979          <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>
1980      </table>
1981    </td>
1982  </tr>
1983</table>
1984<table cellspacing=5 cellpadding=0 border=0>
1985  <tr>
1986    <td>
1987      &nbsp;
1988    </td>
1989    <td>
1990
1991<p>
1992
1993<p>
1994Definition 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>
1995  </tr>
1996</table>
1997<a class="anchor" name="Ogre_1_1HardwarePixelBufferp0" doxytag="Ogre::HardwarePixelBuffer::mWidth" ></a><p>
1998<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1999  <tr>
2000    <td class="mdRow">
2001      <table cellpadding="0" cellspacing="0" border="0">
2002        <tr>
2003          <td class="md" nowrap valign="top"> size_t <a class="el" href="classOgre_1_1HardwarePixelBuffer.html#Ogre_1_1HardwarePixelBufferp0">Ogre::HardwarePixelBuffer::mWidth</a><code> [protected]</code>
2004      </table>
2005    </td>
2006  </tr>
2007</table>
2008<table cellspacing=5 cellpadding=0 border=0>
2009  <tr>
2010    <td>
2011      &nbsp;
2012    </td>
2013    <td>
2014
2015<p>
2016
2017<p>
2018Definition at line <a class="el" href="OgreHardwarePixelBuffer_8h-source.html#l00046">46</a> of file <a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a>.    </td>
2019  </tr>
2020</table>
2021<hr>The documentation for this class was generated from the following file:<ul>
2022<li><a class="el" href="OgreHardwarePixelBuffer_8h-source.html">OgreHardwarePixelBuffer.h</a></ul>
2023<hr>
2024<p>
2025Copyright &copy; 2000-2005 by The OGRE Team<br />
2026<!--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/>
2027This 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/>
2028                <!--/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#">
2029                <Work rdf:about="">
2030                        <license rdf:resource="http://creativecommons.org/licenses/by-sa/2.5/" />
2031        <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
2032                </Work>
2033                <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> -->
2034
2035Last modified Sun Feb 12 13:00:42 2006
2036</p>
2037</body>
2038</html>
Note: See TracBrowser for help on using the repository browser.