1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml">
3<head>
4<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5
6<title>android::RSC::Allocation Class Reference</title>
7<link href="tabs.css" rel="stylesheet" type="text/css"/>
8<link href="doxygen.css" rel="stylesheet" type="text/css" />
9
10
11
12</head>
13<body>
14<div id="top"><!-- do not remove this div! -->
15
16
17<!-- Generated by Doxygen 1.7.5.1 -->
18  <div id="navrow1" class="tabs">
19    <ul class="tablist">
20      <li><a href="index.html"><span>Overview</span></a></li>
21      <li class="current"><a href="annotated.html"><span>Structs</span></a></li>
22    </ul>
23  </div>
24  <div id="nav-path" class="navpath">
25    <ul>
26      <li class="navelem"><b>android</b>      </li>
27      <li class="navelem"><b>RSC</b>      </li>
28      <li class="navelem"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>      </li>
29    </ul>
30  </div>
31</div>
32<div class="header">
33  <div class="summary">
34<a href="#pub-methods">Public Member Functions</a> &#124;
35<a href="#pub-static-methods">Static Public Member Functions</a>  </div>
36  <div class="headertitle">
37<div class="title">android::RSC::Allocation Class Reference</div>  </div>
38</div>
39<div class="contents">
40<!-- doxytag: class="android::RSC::Allocation" --><!-- doxytag: inherits="android::RSC::BaseObj" -->
41<p><code>#include &lt;<a class="el" href="rsCppStructs_8h_source.html">rsCppStructs.h</a>&gt;</code></p>
42<div class="dynheader">
43Inheritance diagram for android::RSC::Allocation:</div>
44<div class="dyncontent">
45 <div class="center">
46  <img src="classandroid_1_1RSC_1_1Allocation.png" usemap="#android::RSC::Allocation_map" alt=""/>
47  <map id="android::RSC::Allocation_map" name="android::RSC::Allocation_map">
48<area href="classandroid_1_1RSC_1_1BaseObj.html" alt="android::RSC::BaseObj" shape="rect" coords="0,0,148,24"/>
49</map>
50 </div></div>
51<table class="memberdecls">
52<tr><td colspan="2"><h2><a name="pub-methods"></a>
53Public Member Functions</h2></td></tr>
54<tr><td class="memItemLeft" align="right" valign="top">sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#a5475e41c9a50ece302e238e06e5ba8f4">getType</a> () const </td></tr>
55<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#a542d29449331bff6c8506b13c4daefeb">syncAll</a> (RsAllocationUsageType srcLocation)</td></tr>
56<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#a3c9f32ff3070f8a38e3a8c6e58ed7a82">generateMipmaps</a> ()</td></tr>
57<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#ae10efeb0624dbdf7f32c013f8eff2c74">copy1DRangeFrom</a> (uint32_t off, size_t count, const void *data)</td></tr>
58<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#a46890b1ca1cbb54c39b0958d515c782f">copy1DRangeFrom</a> (uint32_t off, size_t count, sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> &gt; data, uint32_t dataOff)</td></tr>
59<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#a70125eb0577744f64512da1f6bdec69e">copy1DRangeTo</a> (uint32_t off, size_t count, void *data)</td></tr>
60<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#ab3c6154ae194a83c7f639012d256d62d">copy1DFrom</a> (const void *data)</td></tr>
61<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#a6d2c79bd8b2f9a7b7036ae78e4b48ec4">copy1DTo</a> (void *data)</td></tr>
62<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#aa4a59cd1098771c205bbd23d4f3b1065">copy2DRangeFrom</a> (uint32_t xoff, uint32_t yoff, uint32_t w, uint32_t h, const void *data)</td></tr>
63<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#a7522ec325ad4b30948b8b060b7750517">copy2DRangeTo</a> (uint32_t xoff, uint32_t yoff, uint32_t w, uint32_t h, void *data)</td></tr>
64<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#a4cfe1bb1dac8dfde86f542f97e6d2e67">copy2DRangeFrom</a> (uint32_t xoff, uint32_t yoff, uint32_t w, uint32_t h, sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> &gt; data, uint32_t dataXoff, uint32_t dataYoff)</td></tr>
65<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#a5bb1d1b53dcc255beea566c50d34c3eb">copy2DStridedFrom</a> (uint32_t xoff, uint32_t yoff, uint32_t w, uint32_t h, const void *data, size_t stride)</td></tr>
66<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#aaee42c2bcc21d224191262025fa7bde2">copy2DStridedFrom</a> (const void *data, size_t stride)</td></tr>
67<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#ad4f2ce90d548f22d950002c9942833ca">copy2DStridedTo</a> (uint32_t xoff, uint32_t yoff, uint32_t w, uint32_t h, void *data, size_t stride)</td></tr>
68<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#a90c89953b5a38489718aec32937a95ac">copy2DStridedTo</a> (void *data, size_t stride)</td></tr>
69<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#ac0fe786fd3dc0d5e2278b6071ff78d84">copy3DRangeFrom</a> (uint32_t xoff, uint32_t yoff, uint32_t zoff, uint32_t w, uint32_t h, uint32_t d, const void *data)</td></tr>
70<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#acfc9d84ddfbbc02bdba706a1b63afd6b">copy3DRangeFrom</a> (uint32_t xoff, uint32_t yoff, uint32_t zoff, uint32_t w, uint32_t h, uint32_t d, sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> &gt; data, uint32_t dataXoff, uint32_t dataYoff, uint32_t dataZoff)</td></tr>
71<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
72Static Public Member Functions</h2></td></tr>
73<tr><td class="memItemLeft" align="right" valign="top">static sp&lt; <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#a983b914efa208763b4b58db62586f138">createTyped</a> (sp&lt; <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> &gt; rs, sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> &gt; type, RsAllocationMipmapControl mipmaps, uint32_t usage)</td></tr>
74<tr><td class="memItemLeft" align="right" valign="top">static sp&lt; <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#a8951e64fcb95241504a445fa293380e3">createTyped</a> (sp&lt; <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> &gt; rs, sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> &gt; type, RsAllocationMipmapControl mipmaps, uint32_t usage, void *pointer)</td></tr>
75<tr><td class="memItemLeft" align="right" valign="top">static sp&lt; <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#ae0c87f83e692ade1abba9a8db6d40aae">createTyped</a> (sp&lt; <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> &gt; rs, sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> &gt; type, uint32_t usage=RS_ALLOCATION_USAGE_SCRIPT)</td></tr>
76<tr><td class="memItemLeft" align="right" valign="top">static sp&lt; <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#afd281c4fccca4bf1f69dd2cbdfafb96c">createSized</a> (sp&lt; <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> &gt; rs, sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Element.html">Element</a> &gt; e, size_t count, uint32_t usage=RS_ALLOCATION_USAGE_SCRIPT)</td></tr>
77<tr><td class="memItemLeft" align="right" valign="top">static sp&lt; <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#aa20d012e4df254a06c595527e9203e75">createSized2D</a> (sp&lt; <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> &gt; rs, sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Element.html">Element</a> &gt; e, size_t x, size_t y, uint32_t usage=RS_ALLOCATION_USAGE_SCRIPT)</td></tr>
78</table>
79<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
80<div class="textblock"><p>This class provides the primary method through which data is passed to and from RenderScript kernels. An <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> provides the backing store for a given <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a>.</p>
81<p>An <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> also contains a set of usage flags that denote how the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> could be used. For example, an <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> may have usage flags specifying that it can be used from a script as well as input to a <a class="el" href="classandroid_1_1RSC_1_1Sampler.html">Sampler</a>. A developer must synchronize across these different usages using syncAll(int) in order to ensure that different users of the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> have a consistent view of memory. For example, in the case where an <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> is used as the output of one kernel and as <a class="el" href="classandroid_1_1RSC_1_1Sampler.html">Sampler</a> input in a later kernel, a developer must call syncAll(RS_ALLOCATION_USAGE_SCRIPT) prior to launching the second kernel to ensure correctness. </p>
82
83<p>Definition at line <a class="el" href="rsCppStructs_8h_source.html#l00293">293</a> of file <a class="el" href="rsCppStructs_8h_source.html">rsCppStructs.h</a>.</p>
84</div><hr/><h2>Member Function Documentation</h2>
85<a class="anchor" id="ab3c6154ae194a83c7f639012d256d62d"></a><!-- doxytag: member="android::RSC::Allocation::copy1DFrom" ref="ab3c6154ae194a83c7f639012d256d62d" args="(const void *data)" -->
86<div class="memitem">
87<div class="memproto">
88      <table class="memname">
89        <tr>
90          <td class="memname">void android::RSC::Allocation::copy1DFrom </td>
91          <td>(</td>
92          <td class="paramtype">const void *&#160;</td>
93          <td class="paramname"><em>data</em></td><td>)</td>
94          <td></td>
95        </tr>
96      </table>
97</div>
98<div class="memdoc">
99<p>Copy entire array to an <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>. </p>
100<dl><dt><b>Parameters:</b></dt><dd>
101  <table class="params">
102    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>array from which to copy </td></tr>
103  </table>
104  </dd>
105</dl>
106
107</div>
108</div>
109<a class="anchor" id="ae10efeb0624dbdf7f32c013f8eff2c74"></a><!-- doxytag: member="android::RSC::Allocation::copy1DRangeFrom" ref="ae10efeb0624dbdf7f32c013f8eff2c74" args="(uint32_t off, size_t count, const void *data)" -->
110<div class="memitem">
111<div class="memproto">
112      <table class="memname">
113        <tr>
114          <td class="memname">void android::RSC::Allocation::copy1DRangeFrom </td>
115          <td>(</td>
116          <td class="paramtype">uint32_t&#160;</td>
117          <td class="paramname"><em>off</em>, </td>
118        </tr>
119        <tr>
120          <td class="paramkey"></td>
121          <td></td>
122          <td class="paramtype">size_t&#160;</td>
123          <td class="paramname"><em>count</em>, </td>
124        </tr>
125        <tr>
126          <td class="paramkey"></td>
127          <td></td>
128          <td class="paramtype">const void *&#160;</td>
129          <td class="paramname"><em>data</em>&#160;</td>
130        </tr>
131        <tr>
132          <td></td>
133          <td>)</td>
134          <td></td><td></td>
135        </tr>
136      </table>
137</div>
138<div class="memdoc">
139<p>Copy an array into part of this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>. </p>
140<dl><dt><b>Parameters:</b></dt><dd>
141  <table class="params">
142    <tr><td class="paramdir">[in]</td><td class="paramname">off</td><td>offset of first <a class="el" href="classandroid_1_1RSC_1_1Element.html">Element</a> to be overwritten </td></tr>
143    <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>number of Elements to copy </td></tr>
144    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>array from which to copy </td></tr>
145  </table>
146  </dd>
147</dl>
148
149</div>
150</div>
151<a class="anchor" id="a46890b1ca1cbb54c39b0958d515c782f"></a><!-- doxytag: member="android::RSC::Allocation::copy1DRangeFrom" ref="a46890b1ca1cbb54c39b0958d515c782f" args="(uint32_t off, size_t count, sp&lt; const Allocation &gt; data, uint32_t dataOff)" -->
152<div class="memitem">
153<div class="memproto">
154      <table class="memname">
155        <tr>
156          <td class="memname">void android::RSC::Allocation::copy1DRangeFrom </td>
157          <td>(</td>
158          <td class="paramtype">uint32_t&#160;</td>
159          <td class="paramname"><em>off</em>, </td>
160        </tr>
161        <tr>
162          <td class="paramkey"></td>
163          <td></td>
164          <td class="paramtype">size_t&#160;</td>
165          <td class="paramname"><em>count</em>, </td>
166        </tr>
167        <tr>
168          <td class="paramkey"></td>
169          <td></td>
170          <td class="paramtype">sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> &gt;&#160;</td>
171          <td class="paramname"><em>data</em>, </td>
172        </tr>
173        <tr>
174          <td class="paramkey"></td>
175          <td></td>
176          <td class="paramtype">uint32_t&#160;</td>
177          <td class="paramname"><em>dataOff</em>&#160;</td>
178        </tr>
179        <tr>
180          <td></td>
181          <td>)</td>
182          <td></td><td></td>
183        </tr>
184      </table>
185</div>
186<div class="memdoc">
187<p>Copy part of an <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> into part of this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>. </p>
188<dl><dt><b>Parameters:</b></dt><dd>
189  <table class="params">
190    <tr><td class="paramdir">[in]</td><td class="paramname">off</td><td>offset of first <a class="el" href="classandroid_1_1RSC_1_1Element.html">Element</a> to be overwritten </td></tr>
191    <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>number of Elements to copy </td></tr>
192    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td><a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> from which to copy </td></tr>
193    <tr><td class="paramdir">[in]</td><td class="paramname">dataOff</td><td>offset of first <a class="el" href="classandroid_1_1RSC_1_1Element.html">Element</a> in data to copy </td></tr>
194  </table>
195  </dd>
196</dl>
197
198</div>
199</div>
200<a class="anchor" id="a70125eb0577744f64512da1f6bdec69e"></a><!-- doxytag: member="android::RSC::Allocation::copy1DRangeTo" ref="a70125eb0577744f64512da1f6bdec69e" args="(uint32_t off, size_t count, void *data)" -->
201<div class="memitem">
202<div class="memproto">
203      <table class="memname">
204        <tr>
205          <td class="memname">void android::RSC::Allocation::copy1DRangeTo </td>
206          <td>(</td>
207          <td class="paramtype">uint32_t&#160;</td>
208          <td class="paramname"><em>off</em>, </td>
209        </tr>
210        <tr>
211          <td class="paramkey"></td>
212          <td></td>
213          <td class="paramtype">size_t&#160;</td>
214          <td class="paramname"><em>count</em>, </td>
215        </tr>
216        <tr>
217          <td class="paramkey"></td>
218          <td></td>
219          <td class="paramtype">void *&#160;</td>
220          <td class="paramname"><em>data</em>&#160;</td>
221        </tr>
222        <tr>
223          <td></td>
224          <td>)</td>
225          <td></td><td></td>
226        </tr>
227      </table>
228</div>
229<div class="memdoc">
230<p>Copy an array into part of this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>. </p>
231<dl><dt><b>Parameters:</b></dt><dd>
232  <table class="params">
233    <tr><td class="paramdir">[in]</td><td class="paramname">off</td><td>offset of first <a class="el" href="classandroid_1_1RSC_1_1Element.html">Element</a> to be overwritten </td></tr>
234    <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>number of Elements to copy </td></tr>
235    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>array from which to copy </td></tr>
236  </table>
237  </dd>
238</dl>
239
240</div>
241</div>
242<a class="anchor" id="a6d2c79bd8b2f9a7b7036ae78e4b48ec4"></a><!-- doxytag: member="android::RSC::Allocation::copy1DTo" ref="a6d2c79bd8b2f9a7b7036ae78e4b48ec4" args="(void *data)" -->
243<div class="memitem">
244<div class="memproto">
245      <table class="memname">
246        <tr>
247          <td class="memname">void android::RSC::Allocation::copy1DTo </td>
248          <td>(</td>
249          <td class="paramtype">void *&#160;</td>
250          <td class="paramname"><em>data</em></td><td>)</td>
251          <td></td>
252        </tr>
253      </table>
254</div>
255<div class="memdoc">
256<p>Copy entire <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> to an array. </p>
257<dl><dt><b>Parameters:</b></dt><dd>
258  <table class="params">
259    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>destination array </td></tr>
260  </table>
261  </dd>
262</dl>
263
264</div>
265</div>
266<a class="anchor" id="aa4a59cd1098771c205bbd23d4f3b1065"></a><!-- doxytag: member="android::RSC::Allocation::copy2DRangeFrom" ref="aa4a59cd1098771c205bbd23d4f3b1065" args="(uint32_t xoff, uint32_t yoff, uint32_t w, uint32_t h, const void *data)" -->
267<div class="memitem">
268<div class="memproto">
269      <table class="memname">
270        <tr>
271          <td class="memname">void android::RSC::Allocation::copy2DRangeFrom </td>
272          <td>(</td>
273          <td class="paramtype">uint32_t&#160;</td>
274          <td class="paramname"><em>xoff</em>, </td>
275        </tr>
276        <tr>
277          <td class="paramkey"></td>
278          <td></td>
279          <td class="paramtype">uint32_t&#160;</td>
280          <td class="paramname"><em>yoff</em>, </td>
281        </tr>
282        <tr>
283          <td class="paramkey"></td>
284          <td></td>
285          <td class="paramtype">uint32_t&#160;</td>
286          <td class="paramname"><em>w</em>, </td>
287        </tr>
288        <tr>
289          <td class="paramkey"></td>
290          <td></td>
291          <td class="paramtype">uint32_t&#160;</td>
292          <td class="paramname"><em>h</em>, </td>
293        </tr>
294        <tr>
295          <td class="paramkey"></td>
296          <td></td>
297          <td class="paramtype">const void *&#160;</td>
298          <td class="paramname"><em>data</em>&#160;</td>
299        </tr>
300        <tr>
301          <td></td>
302          <td>)</td>
303          <td></td><td></td>
304        </tr>
305      </table>
306</div>
307<div class="memdoc">
308<p>Copy from an array into a rectangular region in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>. The array is assumed to be tightly packed. </p>
309<dl><dt><b>Parameters:</b></dt><dd>
310  <table class="params">
311    <tr><td class="paramdir">[in]</td><td class="paramname">xoff</td><td>X offset of region to update in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
312    <tr><td class="paramdir">[in]</td><td class="paramname">yoff</td><td>Y offset of region to update in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
313    <tr><td class="paramdir">[in]</td><td class="paramname">w</td><td>Width of region to update </td></tr>
314    <tr><td class="paramdir">[in]</td><td class="paramname">h</td><td>Height of region to update </td></tr>
315    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>Array from which to copy </td></tr>
316  </table>
317  </dd>
318</dl>
319
320</div>
321</div>
322<a class="anchor" id="a4cfe1bb1dac8dfde86f542f97e6d2e67"></a><!-- doxytag: member="android::RSC::Allocation::copy2DRangeFrom" ref="a4cfe1bb1dac8dfde86f542f97e6d2e67" args="(uint32_t xoff, uint32_t yoff, uint32_t w, uint32_t h, sp&lt; const Allocation &gt; data, uint32_t dataXoff, uint32_t dataYoff)" -->
323<div class="memitem">
324<div class="memproto">
325      <table class="memname">
326        <tr>
327          <td class="memname">void android::RSC::Allocation::copy2DRangeFrom </td>
328          <td>(</td>
329          <td class="paramtype">uint32_t&#160;</td>
330          <td class="paramname"><em>xoff</em>, </td>
331        </tr>
332        <tr>
333          <td class="paramkey"></td>
334          <td></td>
335          <td class="paramtype">uint32_t&#160;</td>
336          <td class="paramname"><em>yoff</em>, </td>
337        </tr>
338        <tr>
339          <td class="paramkey"></td>
340          <td></td>
341          <td class="paramtype">uint32_t&#160;</td>
342          <td class="paramname"><em>w</em>, </td>
343        </tr>
344        <tr>
345          <td class="paramkey"></td>
346          <td></td>
347          <td class="paramtype">uint32_t&#160;</td>
348          <td class="paramname"><em>h</em>, </td>
349        </tr>
350        <tr>
351          <td class="paramkey"></td>
352          <td></td>
353          <td class="paramtype">sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> &gt;&#160;</td>
354          <td class="paramname"><em>data</em>, </td>
355        </tr>
356        <tr>
357          <td class="paramkey"></td>
358          <td></td>
359          <td class="paramtype">uint32_t&#160;</td>
360          <td class="paramname"><em>dataXoff</em>, </td>
361        </tr>
362        <tr>
363          <td class="paramkey"></td>
364          <td></td>
365          <td class="paramtype">uint32_t&#160;</td>
366          <td class="paramname"><em>dataYoff</em>&#160;</td>
367        </tr>
368        <tr>
369          <td></td>
370          <td>)</td>
371          <td></td><td></td>
372        </tr>
373      </table>
374</div>
375<div class="memdoc">
376<p>Copy from an <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> into a rectangular region in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>. </p>
377<dl><dt><b>Parameters:</b></dt><dd>
378  <table class="params">
379    <tr><td class="paramdir">[in]</td><td class="paramname">xoff</td><td>X offset of region to update in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
380    <tr><td class="paramdir">[in]</td><td class="paramname">yoff</td><td>Y offset of region to update in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
381    <tr><td class="paramdir">[in]</td><td class="paramname">w</td><td>Width of region to update </td></tr>
382    <tr><td class="paramdir">[in]</td><td class="paramname">h</td><td>Height of region to update </td></tr>
383    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td><a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> from which to copy </td></tr>
384    <tr><td class="paramdir">[in]</td><td class="paramname">dataXoff</td><td>X offset of region to copy from in data </td></tr>
385    <tr><td class="paramdir">[in]</td><td class="paramname">dataYoff</td><td>Y offset of region to copy from in data </td></tr>
386  </table>
387  </dd>
388</dl>
389
390</div>
391</div>
392<a class="anchor" id="a7522ec325ad4b30948b8b060b7750517"></a><!-- doxytag: member="android::RSC::Allocation::copy2DRangeTo" ref="a7522ec325ad4b30948b8b060b7750517" args="(uint32_t xoff, uint32_t yoff, uint32_t w, uint32_t h, void *data)" -->
393<div class="memitem">
394<div class="memproto">
395      <table class="memname">
396        <tr>
397          <td class="memname">void android::RSC::Allocation::copy2DRangeTo </td>
398          <td>(</td>
399          <td class="paramtype">uint32_t&#160;</td>
400          <td class="paramname"><em>xoff</em>, </td>
401        </tr>
402        <tr>
403          <td class="paramkey"></td>
404          <td></td>
405          <td class="paramtype">uint32_t&#160;</td>
406          <td class="paramname"><em>yoff</em>, </td>
407        </tr>
408        <tr>
409          <td class="paramkey"></td>
410          <td></td>
411          <td class="paramtype">uint32_t&#160;</td>
412          <td class="paramname"><em>w</em>, </td>
413        </tr>
414        <tr>
415          <td class="paramkey"></td>
416          <td></td>
417          <td class="paramtype">uint32_t&#160;</td>
418          <td class="paramname"><em>h</em>, </td>
419        </tr>
420        <tr>
421          <td class="paramkey"></td>
422          <td></td>
423          <td class="paramtype">void *&#160;</td>
424          <td class="paramname"><em>data</em>&#160;</td>
425        </tr>
426        <tr>
427          <td></td>
428          <td>)</td>
429          <td></td><td></td>
430        </tr>
431      </table>
432</div>
433<div class="memdoc">
434<p>Copy from this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> into a rectangular region in an array. The array is assumed to be tightly packed. </p>
435<dl><dt><b>Parameters:</b></dt><dd>
436  <table class="params">
437    <tr><td class="paramdir">[in]</td><td class="paramname">xoff</td><td>X offset of region to copy from this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
438    <tr><td class="paramdir">[in]</td><td class="paramname">yoff</td><td>Y offset of region to copy from this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
439    <tr><td class="paramdir">[in]</td><td class="paramname">w</td><td>Width of region to update </td></tr>
440    <tr><td class="paramdir">[in]</td><td class="paramname">h</td><td>Height of region to update </td></tr>
441    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>destination array </td></tr>
442  </table>
443  </dd>
444</dl>
445
446</div>
447</div>
448<a class="anchor" id="a5bb1d1b53dcc255beea566c50d34c3eb"></a><!-- doxytag: member="android::RSC::Allocation::copy2DStridedFrom" ref="a5bb1d1b53dcc255beea566c50d34c3eb" args="(uint32_t xoff, uint32_t yoff, uint32_t w, uint32_t h, const void *data, size_t stride)" -->
449<div class="memitem">
450<div class="memproto">
451      <table class="memname">
452        <tr>
453          <td class="memname">void android::RSC::Allocation::copy2DStridedFrom </td>
454          <td>(</td>
455          <td class="paramtype">uint32_t&#160;</td>
456          <td class="paramname"><em>xoff</em>, </td>
457        </tr>
458        <tr>
459          <td class="paramkey"></td>
460          <td></td>
461          <td class="paramtype">uint32_t&#160;</td>
462          <td class="paramname"><em>yoff</em>, </td>
463        </tr>
464        <tr>
465          <td class="paramkey"></td>
466          <td></td>
467          <td class="paramtype">uint32_t&#160;</td>
468          <td class="paramname"><em>w</em>, </td>
469        </tr>
470        <tr>
471          <td class="paramkey"></td>
472          <td></td>
473          <td class="paramtype">uint32_t&#160;</td>
474          <td class="paramname"><em>h</em>, </td>
475        </tr>
476        <tr>
477          <td class="paramkey"></td>
478          <td></td>
479          <td class="paramtype">const void *&#160;</td>
480          <td class="paramname"><em>data</em>, </td>
481        </tr>
482        <tr>
483          <td class="paramkey"></td>
484          <td></td>
485          <td class="paramtype">size_t&#160;</td>
486          <td class="paramname"><em>stride</em>&#160;</td>
487        </tr>
488        <tr>
489          <td></td>
490          <td>)</td>
491          <td></td><td></td>
492        </tr>
493      </table>
494</div>
495<div class="memdoc">
496<p>Copy from a strided array into a rectangular region in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>. </p>
497<dl><dt><b>Parameters:</b></dt><dd>
498  <table class="params">
499    <tr><td class="paramdir">[in]</td><td class="paramname">xoff</td><td>X offset of region to update in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
500    <tr><td class="paramdir">[in]</td><td class="paramname">yoff</td><td>Y offset of region to update in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
501    <tr><td class="paramdir">[in]</td><td class="paramname">w</td><td>Width of region to update </td></tr>
502    <tr><td class="paramdir">[in]</td><td class="paramname">h</td><td>Height of region to update </td></tr>
503    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>array from which to copy </td></tr>
504    <tr><td class="paramdir">[in]</td><td class="paramname">stride</td><td>stride of data in bytes </td></tr>
505  </table>
506  </dd>
507</dl>
508
509</div>
510</div>
511<a class="anchor" id="aaee42c2bcc21d224191262025fa7bde2"></a><!-- doxytag: member="android::RSC::Allocation::copy2DStridedFrom" ref="aaee42c2bcc21d224191262025fa7bde2" args="(const void *data, size_t stride)" -->
512<div class="memitem">
513<div class="memproto">
514      <table class="memname">
515        <tr>
516          <td class="memname">void android::RSC::Allocation::copy2DStridedFrom </td>
517          <td>(</td>
518          <td class="paramtype">const void *&#160;</td>
519          <td class="paramname"><em>data</em>, </td>
520        </tr>
521        <tr>
522          <td class="paramkey"></td>
523          <td></td>
524          <td class="paramtype">size_t&#160;</td>
525          <td class="paramname"><em>stride</em>&#160;</td>
526        </tr>
527        <tr>
528          <td></td>
529          <td>)</td>
530          <td></td><td></td>
531        </tr>
532      </table>
533</div>
534<div class="memdoc">
535<p>Copy from a strided array into this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>. </p>
536<dl><dt><b>Parameters:</b></dt><dd>
537  <table class="params">
538    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>array from which to copy </td></tr>
539    <tr><td class="paramdir">[in]</td><td class="paramname">stride</td><td>stride of data in bytes </td></tr>
540  </table>
541  </dd>
542</dl>
543
544</div>
545</div>
546<a class="anchor" id="ad4f2ce90d548f22d950002c9942833ca"></a><!-- doxytag: member="android::RSC::Allocation::copy2DStridedTo" ref="ad4f2ce90d548f22d950002c9942833ca" args="(uint32_t xoff, uint32_t yoff, uint32_t w, uint32_t h, void *data, size_t stride)" -->
547<div class="memitem">
548<div class="memproto">
549      <table class="memname">
550        <tr>
551          <td class="memname">void android::RSC::Allocation::copy2DStridedTo </td>
552          <td>(</td>
553          <td class="paramtype">uint32_t&#160;</td>
554          <td class="paramname"><em>xoff</em>, </td>
555        </tr>
556        <tr>
557          <td class="paramkey"></td>
558          <td></td>
559          <td class="paramtype">uint32_t&#160;</td>
560          <td class="paramname"><em>yoff</em>, </td>
561        </tr>
562        <tr>
563          <td class="paramkey"></td>
564          <td></td>
565          <td class="paramtype">uint32_t&#160;</td>
566          <td class="paramname"><em>w</em>, </td>
567        </tr>
568        <tr>
569          <td class="paramkey"></td>
570          <td></td>
571          <td class="paramtype">uint32_t&#160;</td>
572          <td class="paramname"><em>h</em>, </td>
573        </tr>
574        <tr>
575          <td class="paramkey"></td>
576          <td></td>
577          <td class="paramtype">void *&#160;</td>
578          <td class="paramname"><em>data</em>, </td>
579        </tr>
580        <tr>
581          <td class="paramkey"></td>
582          <td></td>
583          <td class="paramtype">size_t&#160;</td>
584          <td class="paramname"><em>stride</em>&#160;</td>
585        </tr>
586        <tr>
587          <td></td>
588          <td>)</td>
589          <td></td><td></td>
590        </tr>
591      </table>
592</div>
593<div class="memdoc">
594<p>Copy from a rectangular region in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> into a strided array. </p>
595<dl><dt><b>Parameters:</b></dt><dd>
596  <table class="params">
597    <tr><td class="paramdir">[in]</td><td class="paramname">xoff</td><td>X offset of region to update in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
598    <tr><td class="paramdir">[in]</td><td class="paramname">yoff</td><td>Y offset of region to update in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
599    <tr><td class="paramdir">[in]</td><td class="paramname">w</td><td>Width of region to update </td></tr>
600    <tr><td class="paramdir">[in]</td><td class="paramname">h</td><td>Height of region to update </td></tr>
601    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>destination array </td></tr>
602    <tr><td class="paramdir">[in]</td><td class="paramname">stride</td><td>stride of data in bytes </td></tr>
603  </table>
604  </dd>
605</dl>
606
607</div>
608</div>
609<a class="anchor" id="a90c89953b5a38489718aec32937a95ac"></a><!-- doxytag: member="android::RSC::Allocation::copy2DStridedTo" ref="a90c89953b5a38489718aec32937a95ac" args="(void *data, size_t stride)" -->
610<div class="memitem">
611<div class="memproto">
612      <table class="memname">
613        <tr>
614          <td class="memname">void android::RSC::Allocation::copy2DStridedTo </td>
615          <td>(</td>
616          <td class="paramtype">void *&#160;</td>
617          <td class="paramname"><em>data</em>, </td>
618        </tr>
619        <tr>
620          <td class="paramkey"></td>
621          <td></td>
622          <td class="paramtype">size_t&#160;</td>
623          <td class="paramname"><em>stride</em>&#160;</td>
624        </tr>
625        <tr>
626          <td></td>
627          <td>)</td>
628          <td></td><td></td>
629        </tr>
630      </table>
631</div>
632<div class="memdoc">
633<p>Copy this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> into a strided array. </p>
634<dl><dt><b>Parameters:</b></dt><dd>
635  <table class="params">
636    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>destination array </td></tr>
637    <tr><td class="paramdir">[in]</td><td class="paramname">stride</td><td>stride of data in bytes </td></tr>
638  </table>
639  </dd>
640</dl>
641
642</div>
643</div>
644<a class="anchor" id="ac0fe786fd3dc0d5e2278b6071ff78d84"></a><!-- doxytag: member="android::RSC::Allocation::copy3DRangeFrom" ref="ac0fe786fd3dc0d5e2278b6071ff78d84" args="(uint32_t xoff, uint32_t yoff, uint32_t zoff, uint32_t w, uint32_t h, uint32_t d, const void *data)" -->
645<div class="memitem">
646<div class="memproto">
647      <table class="memname">
648        <tr>
649          <td class="memname">void android::RSC::Allocation::copy3DRangeFrom </td>
650          <td>(</td>
651          <td class="paramtype">uint32_t&#160;</td>
652          <td class="paramname"><em>xoff</em>, </td>
653        </tr>
654        <tr>
655          <td class="paramkey"></td>
656          <td></td>
657          <td class="paramtype">uint32_t&#160;</td>
658          <td class="paramname"><em>yoff</em>, </td>
659        </tr>
660        <tr>
661          <td class="paramkey"></td>
662          <td></td>
663          <td class="paramtype">uint32_t&#160;</td>
664          <td class="paramname"><em>zoff</em>, </td>
665        </tr>
666        <tr>
667          <td class="paramkey"></td>
668          <td></td>
669          <td class="paramtype">uint32_t&#160;</td>
670          <td class="paramname"><em>w</em>, </td>
671        </tr>
672        <tr>
673          <td class="paramkey"></td>
674          <td></td>
675          <td class="paramtype">uint32_t&#160;</td>
676          <td class="paramname"><em>h</em>, </td>
677        </tr>
678        <tr>
679          <td class="paramkey"></td>
680          <td></td>
681          <td class="paramtype">uint32_t&#160;</td>
682          <td class="paramname"><em>d</em>, </td>
683        </tr>
684        <tr>
685          <td class="paramkey"></td>
686          <td></td>
687          <td class="paramtype">const void *&#160;</td>
688          <td class="paramname"><em>data</em>&#160;</td>
689        </tr>
690        <tr>
691          <td></td>
692          <td>)</td>
693          <td></td><td></td>
694        </tr>
695      </table>
696</div>
697<div class="memdoc">
698<p>Copy from an array into a 3D region in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>. The array is assumed to be tightly packed. </p>
699<dl><dt><b>Parameters:</b></dt><dd>
700  <table class="params">
701    <tr><td class="paramdir">[in]</td><td class="paramname">xoff</td><td>X offset of region to update in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
702    <tr><td class="paramdir">[in]</td><td class="paramname">yoff</td><td>Y offset of region to update in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
703    <tr><td class="paramdir">[in]</td><td class="paramname">zoff</td><td>Z offset of region to update in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
704    <tr><td class="paramdir">[in]</td><td class="paramname">w</td><td>Width of region to update </td></tr>
705    <tr><td class="paramdir">[in]</td><td class="paramname">h</td><td>Height of region to update </td></tr>
706    <tr><td class="paramdir">[in]</td><td class="paramname">d</td><td>Depth of region to update </td></tr>
707    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>Array from which to copy </td></tr>
708  </table>
709  </dd>
710</dl>
711
712</div>
713</div>
714<a class="anchor" id="acfc9d84ddfbbc02bdba706a1b63afd6b"></a><!-- doxytag: member="android::RSC::Allocation::copy3DRangeFrom" ref="acfc9d84ddfbbc02bdba706a1b63afd6b" args="(uint32_t xoff, uint32_t yoff, uint32_t zoff, uint32_t w, uint32_t h, uint32_t d, sp&lt; const Allocation &gt; data, uint32_t dataXoff, uint32_t dataYoff, uint32_t dataZoff)" -->
715<div class="memitem">
716<div class="memproto">
717      <table class="memname">
718        <tr>
719          <td class="memname">void android::RSC::Allocation::copy3DRangeFrom </td>
720          <td>(</td>
721          <td class="paramtype">uint32_t&#160;</td>
722          <td class="paramname"><em>xoff</em>, </td>
723        </tr>
724        <tr>
725          <td class="paramkey"></td>
726          <td></td>
727          <td class="paramtype">uint32_t&#160;</td>
728          <td class="paramname"><em>yoff</em>, </td>
729        </tr>
730        <tr>
731          <td class="paramkey"></td>
732          <td></td>
733          <td class="paramtype">uint32_t&#160;</td>
734          <td class="paramname"><em>zoff</em>, </td>
735        </tr>
736        <tr>
737          <td class="paramkey"></td>
738          <td></td>
739          <td class="paramtype">uint32_t&#160;</td>
740          <td class="paramname"><em>w</em>, </td>
741        </tr>
742        <tr>
743          <td class="paramkey"></td>
744          <td></td>
745          <td class="paramtype">uint32_t&#160;</td>
746          <td class="paramname"><em>h</em>, </td>
747        </tr>
748        <tr>
749          <td class="paramkey"></td>
750          <td></td>
751          <td class="paramtype">uint32_t&#160;</td>
752          <td class="paramname"><em>d</em>, </td>
753        </tr>
754        <tr>
755          <td class="paramkey"></td>
756          <td></td>
757          <td class="paramtype">sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> &gt;&#160;</td>
758          <td class="paramname"><em>data</em>, </td>
759        </tr>
760        <tr>
761          <td class="paramkey"></td>
762          <td></td>
763          <td class="paramtype">uint32_t&#160;</td>
764          <td class="paramname"><em>dataXoff</em>, </td>
765        </tr>
766        <tr>
767          <td class="paramkey"></td>
768          <td></td>
769          <td class="paramtype">uint32_t&#160;</td>
770          <td class="paramname"><em>dataYoff</em>, </td>
771        </tr>
772        <tr>
773          <td class="paramkey"></td>
774          <td></td>
775          <td class="paramtype">uint32_t&#160;</td>
776          <td class="paramname"><em>dataZoff</em>&#160;</td>
777        </tr>
778        <tr>
779          <td></td>
780          <td>)</td>
781          <td></td><td></td>
782        </tr>
783      </table>
784</div>
785<div class="memdoc">
786<p>Copy from an <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> into a 3D region in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>. </p>
787<dl><dt><b>Parameters:</b></dt><dd>
788  <table class="params">
789    <tr><td class="paramdir">[in]</td><td class="paramname">xoff</td><td>X offset of region to update in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
790    <tr><td class="paramdir">[in]</td><td class="paramname">yoff</td><td>Y offset of region to update in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
791    <tr><td class="paramdir">[in]</td><td class="paramname">zoff</td><td>Z offset of region to update in this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
792    <tr><td class="paramdir">[in]</td><td class="paramname">w</td><td>Width of region to update </td></tr>
793    <tr><td class="paramdir">[in]</td><td class="paramname">h</td><td>Height of region to update </td></tr>
794    <tr><td class="paramdir">[in]</td><td class="paramname">d</td><td>Depth of region to update </td></tr>
795    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td><a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> from which to copy </td></tr>
796    <tr><td class="paramdir">[in]</td><td class="paramname">dataXoff</td><td>X offset of region in data to copy from </td></tr>
797    <tr><td class="paramdir">[in]</td><td class="paramname">dataYoff</td><td>Y offset of region in data to copy from </td></tr>
798    <tr><td class="paramdir">[in]</td><td class="paramname">dataZoff</td><td>Z offset of region in data to copy from </td></tr>
799  </table>
800  </dd>
801</dl>
802
803</div>
804</div>
805<a class="anchor" id="afd281c4fccca4bf1f69dd2cbdfafb96c"></a><!-- doxytag: member="android::RSC::Allocation::createSized" ref="afd281c4fccca4bf1f69dd2cbdfafb96c" args="(sp&lt; RS &gt; rs, sp&lt; const Element &gt; e, size_t count, uint32_t usage=RS_ALLOCATION_USAGE_SCRIPT)" -->
806<div class="memitem">
807<div class="memproto">
808      <table class="memname">
809        <tr>
810          <td class="memname">static sp&lt;<a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>&gt; android::RSC::Allocation::createSized </td>
811          <td>(</td>
812          <td class="paramtype">sp&lt; <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> &gt;&#160;</td>
813          <td class="paramname"><em>rs</em>, </td>
814        </tr>
815        <tr>
816          <td class="paramkey"></td>
817          <td></td>
818          <td class="paramtype">sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Element.html">Element</a> &gt;&#160;</td>
819          <td class="paramname"><em>e</em>, </td>
820        </tr>
821        <tr>
822          <td class="paramkey"></td>
823          <td></td>
824          <td class="paramtype">size_t&#160;</td>
825          <td class="paramname"><em>count</em>, </td>
826        </tr>
827        <tr>
828          <td class="paramkey"></td>
829          <td></td>
830          <td class="paramtype">uint32_t&#160;</td>
831          <td class="paramname"><em>usage</em> = <code>RS_ALLOCATION_USAGE_SCRIPT</code>&#160;</td>
832        </tr>
833        <tr>
834          <td></td>
835          <td>)</td>
836          <td></td><td><code> [static]</code></td>
837        </tr>
838      </table>
839</div>
840<div class="memdoc">
841<p>Creates an <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> with a specified number of given elements. </p>
842<dl><dt><b>Parameters:</b></dt><dd>
843  <table class="params">
844    <tr><td class="paramdir">[in]</td><td class="paramname">rs</td><td>Context to which the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> will belong </td></tr>
845    <tr><td class="paramdir">[in]</td><td class="paramname">e</td><td><a class="el" href="classandroid_1_1RSC_1_1Element.html">Element</a> used in the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
846    <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>Number of elements of the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
847    <tr><td class="paramdir">[in]</td><td class="paramname">usage</td><td>usage for the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
848  </table>
849  </dd>
850</dl>
851<dl class="return"><dt><b>Returns:</b></dt><dd>new <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </dd></dl>
852
853</div>
854</div>
855<a class="anchor" id="aa20d012e4df254a06c595527e9203e75"></a><!-- doxytag: member="android::RSC::Allocation::createSized2D" ref="aa20d012e4df254a06c595527e9203e75" args="(sp&lt; RS &gt; rs, sp&lt; const Element &gt; e, size_t x, size_t y, uint32_t usage=RS_ALLOCATION_USAGE_SCRIPT)" -->
856<div class="memitem">
857<div class="memproto">
858      <table class="memname">
859        <tr>
860          <td class="memname">static sp&lt;<a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>&gt; android::RSC::Allocation::createSized2D </td>
861          <td>(</td>
862          <td class="paramtype">sp&lt; <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> &gt;&#160;</td>
863          <td class="paramname"><em>rs</em>, </td>
864        </tr>
865        <tr>
866          <td class="paramkey"></td>
867          <td></td>
868          <td class="paramtype">sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Element.html">Element</a> &gt;&#160;</td>
869          <td class="paramname"><em>e</em>, </td>
870        </tr>
871        <tr>
872          <td class="paramkey"></td>
873          <td></td>
874          <td class="paramtype">size_t&#160;</td>
875          <td class="paramname"><em>x</em>, </td>
876        </tr>
877        <tr>
878          <td class="paramkey"></td>
879          <td></td>
880          <td class="paramtype">size_t&#160;</td>
881          <td class="paramname"><em>y</em>, </td>
882        </tr>
883        <tr>
884          <td class="paramkey"></td>
885          <td></td>
886          <td class="paramtype">uint32_t&#160;</td>
887          <td class="paramname"><em>usage</em> = <code>RS_ALLOCATION_USAGE_SCRIPT</code>&#160;</td>
888        </tr>
889        <tr>
890          <td></td>
891          <td>)</td>
892          <td></td><td><code> [static]</code></td>
893        </tr>
894      </table>
895</div>
896<div class="memdoc">
897<p>Creates a 2D <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> with a specified number of given elements. </p>
898<dl><dt><b>Parameters:</b></dt><dd>
899  <table class="params">
900    <tr><td class="paramdir">[in]</td><td class="paramname">rs</td><td>Context to which the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> will belong </td></tr>
901    <tr><td class="paramdir">[in]</td><td class="paramname">e</td><td><a class="el" href="classandroid_1_1RSC_1_1Element.html">Element</a> used in the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
902    <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Width in Elements of the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
903    <tr><td class="paramdir">[in]</td><td class="paramname">y</td><td>Height of the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
904    <tr><td class="paramdir">[in]</td><td class="paramname">usage</td><td>usage for the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
905  </table>
906  </dd>
907</dl>
908<dl class="return"><dt><b>Returns:</b></dt><dd>new <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </dd></dl>
909
910</div>
911</div>
912<a class="anchor" id="a983b914efa208763b4b58db62586f138"></a><!-- doxytag: member="android::RSC::Allocation::createTyped" ref="a983b914efa208763b4b58db62586f138" args="(sp&lt; RS &gt; rs, sp&lt; const Type &gt; type, RsAllocationMipmapControl mipmaps, uint32_t usage)" -->
913<div class="memitem">
914<div class="memproto">
915      <table class="memname">
916        <tr>
917          <td class="memname">static sp&lt;<a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>&gt; android::RSC::Allocation::createTyped </td>
918          <td>(</td>
919          <td class="paramtype">sp&lt; <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> &gt;&#160;</td>
920          <td class="paramname"><em>rs</em>, </td>
921        </tr>
922        <tr>
923          <td class="paramkey"></td>
924          <td></td>
925          <td class="paramtype">sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> &gt;&#160;</td>
926          <td class="paramname"><em>type</em>, </td>
927        </tr>
928        <tr>
929          <td class="paramkey"></td>
930          <td></td>
931          <td class="paramtype">RsAllocationMipmapControl&#160;</td>
932          <td class="paramname"><em>mipmaps</em>, </td>
933        </tr>
934        <tr>
935          <td class="paramkey"></td>
936          <td></td>
937          <td class="paramtype">uint32_t&#160;</td>
938          <td class="paramname"><em>usage</em>&#160;</td>
939        </tr>
940        <tr>
941          <td></td>
942          <td>)</td>
943          <td></td><td><code> [static]</code></td>
944        </tr>
945      </table>
946</div>
947<div class="memdoc">
948<p>Creates an <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> for use by scripts with a given <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a>. </p>
949<dl><dt><b>Parameters:</b></dt><dd>
950  <table class="params">
951    <tr><td class="paramdir">[in]</td><td class="paramname">rs</td><td>Context to which the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> will belong </td></tr>
952    <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td><a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> of the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
953    <tr><td class="paramdir">[in]</td><td class="paramname">mipmaps</td><td>desired mipmap behavior for the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
954    <tr><td class="paramdir">[in]</td><td class="paramname">usage</td><td>usage for the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
955  </table>
956  </dd>
957</dl>
958<dl class="return"><dt><b>Returns:</b></dt><dd>new <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </dd></dl>
959
960</div>
961</div>
962<a class="anchor" id="a8951e64fcb95241504a445fa293380e3"></a><!-- doxytag: member="android::RSC::Allocation::createTyped" ref="a8951e64fcb95241504a445fa293380e3" args="(sp&lt; RS &gt; rs, sp&lt; const Type &gt; type, RsAllocationMipmapControl mipmaps, uint32_t usage, void *pointer)" -->
963<div class="memitem">
964<div class="memproto">
965      <table class="memname">
966        <tr>
967          <td class="memname">static sp&lt;<a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>&gt; android::RSC::Allocation::createTyped </td>
968          <td>(</td>
969          <td class="paramtype">sp&lt; <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> &gt;&#160;</td>
970          <td class="paramname"><em>rs</em>, </td>
971        </tr>
972        <tr>
973          <td class="paramkey"></td>
974          <td></td>
975          <td class="paramtype">sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> &gt;&#160;</td>
976          <td class="paramname"><em>type</em>, </td>
977        </tr>
978        <tr>
979          <td class="paramkey"></td>
980          <td></td>
981          <td class="paramtype">RsAllocationMipmapControl&#160;</td>
982          <td class="paramname"><em>mipmaps</em>, </td>
983        </tr>
984        <tr>
985          <td class="paramkey"></td>
986          <td></td>
987          <td class="paramtype">uint32_t&#160;</td>
988          <td class="paramname"><em>usage</em>, </td>
989        </tr>
990        <tr>
991          <td class="paramkey"></td>
992          <td></td>
993          <td class="paramtype">void *&#160;</td>
994          <td class="paramname"><em>pointer</em>&#160;</td>
995        </tr>
996        <tr>
997          <td></td>
998          <td>)</td>
999          <td></td><td><code> [static]</code></td>
1000        </tr>
1001      </table>
1002</div>
1003<div class="memdoc">
1004<p>Creates an <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> for use by scripts with a given <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> and a backing pointer. For use with RS_ALLOCATION_USAGE_SHARED. </p>
1005<dl><dt><b>Parameters:</b></dt><dd>
1006  <table class="params">
1007    <tr><td class="paramdir">[in]</td><td class="paramname">rs</td><td>Context to which the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> will belong </td></tr>
1008    <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td><a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> of the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
1009    <tr><td class="paramdir">[in]</td><td class="paramname">mipmaps</td><td>desired mipmap behavior for the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
1010    <tr><td class="paramdir">[in]</td><td class="paramname">usage</td><td>usage for the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
1011    <tr><td class="paramdir">[in]</td><td class="paramname">pointer</td><td>existing backing store to use for this <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> if possible </td></tr>
1012  </table>
1013  </dd>
1014</dl>
1015<dl class="return"><dt><b>Returns:</b></dt><dd>new <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </dd></dl>
1016
1017</div>
1018</div>
1019<a class="anchor" id="ae0c87f83e692ade1abba9a8db6d40aae"></a><!-- doxytag: member="android::RSC::Allocation::createTyped" ref="ae0c87f83e692ade1abba9a8db6d40aae" args="(sp&lt; RS &gt; rs, sp&lt; const Type &gt; type, uint32_t usage=RS_ALLOCATION_USAGE_SCRIPT)" -->
1020<div class="memitem">
1021<div class="memproto">
1022      <table class="memname">
1023        <tr>
1024          <td class="memname">static sp&lt;<a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>&gt; android::RSC::Allocation::createTyped </td>
1025          <td>(</td>
1026          <td class="paramtype">sp&lt; <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> &gt;&#160;</td>
1027          <td class="paramname"><em>rs</em>, </td>
1028        </tr>
1029        <tr>
1030          <td class="paramkey"></td>
1031          <td></td>
1032          <td class="paramtype">sp&lt; const <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> &gt;&#160;</td>
1033          <td class="paramname"><em>type</em>, </td>
1034        </tr>
1035        <tr>
1036          <td class="paramkey"></td>
1037          <td></td>
1038          <td class="paramtype">uint32_t&#160;</td>
1039          <td class="paramname"><em>usage</em> = <code>RS_ALLOCATION_USAGE_SCRIPT</code>&#160;</td>
1040        </tr>
1041        <tr>
1042          <td></td>
1043          <td>)</td>
1044          <td></td><td><code> [static]</code></td>
1045        </tr>
1046      </table>
1047</div>
1048<div class="memdoc">
1049<p>Creates an <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> for use by scripts with a given <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> with no mipmaps. </p>
1050<dl><dt><b>Parameters:</b></dt><dd>
1051  <table class="params">
1052    <tr><td class="paramdir">[in]</td><td class="paramname">rs</td><td>Context to which the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> will belong </td></tr>
1053    <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td><a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> of the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
1054    <tr><td class="paramdir">[in]</td><td class="paramname">usage</td><td>usage for the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </td></tr>
1055  </table>
1056  </dd>
1057</dl>
1058<dl class="return"><dt><b>Returns:</b></dt><dd>new <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> </dd></dl>
1059
1060</div>
1061</div>
1062<a class="anchor" id="a3c9f32ff3070f8a38e3a8c6e58ed7a82"></a><!-- doxytag: member="android::RSC::Allocation::generateMipmaps" ref="a3c9f32ff3070f8a38e3a8c6e58ed7a82" args="()" -->
1063<div class="memitem">
1064<div class="memproto">
1065      <table class="memname">
1066        <tr>
1067          <td class="memname">void android::RSC::Allocation::generateMipmaps </td>
1068          <td>(</td>
1069          <td class="paramname"></td><td>)</td>
1070          <td></td>
1071        </tr>
1072      </table>
1073</div>
1074<div class="memdoc">
1075<p>Generate a mipmap chain. This is only valid if the <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> of the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> includes mipmaps. This function will generate a complete set of mipmaps from the top level LOD and place them into the script memory space. If the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> is also using other memory spaces, a call to syncAll(Allocation.USAGE_SCRIPT) is required. </p>
1076
1077</div>
1078</div>
1079<a class="anchor" id="a5475e41c9a50ece302e238e06e5ba8f4"></a><!-- doxytag: member="android::RSC::Allocation::getType" ref="a5475e41c9a50ece302e238e06e5ba8f4" args="() const " -->
1080<div class="memitem">
1081<div class="memproto">
1082      <table class="memname">
1083        <tr>
1084          <td class="memname">sp&lt;const <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a>&gt; android::RSC::Allocation::getType </td>
1085          <td>(</td>
1086          <td class="paramname"></td><td>)</td>
1087          <td> const<code> [inline]</code></td>
1088        </tr>
1089      </table>
1090</div>
1091<div class="memdoc">
1092<p>Return <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> for the allocation. </p>
1093<dl class="return"><dt><b>Returns:</b></dt><dd>pointer to underlying <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> </dd></dl>
1094
1095<p>Definition at line <a class="el" href="rsCppStructs_8h_source.html#l00338">338</a> of file <a class="el" href="rsCppStructs_8h_source.html">rsCppStructs.h</a>.</p>
1096
1097</div>
1098</div>
1099<a class="anchor" id="a542d29449331bff6c8506b13c4daefeb"></a><!-- doxytag: member="android::RSC::Allocation::syncAll" ref="a542d29449331bff6c8506b13c4daefeb" args="(RsAllocationUsageType srcLocation)" -->
1100<div class="memitem">
1101<div class="memproto">
1102      <table class="memname">
1103        <tr>
1104          <td class="memname">void android::RSC::Allocation::syncAll </td>
1105          <td>(</td>
1106          <td class="paramtype">RsAllocationUsageType&#160;</td>
1107          <td class="paramname"><em>srcLocation</em></td><td>)</td>
1108          <td></td>
1109        </tr>
1110      </table>
1111</div>
1112<div class="memdoc">
1113<p>Propagate changes from one usage of the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> to other usages of the <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>. </p>
1114<dl><dt><b>Parameters:</b></dt><dd>
1115  <table class="params">
1116    <tr><td class="paramdir">[in]</td><td class="paramname">srcLocation</td><td>source location with changes to propagate elsewhere </td></tr>
1117  </table>
1118  </dd>
1119</dl>
1120
1121</div>
1122</div>
1123<hr/>The documentation for this class was generated from the following file:<ul>
1124<li><a class="el" href="rsCppStructs_8h_source.html">rsCppStructs.h</a></li>
1125</ul>
1126</div>
1127
1128</body>
1129</html>
1130