rs.spec revision c33e6903d25b9cd9d88f45c7320534a5a05c9064
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
45186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    ret RsAllocation
46186e59154a0fb86e05e283e9c083b69878c06720Jason Sams}
47186e59154a0fb86e05e283e9c083b69878c06720Jason Sams
48c975cf4a71b63ccbd20f1f3b3341c5f2e6025b45Jason SamsAllocationCreateFromBitmap {
49186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    direct
50186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param RsType vtype
51186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param RsAllocationMipmapControl mips
52186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param const void *data
53186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param uint32_t usages
54186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    ret RsAllocation
55186e59154a0fb86e05e283e9c083b69878c06720Jason Sams}
56186e59154a0fb86e05e283e9c083b69878c06720Jason Sams
57c975cf4a71b63ccbd20f1f3b3341c5f2e6025b45Jason SamsAllocationCubeCreateFromBitmap {
58186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    direct
59186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param RsType vtype
60186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param RsAllocationMipmapControl mips
61186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param const void *data
62186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    param uint32_t usages
63186e59154a0fb86e05e283e9c083b69878c06720Jason Sams    ret RsAllocation
64186e59154a0fb86e05e283e9c083b69878c06720Jason Sams}
65186e59154a0fb86e05e283e9c083b69878c06720Jason Sams
66186e59154a0fb86e05e283e9c083b69878c06720Jason Sams
67186e59154a0fb86e05e283e9c083b69878c06720Jason Sams
688c88090e8cccab103eebe2ff569e116e9f5fb208Jason SamsContextFinish {
691a4efa363916977ef9aeab756725b3bdc880a15bJason Sams	sync
708c88090e8cccab103eebe2ff569e116e9f5fb208Jason Sams	}
71326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
72326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindRootScript {
73326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsScript sampler
74326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
75326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
76ccc010bb7c0f89e162bf60033968a20be90a903aJason SamsContextBindProgramStore {
77ccc010bb7c0f89e162bf60033968a20be90a903aJason Sams	param RsProgramStore pgm
78326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
79326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
80326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramFragment {
81326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pgm
82326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
83326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
84326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramVertex {
85326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramVertex pgm
86326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
87326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
885fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsContextBindProgramRaster {
895fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsProgramRaster pgm
905fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	}
915fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams
92d3e0ad43dc758c409fc23d1893dab67b18520c24Alex SakhartchoukContextBindFont {
93d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk	param RsFont pgm
94d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk	}
95d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk
9686f1b23aaaf9b8822a009d8c3e585e46768abb6aJason SamsContextPause {
9786f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams	}
9886f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams
9986f1b23aaaf9b8822a009d8c3e585e46768abb6aJason SamsContextResume {
10086f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams	}
10186f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams
102458f2dc26b7d34c2138c7bfbd95914240084e6bdJason SamsContextSetSurface {
103613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams	param uint32_t width
104613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams	param uint32_t height
1057257c7ee4b66f00c43d9235f3ac600061ae79968Alex Sakhartchouk	param RsNativeWindow sur
106c33e6903d25b9cd9d88f45c7320534a5a05c9064Jason Sams        sync
107458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams	}
108458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams
109c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason SamsContextDump {
110c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams	param int32_t bits
111c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams}
112c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams
113613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason SamsContextSetPriority {
114158324456b8dbf40f684dd0a4af3493b9549f3f5Jason Sams	param int32_t priority
115613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams	}
116613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams
117741aac95b777b2e6cb90f484a05e489a79a6ef05Jason SamsContextDestroyWorker {
1181dcefab7178f0644b0e0a6998007b1acae5261cfJason Sams}
1191dcefab7178f0644b0e0a6998007b1acae5261cfJason Sams
120a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason SamsAssignName {
12170b83c111beceaf8fbb700580833e7fec99272cfAlex Sakhartchouk	param RsObjectBase obj
122a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	param const char *name
123a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	}
124326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
125707aaf341a4b068e6ccadf923af85acdd85fd775Jason SamsObjDestroy {
1262353ae303868d04e3a26002b2f2dc456c15e8170Jason Sams	param RsAsyncVoidPtr objPtr
127707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams	}
128707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams
129d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason SamsElementCreate {
130d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param RsDataType mType
131d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param RsDataKind mKind
132d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param bool mNormalized
133d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param uint32_t mVectorSize
134d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	ret RsElement
135326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
136326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
137d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason SamsElementCreate2 {
138d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param const RsElement * elements
139d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param const char ** names
14046e45548dc80e801139c9ccc2f2aa927e7f35027Jason Sams	param const uint32_t * arraySize
141326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsElement
142326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
143326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
144837e388700a48084489ba59d1d8cc5ece68b1535Jason SamsAllocationCopyToBitmap {
145837e388700a48084489ba59d1d8cc5ece68b1535Jason Sams	param RsAllocation alloc
146837e388700a48084489ba59d1d8cc5ece68b1535Jason Sams	param void * data
14739f2ef6fed00a99c5c389e12c4597884027d4858Alex Sakhartchouk	}
14839f2ef6fed00a99c5c389e12c4597884027d4858Alex Sakhartchouk
149326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
1504b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation1DData {
151326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
152326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
1534b45b8998e0d7038efaea80c70d23c086640b4e3Jason Sams	param uint32_t lod
154326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t count
155326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
156d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
157326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
1584b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation1DElementData {
1595f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param RsAllocation va
1605f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param uint32_t x
1614b45b8998e0d7038efaea80c70d23c086640b4e3Jason Sams	param uint32_t lod
1625f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param const void *data
1635f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param uint32_t comp_offset
1645f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	}
1655f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams
1664b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation2DData {
167326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
168326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
169326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t yoff
1704b45b8998e0d7038efaea80c70d23c086640b4e3Jason Sams	param uint32_t lod
1714b45b8998e0d7038efaea80c70d23c086640b4e3Jason Sams	param RsAllocationCubemapFace face
172326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t w
173326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t h
174326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
175326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
176326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
1774b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation2DElementData {
1785f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param RsAllocation va
1795f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param uint32_t x
1805f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param uint32_t y
1814b45b8998e0d7038efaea80c70d23c086640b4e3Jason Sams	param uint32_t lod
1824b45b8998e0d7038efaea80c70d23c086640b4e3Jason Sams	param RsAllocationCubemapFace face
1835f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param const void *data
1845f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param uint32_t element_offset
1855f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	}
1865f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams
187a23715148f7bda74e904fc553b70c9a49fd52a6eJason SamsAllocationGenerateMipmaps {
188a23715148f7bda74e904fc553b70c9a49fd52a6eJason Sams	param RsAllocation va
189a23715148f7bda74e904fc553b70c9a49fd52a6eJason Sams}
190a23715148f7bda74e904fc553b70c9a49fd52a6eJason Sams
191e579df42e85d9e00f53c42ef1b78dbd209dba989Jason SamsAllocationRead {
192e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	param RsAllocation va
193e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	param void * data
194e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	}
195326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
196366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason SamsAllocationSyncAll {
197366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason Sams	param RsAllocation va
198366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason Sams	param RsAllocationUsageType src
199366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason Sams}
200366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason Sams
201326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
20296abf819e50b59ba8cf886c13f894633eb0a24baJason SamsAllocationResize1D {
20396abf819e50b59ba8cf886c13f894633eb0a24baJason Sams	param RsAllocation va
20496abf819e50b59ba8cf886c13f894633eb0a24baJason Sams	param uint32_t dimX
20596abf819e50b59ba8cf886c13f894633eb0a24baJason Sams	}
20696abf819e50b59ba8cf886c13f894633eb0a24baJason Sams
20796abf819e50b59ba8cf886c13f894633eb0a24baJason SamsAllocationResize2D {
20896abf819e50b59ba8cf886c13f894633eb0a24baJason Sams	param RsAllocation va
20996abf819e50b59ba8cf886c13f894633eb0a24baJason Sams	param uint32_t dimX
21096abf819e50b59ba8cf886c13f894633eb0a24baJason Sams	param uint32_t dimY
21196abf819e50b59ba8cf886c13f894633eb0a24baJason Sams	}
21296abf819e50b59ba8cf886c13f894633eb0a24baJason Sams
21374a827988567a9d65954bb0d825a3ba4a97e2947Alex SakhartchoukAllocationCopy2DRange {
21474a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param RsAllocation dest
21574a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t destXoff
21674a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t destYoff
21774a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t destMip
21874a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t destFace
21974a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t width
22074a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t height
22174a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param RsAllocation src
22274a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t srcXoff
22374a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t srcYoff
22474a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t srcMip
22574a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t srcFace
22674a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	}
22774a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk
228326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerCreate {
229c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue magFilter
230c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue minFilter
231c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue wrapS
232c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue wrapT
233c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue wrapR
234c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param float mAniso
235c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    ret RsSampler
236c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk}
237326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
238326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptBindAllocation {
239326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsScript vtm
240326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
241326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
242326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
243326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
244d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetTimeZone {
245d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
24698e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	param const char * timeZone
24798e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	}
24898e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy
249be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptInvoke {
250be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param RsScript s
251fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams	param uint32_t slot
252326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
253326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
254be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptInvokeV {
2558c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param RsScript s
2568c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param uint32_t slot
257be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param const void * data
2588c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	}
2598c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams
260c2c02a88641620f50a69cc174077ac8bbef40478Alex SakhartchoukScriptForEach {
2615fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param RsScript s
2625fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param uint32_t slot
2635fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param RsAllocation ain
2645fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param RsAllocation aout
2655fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param const void * usr
2665fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams}
2675fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams
268be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarI {
269be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param RsScript s
270be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param uint32_t slot
271be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param int value
272be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	}
273be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams
274a5eb6e17c08426deeedf989d6be280d89662ee82Jason SamsScriptSetVarObj {
275a5eb6e17c08426deeedf989d6be280d89662ee82Jason Sams	param RsScript s
276a5eb6e17c08426deeedf989d6be280d89662ee82Jason Sams	param uint32_t slot
277a5eb6e17c08426deeedf989d6be280d89662ee82Jason Sams	param RsObjectBase value
278a5eb6e17c08426deeedf989d6be280d89662ee82Jason Sams	}
279a5eb6e17c08426deeedf989d6be280d89662ee82Jason Sams
2800977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen HinesScriptSetVarJ {
2810977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen Hines	param RsScript s
2820977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen Hines	param uint32_t slot
2830977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen Hines	param int64_t value
2840977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen Hines	}
2850977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen Hines
286be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarF {
287be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param RsScript s
288be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param uint32_t slot
289be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param float value
290be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	}
291be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams
2926d0a0740530d57e2a5759df994352600946ff47dStephen HinesScriptSetVarD {
2936d0a0740530d57e2a5759df994352600946ff47dStephen Hines	param RsScript s
2946d0a0740530d57e2a5759df994352600946ff47dStephen Hines	param uint32_t slot
2956d0a0740530d57e2a5759df994352600946ff47dStephen Hines	param double value
2966d0a0740530d57e2a5759df994352600946ff47dStephen Hines	}
2976d0a0740530d57e2a5759df994352600946ff47dStephen Hines
298be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarV {
299be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param RsScript s
300be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param uint32_t slot
301be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param const void * data
302be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	}
303fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
304fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
305326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCCreate {
3069503b66e5329703535f7cc71a0755e6f3b1e39a6Shih-wei Liao        param const char * resName
30715849d9a926fbd83587b9da30b8888574998a0fdShih-wei Liao        param const char * cacheDir
308bad807405b2b9764372af1ad24bcfd4fb1f33d8eJason Sams	param const char * text
309326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsScript
310326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
311326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
312326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
313721acc495b859c6d884725a4f9b5523583dd11c7Jason SamsProgramStoreCreate {
314721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams	param bool colorMaskR
315721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams	param bool colorMaskG
316721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams	param bool colorMaskB
317721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams	param bool colorMaskA
318721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams        param bool depthMask
319721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams        param bool ditherEnable
320326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsBlendSrcFunc srcFunc
321326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsBlendDstFunc destFunc
322721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams        param RsDepthFunc depthFunc
323ccc010bb7c0f89e162bf60033968a20be90a903aJason Sams	ret RsProgramStore
324326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
325326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3265fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterCreate {
3275fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool pointSmooth
3285fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool lineSmooth
3295fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool pointSprite
330721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams	param float lineWidth
331721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams	param RsCullMode cull
3325fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	ret RsProgramRaster
3335fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams}
3345fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams
3354815c0d121310cfcd6a8aba4eab77a9910af53acJason SamsProgramBindConstants {
3364815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param RsProgram vp
3374815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param uint32_t slot
3384815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param RsAllocation constants
3394815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	}
3404815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams
341f2a5d7326b38e5a28b6618f9b1e5a021aef7179fJason Sams
3427dad9c30a59c99b57269e1b498807b6f034d56e9Jason SamsProgramBindTexture {
343326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pf
344326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
345326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation a
346326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
347326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3487dad9c30a59c99b57269e1b498807b6f034d56e9Jason SamsProgramBindSampler {
349326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pf
350326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
351326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSampler s
352326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
353326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
354326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentCreate {
355f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	param const char * shaderText
356f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	param const uint32_t * params
357f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	ret RsProgramFragment
358f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	}
359f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams
360326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexCreate {
3614815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param const char * shaderText
3624815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param const uint32_t * params
363f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	ret RsProgramVertex
364b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams	}
365b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams
3665224a27798f89093b13722b41143551a057ce550Alex SakhartchoukFontCreateFromFile {
367a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	param const char *name
3685224a27798f89093b13722b41143551a057ce550Alex Sakhartchouk	param float fontSize
3695224a27798f89093b13722b41143551a057ce550Alex Sakhartchouk	param uint32_t dpi
3705224a27798f89093b13722b41143551a057ce550Alex Sakhartchouk	ret RsFont
371a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	}
372a5597fcd411badad50c1345b3eca26453da45bbbJason Sams
3735224a27798f89093b13722b41143551a057ce550Alex SakhartchoukFontCreateFromMemory {
374d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk	param const char *name
375c17ace2391783dcabc6c1482edf0362654fd83e5Alex Sakhartchouk	param float fontSize
376d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk	param uint32_t dpi
37770b83c111beceaf8fbb700580833e7fec99272cfAlex Sakhartchouk	param const void *data
378d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk	ret RsFont
379d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk	}
380d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk
3814e9a7a8ded109e16b163789274899447cef02642Alex SakhartchoukMeshCreate {
3829003e5674fb3b2a1442cd0cca899fdc3246debf8Alex Sakhartchouk	param RsAllocation *vtx
3839003e5674fb3b2a1442cd0cca899fdc3246debf8Alex Sakhartchouk	param RsAllocation *idx
3849003e5674fb3b2a1442cd0cca899fdc3246debf8Alex Sakhartchouk	param uint32_t *primType
3854e9a7a8ded109e16b163789274899447cef02642Alex Sakhartchouk	ret RsMesh
3864e9a7a8ded109e16b163789274899447cef02642Alex Sakhartchouk	}
387