1326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
2186e59154a0fb86e05e283e9c083b69878c06720Jason SamsContextDestroy {
3186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    direct
4186e59154a0fb86e05e283e9c083b69878c06720Jason Sams}
5186e59154a0fb86e05e283e9c083b69878c06720Jason Sams
6186e59154a0fb86e05e283e9c083b69878c06720Jason SamsContextGetMessage {
7186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    direct
8186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param void *data
9186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param size_t *receiveLen
101a4efa363916977ef9aeab756725b3bdc880a15bJason Sams    param uint32_t *usrID
11186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    ret RsMessageToClientType
12186e59154a0fb86e05e283e9c083b69878c06720Jason Sams}
13186e59154a0fb86e05e283e9c083b69878c06720Jason Sams
14186e59154a0fb86e05e283e9c083b69878c06720Jason SamsContextPeekMessage {
15186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    direct
16186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param size_t *receiveLen
171a4efa363916977ef9aeab756725b3bdc880a15bJason Sams    param uint32_t *usrID
18186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    ret RsMessageToClientType
19186e59154a0fb86e05e283e9c083b69878c06720Jason Sams}
20186e59154a0fb86e05e283e9c083b69878c06720Jason Sams
21186e59154a0fb86e05e283e9c083b69878c06720Jason SamsContextInitToClient {
22186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    direct
23186e59154a0fb86e05e283e9c083b69878c06720Jason Sams}
24186e59154a0fb86e05e283e9c083b69878c06720Jason Sams
25186e59154a0fb86e05e283e9c083b69878c06720Jason SamsContextDeinitToClient {
26186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    direct
27186e59154a0fb86e05e283e9c083b69878c06720Jason Sams}
28186e59154a0fb86e05e283e9c083b69878c06720Jason Sams
29c975cf4a71b63ccbd20f1f3b3341c5f2e6025b45Jason SamsTypeCreate {
30186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    direct
31186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param RsElement e
32186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param uint32_t dimX
33186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param uint32_t dimY
34186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param uint32_t dimZ
35186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param bool mips
36186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param bool faces
37186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    ret RsType
38186e59154a0fb86e05e283e9c083b69878c06720Jason Sams}
39186e59154a0fb86e05e283e9c083b69878c06720Jason Sams
40c975cf4a71b63ccbd20f1f3b3341c5f2e6025b45Jason SamsAllocationCreateTyped {
41186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    direct
42186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param RsType vtype
43186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param RsAllocationMipmapControl mips
44186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param uint32_t usages
45179e9a457095fea4c9e6d366c269754b882d05ddJason Sams    param uint32_t ptr
46186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    ret RsAllocation
47186e59154a0fb86e05e283e9c083b69878c06720Jason Sams}
48186e59154a0fb86e05e283e9c083b69878c06720Jason Sams
49c975cf4a71b63ccbd20f1f3b3341c5f2e6025b45Jason SamsAllocationCreateFromBitmap {
50186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    direct
51186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param RsType vtype
52186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param RsAllocationMipmapControl mips
53186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param const void *data
54186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param uint32_t usages
55186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    ret RsAllocation
56186e59154a0fb86e05e283e9c083b69878c06720Jason Sams}
57186e59154a0fb86e05e283e9c083b69878c06720Jason Sams
58c975cf4a71b63ccbd20f1f3b3341c5f2e6025b45Jason SamsAllocationCubeCreateFromBitmap {
59186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    direct
60186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param RsType vtype
61186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param RsAllocationMipmapControl mips
62186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param const void *data
63186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param uint32_t usages
64186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    ret RsAllocation
65186e59154a0fb86e05e283e9c083b69878c06720Jason Sams}
66186e59154a0fb86e05e283e9c083b69878c06720Jason Sams
6741e373d91a60043afa0f9abd026218b49cbc1201Jason SamsAllocationGetSurfaceTextureID {
6841e373d91a60043afa0f9abd026218b49cbc1201Jason Sams    param RsAllocation alloc
6941e373d91a60043afa0f9abd026218b49cbc1201Jason Sams    ret int32_t
7041e373d91a60043afa0f9abd026218b49cbc1201Jason Sams}
71186e59154a0fb86e05e283e9c083b69878c06720Jason Sams
723522f40418fdf877f5a136475dbf75e57a3b7c77Jason SamsAllocationGetSurfaceTextureID2 {
733522f40418fdf877f5a136475dbf75e57a3b7c77Jason Sams    param RsAllocation alloc
743522f40418fdf877f5a136475dbf75e57a3b7c77Jason Sams    param void *st
753522f40418fdf877f5a136475dbf75e57a3b7c77Jason Sams    sync
763522f40418fdf877f5a136475dbf75e57a3b7c77Jason Sams}
773522f40418fdf877f5a136475dbf75e57a3b7c77Jason Sams
787ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason SamsAllocationSetSurface {
797ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams    param RsAllocation alloc
807ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams    param RsNativeWindow sur
817ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams    sync
827ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams    }
837ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams
847ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason SamsAllocationIoSend {
857ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams    param RsAllocation alloc
867ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams    }
877ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams
887ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason SamsAllocationIoReceive {
897ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams    param RsAllocation alloc
907ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams    }
917ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams
927ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams
938c88090e8cccab103eebe2ff569e116e9f5fb208Jason SamsContextFinish {
94748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    sync
95748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
96326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
97326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindRootScript {
98748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript sampler
99748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
100326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
101ccc010bb7c0f89e162bf60033968a20be90a903aJason SamsContextBindProgramStore {
102748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsProgramStore pgm
103748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
104326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
105326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramFragment {
106748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsProgramFragment pgm
107748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
108326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
109326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramVertex {
110748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsProgramVertex pgm
111748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
112326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
1135fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsContextBindProgramRaster {
114748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsProgramRaster pgm
115748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
1165fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams
117d3e0ad43dc758c409fc23d1893dab67b18520c24Alex SakhartchoukContextBindFont {
118748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsFont pgm
119748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
120d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk
12186f1b23aaaf9b8822a009d8c3e585e46768abb6aJason SamsContextPause {
122748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
12386f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams
12486f1b23aaaf9b8822a009d8c3e585e46768abb6aJason SamsContextResume {
125748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
12686f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams
127458f2dc26b7d34c2138c7bfbd95914240084e6bdJason SamsContextSetSurface {
128748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t width
129748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t height
130748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsNativeWindow sur
131c33e6903d25b9cd9d88f45c7320534a5a05c9064Jason Sams        sync
132748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
133458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams
134c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason SamsContextDump {
135748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param int32_t bits
136c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams}
137c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams
138613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason SamsContextSetPriority {
139748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param int32_t priority
140748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
141613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams
142741aac95b777b2e6cb90f484a05e489a79a6ef05Jason SamsContextDestroyWorker {
1435f27d6fb0b0b9184ba9820c629fc1354a635e515Jason Sams        sync
1441dcefab7178f0644b0e0a6998007b1acae5261cfJason Sams}
1451dcefab7178f0644b0e0a6998007b1acae5261cfJason Sams
146a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason SamsAssignName {
147748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsObjectBase obj
148748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char *name
149748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
150326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
151707aaf341a4b068e6ccadf923af85acdd85fd775Jason SamsObjDestroy {
152748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAsyncVoidPtr objPtr
153748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
154707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams
155d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason SamsElementCreate {
156c700e649ca44d0dcff8b271e42d949ea72fe3c63Alex Sakhartchouk        direct
157748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsDataType mType
158748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsDataKind mKind
159748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param bool mNormalized
160748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t mVectorSize
161748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsElement
162748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
163326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
164d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason SamsElementCreate2 {
165c700e649ca44d0dcff8b271e42d949ea72fe3c63Alex Sakhartchouk        direct
166748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const RsElement * elements
167748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char ** names
168748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const uint32_t * arraySize
169748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsElement
170748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
171326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
172837e388700a48084489ba59d1d8cc5ece68b1535Jason SamsAllocationCopyToBitmap {
173748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation alloc
174748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param void * data
175748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
17639f2ef6fed00a99c5c389e12c4597884027d4858Alex Sakhartchouk
177326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
1784b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation1DData {
179748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
180748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t xoff
181748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t lod
182748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t count
183748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const void *data
184748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
185326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
1864b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation1DElementData {
187748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
188748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t x
189748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t lod
190748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const void *data
191748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param size_t comp_offset
192748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
1935f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams
1944b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation2DData {
195748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
196748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t xoff
197748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t yoff
198748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t lod
199748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocationCubemapFace face
200748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t w
201748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t h
202748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const void *data
203748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
204326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
2054b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation2DElementData {
206748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
207748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t x
208748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t y
209748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t lod
210748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocationCubemapFace face
211748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const void *data
212748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param size_t element_offset
213748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
2145f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams
215a23715148f7bda74e904fc553b70c9a49fd52a6eJason SamsAllocationGenerateMipmaps {
216748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
217a23715148f7bda74e904fc553b70c9a49fd52a6eJason Sams}
218a23715148f7bda74e904fc553b70c9a49fd52a6eJason Sams
219e579df42e85d9e00f53c42ef1b78dbd209dba989Jason SamsAllocationRead {
220748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
221748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param void * data
222748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
223326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
224366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason SamsAllocationSyncAll {
225748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
226748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocationUsageType src
227366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason Sams}
228366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason Sams
229326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
23096abf819e50b59ba8cf886c13f894633eb0a24baJason SamsAllocationResize1D {
231748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
232748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t dimX
233748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
23496abf819e50b59ba8cf886c13f894633eb0a24baJason Sams
23596abf819e50b59ba8cf886c13f894633eb0a24baJason SamsAllocationResize2D {
236748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
237748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t dimX
238748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t dimY
239748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
24096abf819e50b59ba8cf886c13f894633eb0a24baJason Sams
24174a827988567a9d65954bb0d825a3ba4a97e2947Alex SakhartchoukAllocationCopy2DRange {
242748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation dest
243748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t destXoff
244748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t destYoff
245748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t destMip
246748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t destFace
247748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t width
248748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t height
249748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation src
250748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t srcXoff
251748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t srcYoff
252748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t srcMip
253748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t srcFace
254748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
25574a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk
256326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerCreate {
257c700e649ca44d0dcff8b271e42d949ea72fe3c63Alex Sakhartchouk    direct
258c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue magFilter
259c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue minFilter
260c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue wrapS
261c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue wrapT
262c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue wrapR
263c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param float mAniso
264c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    ret RsSampler
265c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk}
266326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
267326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptBindAllocation {
268748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript vtm
269748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
270748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
271748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
272326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
273d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetTimeZone {
274748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
275748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char * timeZone
276748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
27798e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy
278be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptInvoke {
279748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
280748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
281748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
282326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
283be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptInvokeV {
284748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
285748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
286748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const void * data
287748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
2888c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams
289c2c02a88641620f50a69cc174077ac8bbef40478Alex SakhartchoukScriptForEach {
2905fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param RsScript s
2915fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param uint32_t slot
2925fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param RsAllocation ain
2935fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param RsAllocation aout
2945fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param const void * usr
2955fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams}
2965fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams
297be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarI {
298748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
299748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
300748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param int value
301748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
302be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams
303a5eb6e17c08426deeedf989d6be280d89662ee82Jason SamsScriptSetVarObj {
304748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
305748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
306748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsObjectBase value
307748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
308a5eb6e17c08426deeedf989d6be280d89662ee82Jason Sams
3090977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen HinesScriptSetVarJ {
310748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
311748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
312748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param int64_t value
313748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
3140977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen Hines
315be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarF {
316748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
317748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
318748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param float value
319748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
320be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams
3216d0a0740530d57e2a5759df994352600946ff47dStephen HinesScriptSetVarD {
322748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
323748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
324748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param double value
325748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
3266d0a0740530d57e2a5759df994352600946ff47dStephen Hines
327be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarV {
328748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
329748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
330748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const void * data
331748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
332fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
3332980f07d3dbbca727e8efe24ace7e7928a935648Stephen HinesScriptSetVarVE {
3342980f07d3dbbca727e8efe24ace7e7928a935648Stephen Hines    param RsScript s
3352980f07d3dbbca727e8efe24ace7e7928a935648Stephen Hines    param uint32_t slot
3362980f07d3dbbca727e8efe24ace7e7928a935648Stephen Hines    param const void * data
3372980f07d3dbbca727e8efe24ace7e7928a935648Stephen Hines    param RsElement e
3382980f07d3dbbca727e8efe24ace7e7928a935648Stephen Hines    param const size_t * dims
3392980f07d3dbbca727e8efe24ace7e7928a935648Stephen Hines    }
3402980f07d3dbbca727e8efe24ace7e7928a935648Stephen Hines
341fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
342326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCCreate {
3439503b66e5329703535f7cc71a0755e6f3b1e39a6Shih-wei Liao        param const char * resName
34415849d9a926fbd83587b9da30b8888574998a0fdShih-wei Liao        param const char * cacheDir
345748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char * text
346748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsScript
347748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
348326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
349326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
350721acc495b859c6d884725a4f9b5523583dd11c7Jason SamsProgramStoreCreate {
351748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    direct
352748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param bool colorMaskR
353748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param bool colorMaskG
354748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param bool colorMaskB
355748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param bool colorMaskA
356721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams        param bool depthMask
357721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams        param bool ditherEnable
358748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsBlendSrcFunc srcFunc
359748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsBlendDstFunc destFunc
360721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams        param RsDepthFunc depthFunc
361748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsProgramStore
362748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
363326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3645fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterCreate {
365748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    direct
366748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param bool pointSprite
367748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsCullMode cull
368748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsProgramRaster
3695fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams}
3705fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams
3714815c0d121310cfcd6a8aba4eab77a9910af53acJason SamsProgramBindConstants {
372748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsProgram vp
373748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
374748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation constants
375748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
3764815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams
377f2a5d7326b38e5a28b6618f9b1e5a021aef7179fJason Sams
3787dad9c30a59c99b57269e1b498807b6f034d56e9Jason SamsProgramBindTexture {
379748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsProgramFragment pf
380748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
381748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation a
382748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
383326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3847dad9c30a59c99b57269e1b498807b6f034d56e9Jason SamsProgramBindSampler {
385748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsProgramFragment pf
386748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
387748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsSampler s
388748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
389326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
390326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentCreate {
391748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    direct
392748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char * shaderText
393748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char ** textureNames
394748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const uint32_t * params
395748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsProgramFragment
396748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
397f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams
398326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexCreate {
399748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    direct
400748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char * shaderText
401748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char ** textureNames
402748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const uint32_t * params
403748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsProgramVertex
404748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
405b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams
4065224a27798f89093b13722b41143551a057ce550Alex SakhartchoukFontCreateFromFile {
407748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char *name
408748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param float fontSize
409748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t dpi
410748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsFont
411748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
412a5597fcd411badad50c1345b3eca26453da45bbbJason Sams
4135224a27798f89093b13722b41143551a057ce550Alex SakhartchoukFontCreateFromMemory {
414748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char *name
415748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param float fontSize
416748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t dpi
417748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const void *data
418748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsFont
419748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
420d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk
4214e9a7a8ded109e16b163789274899447cef02642Alex SakhartchoukMeshCreate {
422748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation *vtx
423748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation *idx
424748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t *primType
425748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsMesh
426748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
4279e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason Sams
4289e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason SamsPathCreate {
4299e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason Sams    param RsPathPrimitive pp
4309e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason Sams    param bool isStatic
4319e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason Sams    param RsAllocation vertex
4329e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason Sams    param RsAllocation loops
4339e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason Sams    param float quality
4349e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason Sams    ret RsPath
4359e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason Sams    }
436