rs.spec revision 748eb07e805b93c2bf79340d4937963ab739d17c
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
728c88090e8cccab103eebe2ff569e116e9f5fb208Jason SamsContextFinish {
73748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    sync
74748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
75326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
76326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindRootScript {
77748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript sampler
78748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
79326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
80ccc010bb7c0f89e162bf60033968a20be90a903aJason SamsContextBindProgramStore {
81748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsProgramStore pgm
82748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
83326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
84326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramFragment {
85748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsProgramFragment pgm
86748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
87326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
88326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramVertex {
89748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsProgramVertex pgm
90748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
91326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
925fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsContextBindProgramRaster {
93748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsProgramRaster pgm
94748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
955fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams
96d3e0ad43dc758c409fc23d1893dab67b18520c24Alex SakhartchoukContextBindFont {
97748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsFont pgm
98748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
99d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk
10086f1b23aaaf9b8822a009d8c3e585e46768abb6aJason SamsContextPause {
101748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
10286f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams
10386f1b23aaaf9b8822a009d8c3e585e46768abb6aJason SamsContextResume {
104748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
10586f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams
106458f2dc26b7d34c2138c7bfbd95914240084e6bdJason SamsContextSetSurface {
107748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t width
108748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t height
109748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsNativeWindow sur
110c33e6903d25b9cd9d88f45c7320534a5a05c9064Jason Sams        sync
111748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
112458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams
113c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason SamsContextDump {
114748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param int32_t bits
115c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams}
116c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams
117613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason SamsContextSetPriority {
118748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param int32_t priority
119748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
120613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams
121741aac95b777b2e6cb90f484a05e489a79a6ef05Jason SamsContextDestroyWorker {
1225f27d6fb0b0b9184ba9820c629fc1354a635e515Jason Sams        sync
1231dcefab7178f0644b0e0a6998007b1acae5261cfJason Sams}
1241dcefab7178f0644b0e0a6998007b1acae5261cfJason Sams
125a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason SamsAssignName {
126748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsObjectBase obj
127748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char *name
128748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
129326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
130707aaf341a4b068e6ccadf923af85acdd85fd775Jason SamsObjDestroy {
131748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAsyncVoidPtr objPtr
132748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
133707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams
134d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason SamsElementCreate {
135c700e649ca44d0dcff8b271e42d949ea72fe3c63Alex Sakhartchouk        direct
136748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsDataType mType
137748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsDataKind mKind
138748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param bool mNormalized
139748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t mVectorSize
140748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsElement
141748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
142326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
143d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason SamsElementCreate2 {
144c700e649ca44d0dcff8b271e42d949ea72fe3c63Alex Sakhartchouk        direct
145748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const RsElement * elements
146748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char ** names
147748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const uint32_t * arraySize
148748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsElement
149748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
150326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
151837e388700a48084489ba59d1d8cc5ece68b1535Jason SamsAllocationCopyToBitmap {
152748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation alloc
153748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param void * data
154748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
15539f2ef6fed00a99c5c389e12c4597884027d4858Alex Sakhartchouk
156326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
1574b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation1DData {
158748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
159748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t xoff
160748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t lod
161748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t count
162748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const void *data
163748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
164326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
1654b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation1DElementData {
166748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
167748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t x
168748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t lod
169748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const void *data
170748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param size_t comp_offset
171748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
1725f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams
1734b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation2DData {
174748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
175748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t xoff
176748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t yoff
177748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t lod
178748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocationCubemapFace face
179748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t w
180748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t h
181748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const void *data
182748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
183326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
1844b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation2DElementData {
185748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
186748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t x
187748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t y
188748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t lod
189748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocationCubemapFace face
190748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const void *data
191748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param size_t element_offset
192748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
1935f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams
194a23715148f7bda74e904fc553b70c9a49fd52a6eJason SamsAllocationGenerateMipmaps {
195748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
196a23715148f7bda74e904fc553b70c9a49fd52a6eJason Sams}
197a23715148f7bda74e904fc553b70c9a49fd52a6eJason Sams
198e579df42e85d9e00f53c42ef1b78dbd209dba989Jason SamsAllocationRead {
199748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
200748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param void * data
201748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
202326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
203366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason SamsAllocationSyncAll {
204748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
205748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocationUsageType src
206366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason Sams}
207366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason Sams
208326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
20996abf819e50b59ba8cf886c13f894633eb0a24baJason SamsAllocationResize1D {
210748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
211748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t dimX
212748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
21396abf819e50b59ba8cf886c13f894633eb0a24baJason Sams
21496abf819e50b59ba8cf886c13f894633eb0a24baJason SamsAllocationResize2D {
215748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
216748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t dimX
217748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t dimY
218748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
21996abf819e50b59ba8cf886c13f894633eb0a24baJason Sams
22074a827988567a9d65954bb0d825a3ba4a97e2947Alex SakhartchoukAllocationCopy2DRange {
221748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation dest
222748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t destXoff
223748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t destYoff
224748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t destMip
225748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t destFace
226748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t width
227748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t height
228748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation src
229748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t srcXoff
230748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t srcYoff
231748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t srcMip
232748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t srcFace
233748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
23474a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk
235326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerCreate {
236c700e649ca44d0dcff8b271e42d949ea72fe3c63Alex Sakhartchouk    direct
237c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue magFilter
238c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue minFilter
239c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue wrapS
240c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue wrapT
241c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue wrapR
242c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param float mAniso
243c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    ret RsSampler
244c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk}
245326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
246326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptBindAllocation {
247748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript vtm
248748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation va
249748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
250748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
251326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
252d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetTimeZone {
253748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
254748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char * timeZone
255748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
25698e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy
257be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptInvoke {
258748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
259748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
260748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
261326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
262be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptInvokeV {
263748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
264748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
265748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const void * data
266748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
2678c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams
268c2c02a88641620f50a69cc174077ac8bbef40478Alex SakhartchoukScriptForEach {
2695fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param RsScript s
2705fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param uint32_t slot
2715fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param RsAllocation ain
2725fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param RsAllocation aout
2735fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param const void * usr
2745fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams}
2755fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams
276be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarI {
277748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
278748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
279748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param int value
280748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
281be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams
282a5eb6e17c08426deeedf989d6be280d89662ee82Jason SamsScriptSetVarObj {
283748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
284748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
285748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsObjectBase value
286748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
287a5eb6e17c08426deeedf989d6be280d89662ee82Jason Sams
2880977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen HinesScriptSetVarJ {
289748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
290748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
291748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param int64_t value
292748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
2930977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen Hines
294be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarF {
295748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
296748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
297748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param float value
298748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
299be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams
3006d0a0740530d57e2a5759df994352600946ff47dStephen HinesScriptSetVarD {
301748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
302748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
303748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param double value
304748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
3056d0a0740530d57e2a5759df994352600946ff47dStephen Hines
306be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarV {
307748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsScript s
308748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
309748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const void * data
310748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
311fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
312fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
313326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCCreate {
3149503b66e5329703535f7cc71a0755e6f3b1e39a6Shih-wei Liao        param const char * resName
31515849d9a926fbd83587b9da30b8888574998a0fdShih-wei Liao        param const char * cacheDir
316748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char * text
317748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsScript
318748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
319326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
320326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
321721acc495b859c6d884725a4f9b5523583dd11c7Jason SamsProgramStoreCreate {
322748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    direct
323748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param bool colorMaskR
324748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param bool colorMaskG
325748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param bool colorMaskB
326748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param bool colorMaskA
327721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams        param bool depthMask
328721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams        param bool ditherEnable
329748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsBlendSrcFunc srcFunc
330748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsBlendDstFunc destFunc
331721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams        param RsDepthFunc depthFunc
332748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsProgramStore
333748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
334326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3355fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterCreate {
336748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    direct
337748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param bool pointSprite
338748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsCullMode cull
339748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsProgramRaster
3405fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams}
3415fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams
3424815c0d121310cfcd6a8aba4eab77a9910af53acJason SamsProgramBindConstants {
343748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsProgram vp
344748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
345748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation constants
346748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
3474815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams
348f2a5d7326b38e5a28b6618f9b1e5a021aef7179fJason Sams
3497dad9c30a59c99b57269e1b498807b6f034d56e9Jason SamsProgramBindTexture {
350748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsProgramFragment pf
351748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
352748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation a
353748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
354326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3557dad9c30a59c99b57269e1b498807b6f034d56e9Jason SamsProgramBindSampler {
356748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsProgramFragment pf
357748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t slot
358748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsSampler s
359748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
360326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
361326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentCreate {
362748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    direct
363748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char * shaderText
364748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char ** textureNames
365748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const uint32_t * params
366748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsProgramFragment
367748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
368f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams
369326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexCreate {
370748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    direct
371748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char * shaderText
372748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char ** textureNames
373748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const uint32_t * params
374748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsProgramVertex
375748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
376b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams
3775224a27798f89093b13722b41143551a057ce550Alex SakhartchoukFontCreateFromFile {
378748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char *name
379748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param float fontSize
380748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t dpi
381748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsFont
382748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
383a5597fcd411badad50c1345b3eca26453da45bbbJason Sams
3845224a27798f89093b13722b41143551a057ce550Alex SakhartchoukFontCreateFromMemory {
385748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const char *name
386748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param float fontSize
387748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t dpi
388748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param const void *data
389748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsFont
390748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
391d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk
3924e9a7a8ded109e16b163789274899447cef02642Alex SakhartchoukMeshCreate {
393748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation *vtx
394748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param RsAllocation *idx
395748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    param uint32_t *primType
396748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    ret RsMesh
397748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk    }
3989e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason Sams
3999e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason SamsPathCreate {
4009e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason Sams    param RsPathPrimitive pp
4019e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason Sams    param bool isStatic
4029e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason Sams    param RsAllocation vertex
4039e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason Sams    param RsAllocation loops
4049e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason Sams    param float quality
4059e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason Sams    ret RsPath
4069e0afb5a2b3e476c42a373e7cd89cef4a34f8195Jason Sams    }
407