1ContextDestroy {
2    direct
3}
4
5ContextGetMessage {
6    direct
7    param void *data
8    param size_t *receiveLen
9    param uint32_t *usrID
10    ret RsMessageToClientType
11}
12
13ContextPeekMessage {
14    direct
15    param size_t *receiveLen
16    param uint32_t *usrID
17    ret RsMessageToClientType
18}
19
20ContextSendMessage {
21    param uint32_t id
22    param const uint8_t *data
23}
24
25ContextInitToClient {
26    direct
27}
28
29ContextDeinitToClient {
30    direct
31}
32
33ContextSetCacheDir {
34    direct
35    param const char * cacheDir
36}
37
38TypeCreate {
39    direct
40    param RsElement e
41    param uint32_t dimX
42    param uint32_t dimY
43    param uint32_t dimZ
44    param bool mipmaps
45    param bool faces
46    param uint32_t yuv
47    ret RsType
48}
49
50TypeCreate2 {
51    direct
52    param const RsTypeCreateParams *dat
53    ret RsType
54}
55
56AllocationCreateTyped {
57    direct
58    param RsType vtype
59    param RsAllocationMipmapControl mipmaps
60    param uint32_t usages
61    param uintptr_t ptr
62    ret RsAllocation
63}
64
65AllocationCreateFromBitmap {
66    direct
67    param RsType vtype
68    param RsAllocationMipmapControl mipmaps
69    param const void *data
70    param uint32_t usages
71    ret RsAllocation
72}
73
74AllocationCubeCreateFromBitmap {
75    direct
76    param RsType vtype
77    param RsAllocationMipmapControl mipmaps
78    param const void *data
79    param uint32_t usages
80    ret RsAllocation
81}
82
83AllocationGetSurface {
84    param RsAllocation alloc
85    sync
86    ret RsNativeWindow
87}
88
89AllocationSetSurface {
90    param RsAllocation alloc
91    param RsNativeWindow sur
92    sync
93    }
94
95AllocationAdapterCreate {
96    direct
97    param RsType vtype
98    param RsAllocation baseAlloc
99    ret RsAllocation
100}
101
102AllocationAdapterOffset {
103    param RsAllocation alloc
104    param const uint32_t *offsets
105}
106
107ContextFinish {
108    sync
109    }
110
111ContextDump {
112    param int32_t bits
113}
114
115ContextSetPriority {
116    param int32_t priority
117    }
118
119ContextDestroyWorker {
120    sync
121}
122
123AssignName {
124    param RsObjectBase obj
125    param const char *name
126    }
127
128ObjDestroy {
129    param RsAsyncVoidPtr objPtr
130    handcodeApi
131    }
132
133ElementCreate {
134        direct
135    param RsDataType mType
136    param RsDataKind mKind
137    param bool mNormalized
138    param uint32_t mVectorSize
139    ret RsElement
140    }
141
142ElementCreate2 {
143        direct
144    param const RsElement * elements
145    param const char ** names
146    param const uint32_t * arraySize
147    ret RsElement
148    }
149
150AllocationCopyToBitmap {
151    param RsAllocation alloc
152    param void * data
153    }
154
155AllocationGetPointer {
156    param RsAllocation va
157    param uint32_t lod
158    param RsAllocationCubemapFace face
159    param uint32_t z
160    param uint32_t array
161    param size_t *stride
162    ret void *
163    }
164
165Allocation1DData {
166    param RsAllocation va
167    param uint32_t xoff
168    param uint32_t lod
169    param uint32_t count
170    param const void *data
171    }
172
173Allocation1DElementData {
174    param RsAllocation va
175    param uint32_t x
176    param uint32_t lod
177    param const void *data
178    param size_t comp_offset
179    }
180
181AllocationElementData {
182    param RsAllocation va
183    param uint32_t x
184    param uint32_t y
185    param uint32_t z
186    param uint32_t lod
187    param const void *data
188    param size_t comp_offset
189    }
190
191Allocation2DData {
192    param RsAllocation va
193    param uint32_t xoff
194    param uint32_t yoff
195    param uint32_t lod
196    param RsAllocationCubemapFace face
197    param uint32_t w
198    param uint32_t h
199    param const void *data
200    param size_t stride
201    }
202
203Allocation3DData {
204    param RsAllocation va
205    param uint32_t xoff
206    param uint32_t yoff
207    param uint32_t zoff
208    param uint32_t lod
209    param uint32_t w
210    param uint32_t h
211    param uint32_t d
212    param const void *data
213    param size_t stride
214    }
215
216AllocationGenerateMipmaps {
217    param RsAllocation va
218}
219
220AllocationRead {
221    param RsAllocation va
222    param void * data
223    }
224
225Allocation1DRead {
226    param RsAllocation va
227    param uint32_t xoff
228    param uint32_t lod
229    param uint32_t count
230    param void *data
231    }
232
233AllocationElementRead {
234    param RsAllocation va
235    param uint32_t x
236    param uint32_t y
237    param uint32_t z
238    param uint32_t lod
239    param void *data
240    param size_t comp_offset
241    }
242
243Allocation2DRead {
244    param RsAllocation va
245    param uint32_t xoff
246    param uint32_t yoff
247    param uint32_t lod
248    param RsAllocationCubemapFace face
249    param uint32_t w
250    param uint32_t h
251    param void *data
252    param size_t stride
253}
254
255Allocation3DRead {
256    param RsAllocation va
257    param uint32_t xoff
258    param uint32_t yoff
259    param uint32_t zoff
260    param uint32_t lod
261    param uint32_t w
262    param uint32_t h
263    param uint32_t d
264    param void *data
265    param size_t stride
266    }
267
268AllocationSyncAll {
269    param RsAllocation va
270    param RsAllocationUsageType src
271}
272
273AllocationResize1D {
274    param RsAllocation va
275    param uint32_t dimX
276    }
277
278AllocationCopy2DRange {
279    param RsAllocation dest
280    param uint32_t destXoff
281    param uint32_t destYoff
282    param uint32_t destMip
283    param uint32_t destFace
284    param uint32_t width
285    param uint32_t height
286    param RsAllocation src
287    param uint32_t srcXoff
288    param uint32_t srcYoff
289    param uint32_t srcMip
290    param uint32_t srcFace
291    }
292
293AllocationCopy3DRange {
294    param RsAllocation dest
295    param uint32_t destXoff
296    param uint32_t destYoff
297    param uint32_t destZoff
298    param uint32_t destMip
299    param uint32_t width
300    param uint32_t height
301    param uint32_t depth
302    param RsAllocation src
303    param uint32_t srcXoff
304    param uint32_t srcYoff
305    param uint32_t srcZoff
306    param uint32_t srcMip
307    }
308
309ClosureCreate {
310    direct
311    param RsScriptKernelID kernelID
312    param RsAllocation returnValue
313    param RsScriptFieldID * fieldIDs
314    param uintptr_t * values
315    param int * sizes
316    param RsClosure * depClosures
317    param RsScriptFieldID * depFieldIDs
318    ret RsClosure
319    }
320
321InvokeClosureCreate {
322    direct
323    param RsScriptInvokeID invokeID
324    param const void * params
325    param const RsScriptFieldID * fieldIDs
326    param const uintptr_t * values
327    param const int * sizes
328    ret RsClosure
329}
330
331ClosureSetArg {
332  param RsClosure closureID
333  param uint32_t index
334  param uintptr_t value
335  param size_t valueSize
336}
337
338ClosureSetGlobal {
339  param RsClosure closureID
340  param RsScriptFieldID fieldID
341  param uintptr_t value
342  param size_t valueSize
343}
344
345SamplerCreate {
346    direct
347    param RsSamplerValue magFilter
348    param RsSamplerValue minFilter
349    param RsSamplerValue wrapS
350    param RsSamplerValue wrapT
351    param RsSamplerValue wrapR
352    param float mAniso
353    ret RsSampler
354}
355
356ScriptBindAllocation {
357    param RsScript vtm
358    param RsAllocation va
359    param uint32_t slot
360    }
361
362ScriptSetTimeZone {
363    param RsScript s
364    param const char * timeZone
365    }
366
367ScriptInvokeIDCreate {
368    param RsScript s
369    param uint32_t slot
370    ret RsScriptInvokeID
371    }
372
373ScriptInvoke {
374    param RsScript s
375    param uint32_t slot
376    }
377
378ScriptInvokeV {
379    param RsScript s
380    param uint32_t slot
381    param const void * data
382    }
383
384ScriptForEach {
385    param RsScript s
386    param uint32_t slot
387    param RsAllocation ain
388    param RsAllocation aout
389    param const void * usr
390    param const RsScriptCall * sc
391}
392
393ScriptForEachMulti {
394    param RsScript s
395    param uint32_t slot
396    param RsAllocation * ains
397    param RsAllocation aout
398    param const void * usr
399    param const RsScriptCall * sc
400}
401
402ScriptSetVarI {
403    param RsScript s
404    param uint32_t slot
405    param int value
406    }
407
408ScriptSetVarObj {
409    param RsScript s
410    param uint32_t slot
411    param RsObjectBase value
412    }
413
414ScriptSetVarJ {
415    param RsScript s
416    param uint32_t slot
417    param int64_t value
418    }
419
420ScriptSetVarF {
421    param RsScript s
422    param uint32_t slot
423    param float value
424    }
425
426ScriptSetVarD {
427    param RsScript s
428    param uint32_t slot
429    param double value
430    }
431
432ScriptSetVarV {
433    param RsScript s
434    param uint32_t slot
435    param const void * data
436    }
437
438ScriptGetVarV {
439    param RsScript s
440    param uint32_t slot
441    param void * data
442    sync
443    }
444
445ScriptSetVarVE {
446    param RsScript s
447    param uint32_t slot
448    param const void * data
449    param RsElement e
450    param const uint32_t * dims
451    }
452
453
454ScriptCCreate {
455        param const char * resName
456        param const char * cacheDir
457    param const char * text
458    ret RsScript
459    }
460
461ScriptIntrinsicCreate {
462    param uint32_t id
463    param RsElement eid
464    ret RsScript
465    }
466
467ScriptKernelIDCreate {
468    direct
469    param RsScript sid
470    param int slot
471    param int sig
472    ret RsScriptKernelID
473    }
474
475ScriptFieldIDCreate {
476    direct
477    param RsScript sid
478    param int slot
479    ret RsScriptFieldID
480    }
481
482ScriptGroupCreate {
483    direct
484    param RsScriptKernelID * kernels
485    param RsScriptKernelID * src
486    param RsScriptKernelID * dstK
487    param RsScriptFieldID * dstF
488    param const RsType * type
489    ret RsScriptGroup
490}
491
492ScriptGroupSetOutput {
493    param RsScriptGroup group
494    param RsScriptKernelID kernel
495    param RsAllocation alloc
496}
497
498ScriptGroupSetInput {
499    param RsScriptGroup group
500    param RsScriptKernelID kernel
501    param RsAllocation alloc
502}
503
504ScriptGroupExecute {
505    param RsScriptGroup group
506}
507
508ScriptGroup2Create{
509    direct
510    param const char * name
511    param const char * cacheDir
512    param RsClosure * closures
513    ret RsScriptGroup2
514}
515
516AllocationIoSend {
517    param RsAllocation alloc
518    }
519
520AllocationIoReceive {
521    param RsAllocation alloc
522    }
523