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> | 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 <<a class="el" href="rsCppStructs_8h_source.html">rsCppStructs.h</a>></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< const <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> > </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 </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 </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 </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 </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< const <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> > data, uint32_t dataOff)</td></tr> 59<tr><td class="memItemLeft" align="right" valign="top">void </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 </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 </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 </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 </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 </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< const <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> > data, uint32_t dataXoff, uint32_t dataYoff)</td></tr> 65<tr><td class="memItemLeft" align="right" valign="top">void </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 </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 </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 </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 </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 </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< const <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> > 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< <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#a983b914efa208763b4b58db62586f138">createTyped</a> (sp< <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> > rs, sp< const <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> > type, RsAllocationMipmapControl mipmaps, uint32_t usage)</td></tr> 74<tr><td class="memItemLeft" align="right" valign="top">static sp< <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#a8951e64fcb95241504a445fa293380e3">createTyped</a> (sp< <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> > rs, sp< const <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> > type, RsAllocationMipmapControl mipmaps, uint32_t usage, void *pointer)</td></tr> 75<tr><td class="memItemLeft" align="right" valign="top">static sp< <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#ae0c87f83e692ade1abba9a8db6d40aae">createTyped</a> (sp< <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> > rs, sp< const <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> > type, uint32_t usage=RS_ALLOCATION_USAGE_SCRIPT)</td></tr> 76<tr><td class="memItemLeft" align="right" valign="top">static sp< <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#afd281c4fccca4bf1f69dd2cbdfafb96c">createSized</a> (sp< <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> > rs, sp< const <a class="el" href="classandroid_1_1RSC_1_1Element.html">Element</a> > e, size_t count, uint32_t usage=RS_ALLOCATION_USAGE_SCRIPT)</td></tr> 77<tr><td class="memItemLeft" align="right" valign="top">static sp< <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classandroid_1_1RSC_1_1Allocation.html#aa20d012e4df254a06c595527e9203e75">createSized2D</a> (sp< <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> > rs, sp< const <a class="el" href="classandroid_1_1RSC_1_1Element.html">Element</a> > 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 * </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 </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 </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 * </td> 129 <td class="paramname"><em>data</em> </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< const Allocation > 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 </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 </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< const <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> > </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 </td> 177 <td class="paramname"><em>dataOff</em> </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 </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 </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 * </td> 220 <td class="paramname"><em>data</em> </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 * </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 </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 </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 </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 </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 * </td> 298 <td class="paramname"><em>data</em> </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< const Allocation > 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 </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 </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 </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 </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< const <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> > </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 </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 </td> 366 <td class="paramname"><em>dataYoff</em> </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 </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 </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 </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 </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 * </td> 424 <td class="paramname"><em>data</em> </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 </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 </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 </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 </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 * </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 </td> 486 <td class="paramname"><em>stride</em> </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 * </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 </td> 525 <td class="paramname"><em>stride</em> </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 </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 </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 </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 </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 * </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 </td> 584 <td class="paramname"><em>stride</em> </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 * </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 </td> 623 <td class="paramname"><em>stride</em> </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 </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 </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 </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 </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 </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 </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 * </td> 688 <td class="paramname"><em>data</em> </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< const Allocation > 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 </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 </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 </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 </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 </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 </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< const <a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a> > </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 </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 </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 </td> 776 <td class="paramname"><em>dataZoff</em> </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< RS > rs, sp< const Element > 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<<a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>> android::RSC::Allocation::createSized </td> 811 <td>(</td> 812 <td class="paramtype">sp< <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> > </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< const <a class="el" href="classandroid_1_1RSC_1_1Element.html">Element</a> > </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 </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 </td> 831 <td class="paramname"><em>usage</em> = <code>RS_ALLOCATION_USAGE_SCRIPT</code> </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< RS > rs, sp< const Element > 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<<a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>> android::RSC::Allocation::createSized2D </td> 861 <td>(</td> 862 <td class="paramtype">sp< <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> > </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< const <a class="el" href="classandroid_1_1RSC_1_1Element.html">Element</a> > </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 </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 </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 </td> 887 <td class="paramname"><em>usage</em> = <code>RS_ALLOCATION_USAGE_SCRIPT</code> </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< RS > rs, sp< const Type > 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<<a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>> android::RSC::Allocation::createTyped </td> 918 <td>(</td> 919 <td class="paramtype">sp< <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> > </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< const <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> > </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 </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 </td> 938 <td class="paramname"><em>usage</em> </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< RS > rs, sp< const Type > 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<<a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>> android::RSC::Allocation::createTyped </td> 968 <td>(</td> 969 <td class="paramtype">sp< <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> > </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< const <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> > </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 </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 </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 * </td> 994 <td class="paramname"><em>pointer</em> </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< RS > rs, sp< const Type > 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<<a class="el" href="classandroid_1_1RSC_1_1Allocation.html">Allocation</a>> android::RSC::Allocation::createTyped </td> 1025 <td>(</td> 1026 <td class="paramtype">sp< <a class="el" href="classandroid_1_1RSC_1_1RS.html">RS</a> > </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< const <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a> > </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 </td> 1039 <td class="paramname"><em>usage</em> = <code>RS_ALLOCATION_USAGE_SCRIPT</code> </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<const <a class="el" href="classandroid_1_1RSC_1_1Type.html">Type</a>> 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 </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