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