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

Revision 692, 104.8 KB checked in by mattausch, 18 years ago (diff)

adding ogre 1.2 and dependencies

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