rs.spec revision 74a827988567a9d65954bb0d825a3ba4a97e2947
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
106458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams	}
107458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams
108c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason SamsContextDump {
109c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams	param int32_t bits
110c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams}
111c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams
112613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason SamsContextSetPriority {
113158324456b8dbf40f684dd0a4af3493b9549f3f5Jason Sams	param int32_t priority
114613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams	}
115613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams
116741aac95b777b2e6cb90f484a05e489a79a6ef05Jason SamsContextDestroyWorker {
1171dcefab7178f0644b0e0a6998007b1acae5261cfJason Sams}
1181dcefab7178f0644b0e0a6998007b1acae5261cfJason Sams
119a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason SamsAssignName {
12070b83c111beceaf8fbb700580833e7fec99272cfAlex Sakhartchouk	param RsObjectBase obj
121a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	param const char *name
122a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	}
123326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
124707aaf341a4b068e6ccadf923af85acdd85fd775Jason SamsObjDestroy {
1252353ae303868d04e3a26002b2f2dc456c15e8170Jason Sams	param RsAsyncVoidPtr objPtr
126707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams	}
127707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams
128d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason SamsElementCreate {
129d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param RsDataType mType
130d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param RsDataKind mKind
131d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param bool mNormalized
132d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param uint32_t mVectorSize
133d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	ret RsElement
134326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
135326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
136d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason SamsElementCreate2 {
137d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param const RsElement * elements
138d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param const char ** names
13946e45548dc80e801139c9ccc2f2aa927e7f35027Jason Sams	param const uint32_t * arraySize
140326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsElement
141326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
142326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
143837e388700a48084489ba59d1d8cc5ece68b1535Jason SamsAllocationCopyToBitmap {
144837e388700a48084489ba59d1d8cc5ece68b1535Jason Sams	param RsAllocation alloc
145837e388700a48084489ba59d1d8cc5ece68b1535Jason Sams	param void * data
14639f2ef6fed00a99c5c389e12c4597884027d4858Alex Sakhartchouk	}
14739f2ef6fed00a99c5c389e12c4597884027d4858Alex Sakhartchouk
148326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
1494b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation1DData {
150326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
151326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
1524b45b8998e0d7038efaea80c70d23c086640b4e3Jason Sams	param uint32_t lod
153326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t count
154326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
155d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
156326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
1574b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation1DElementData {
1585f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param RsAllocation va
1595f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param uint32_t x
1604b45b8998e0d7038efaea80c70d23c086640b4e3Jason Sams	param uint32_t lod
1615f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param const void *data
1625f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param uint32_t comp_offset
1635f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	}
1645f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams
1654b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation2DData {
166326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
167326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
168326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t yoff
1694b45b8998e0d7038efaea80c70d23c086640b4e3Jason Sams	param uint32_t lod
1704b45b8998e0d7038efaea80c70d23c086640b4e3Jason Sams	param RsAllocationCubemapFace face
171326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t w
172326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t h
173326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
174326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
175326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
1764b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation2DElementData {
1775f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param RsAllocation va
1785f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param uint32_t x
1795f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param uint32_t y
1804b45b8998e0d7038efaea80c70d23c086640b4e3Jason Sams	param uint32_t lod
1814b45b8998e0d7038efaea80c70d23c086640b4e3Jason Sams	param RsAllocationCubemapFace face
1825f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param const void *data
1835f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	param uint32_t element_offset
1845f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams	}
1855f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams
186a23715148f7bda74e904fc553b70c9a49fd52a6eJason SamsAllocationGenerateMipmaps {
187a23715148f7bda74e904fc553b70c9a49fd52a6eJason Sams	param RsAllocation va
188a23715148f7bda74e904fc553b70c9a49fd52a6eJason Sams}
189a23715148f7bda74e904fc553b70c9a49fd52a6eJason Sams
190e579df42e85d9e00f53c42ef1b78dbd209dba989Jason SamsAllocationRead {
191e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	param RsAllocation va
192e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	param void * data
193e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	}
194326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
195366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason SamsAllocationSyncAll {
196366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason Sams	param RsAllocation va
197366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason Sams	param RsAllocationUsageType src
198366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason Sams}
199366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason Sams
200326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
20196abf819e50b59ba8cf886c13f894633eb0a24baJason SamsAllocationResize1D {
20296abf819e50b59ba8cf886c13f894633eb0a24baJason Sams	param RsAllocation va
20396abf819e50b59ba8cf886c13f894633eb0a24baJason Sams	param uint32_t dimX
20496abf819e50b59ba8cf886c13f894633eb0a24baJason Sams	}
20596abf819e50b59ba8cf886c13f894633eb0a24baJason Sams
20696abf819e50b59ba8cf886c13f894633eb0a24baJason SamsAllocationResize2D {
20796abf819e50b59ba8cf886c13f894633eb0a24baJason Sams	param RsAllocation va
20896abf819e50b59ba8cf886c13f894633eb0a24baJason Sams	param uint32_t dimX
20996abf819e50b59ba8cf886c13f894633eb0a24baJason Sams	param uint32_t dimY
21096abf819e50b59ba8cf886c13f894633eb0a24baJason Sams	}
21196abf819e50b59ba8cf886c13f894633eb0a24baJason Sams
21274a827988567a9d65954bb0d825a3ba4a97e2947Alex SakhartchoukAllocationCopy2DRange {
21374a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param RsAllocation dest
21474a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t destXoff
21574a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t destYoff
21674a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t destMip
21774a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t destFace
21874a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t width
21974a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t height
22074a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param RsAllocation src
22174a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t srcXoff
22274a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t srcYoff
22374a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t srcMip
22474a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	param uint32_t srcFace
22574a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk	}
22674a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk
227326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerCreate {
228c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue magFilter
229c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue minFilter
230c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue wrapS
231c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue wrapT
232c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param RsSamplerValue wrapR
233c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    param float mAniso
234c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk    ret RsSampler
235c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk}
236326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
237326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptBindAllocation {
238326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsScript vtm
239326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
240326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
241326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
242326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
243d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetTimeZone {
244d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
24598e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	param const char * timeZone
24698e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	}
24798e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy
248be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptInvoke {
249be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param RsScript s
250fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams	param uint32_t slot
251326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
252326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
253be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptInvokeV {
2548c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param RsScript s
2558c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param uint32_t slot
256be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param const void * data
2578c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	}
2588c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams
259c2c02a88641620f50a69cc174077ac8bbef40478Alex SakhartchoukScriptForEach {
2605fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param RsScript s
2615fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param uint32_t slot
2625fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param RsAllocation ain
2635fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param RsAllocation aout
2645fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams    param const void * usr
2655fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams}
2665fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams
267be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarI {
268be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param RsScript s
269be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param uint32_t slot
270be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param int value
271be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	}
272be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams
273a5eb6e17c08426deeedf989d6be280d89662ee82Jason SamsScriptSetVarObj {
274a5eb6e17c08426deeedf989d6be280d89662ee82Jason Sams	param RsScript s
275a5eb6e17c08426deeedf989d6be280d89662ee82Jason Sams	param uint32_t slot
276a5eb6e17c08426deeedf989d6be280d89662ee82Jason Sams	param RsObjectBase value
277a5eb6e17c08426deeedf989d6be280d89662ee82Jason Sams	}
278a5eb6e17c08426deeedf989d6be280d89662ee82Jason Sams
2790977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen HinesScriptSetVarJ {
2800977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen Hines	param RsScript s
2810977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen Hines	param uint32_t slot
2820977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen Hines	param int64_t value
2830977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen Hines	}
2840977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen Hines
285be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarF {
286be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param RsScript s
287be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param uint32_t slot
288be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param float value
289be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	}
290be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams
2916d0a0740530d57e2a5759df994352600946ff47dStephen HinesScriptSetVarD {
2926d0a0740530d57e2a5759df994352600946ff47dStephen Hines	param RsScript s
2936d0a0740530d57e2a5759df994352600946ff47dStephen Hines	param uint32_t slot
2946d0a0740530d57e2a5759df994352600946ff47dStephen Hines	param double value
2956d0a0740530d57e2a5759df994352600946ff47dStephen Hines	}
2966d0a0740530d57e2a5759df994352600946ff47dStephen Hines
297be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarV {
298be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param RsScript s
299be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param uint32_t slot
300be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param const void * data
301be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	}
302fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
303fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
304326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCCreate {
3059503b66e5329703535f7cc71a0755e6f3b1e39a6Shih-wei Liao        param const char * resName
30615849d9a926fbd83587b9da30b8888574998a0fdShih-wei Liao        param const char * cacheDir
307bad807405b2b9764372af1ad24bcfd4fb1f33d8eJason Sams	param const char * text
308326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsScript
309326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
310326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
311326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
312721acc495b859c6d884725a4f9b5523583dd11c7Jason SamsProgramStoreCreate {
313721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams	param bool colorMaskR
314721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams	param bool colorMaskG
315721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams	param bool colorMaskB
316721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams	param bool colorMaskA
317721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams        param bool depthMask
318721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams        param bool ditherEnable
319326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsBlendSrcFunc srcFunc
320326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsBlendDstFunc destFunc
321721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams        param RsDepthFunc depthFunc
322ccc010bb7c0f89e162bf60033968a20be90a903aJason Sams	ret RsProgramStore
323326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
324326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3255fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterCreate {
3265fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool pointSmooth
3275fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool lineSmooth
3285fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool pointSprite
329721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams	param float lineWidth
330721acc495b859c6d884725a4f9b5523583dd11c7Jason Sams	param RsCullMode cull
3315fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	ret RsProgramRaster
3325fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams}
3335fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams
3344815c0d121310cfcd6a8aba4eab77a9910af53acJason SamsProgramBindConstants {
3354815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param RsProgram vp
3364815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param uint32_t slot
3374815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param RsAllocation constants
3384815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	}
3394815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams
340f2a5d7326b38e5a28b6618f9b1e5a021aef7179fJason Sams
3417dad9c30a59c99b57269e1b498807b6f034d56e9Jason SamsProgramBindTexture {
342326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pf
343326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
344326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation a
345326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
346326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3477dad9c30a59c99b57269e1b498807b6f034d56e9Jason SamsProgramBindSampler {
348326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pf
349326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
350326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSampler s
351326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
352326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
353326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentCreate {
354f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	param const char * shaderText
355f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	param const uint32_t * params
356f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	ret RsProgramFragment
357f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	}
358f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams
359326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexCreate {
3604815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param const char * shaderText
3614815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param const uint32_t * params
362f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	ret RsProgramVertex
363b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams	}
364b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams
3655224a27798f89093b13722b41143551a057ce550Alex SakhartchoukFontCreateFromFile {
366a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	param const char *name
3675224a27798f89093b13722b41143551a057ce550Alex Sakhartchouk	param float fontSize
3685224a27798f89093b13722b41143551a057ce550Alex Sakhartchouk	param uint32_t dpi
3695224a27798f89093b13722b41143551a057ce550Alex Sakhartchouk	ret RsFont
370a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	}
371a5597fcd411badad50c1345b3eca26453da45bbbJason Sams
3725224a27798f89093b13722b41143551a057ce550Alex SakhartchoukFontCreateFromMemory {
373d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk	param const char *name
374c17ace2391783dcabc6c1482edf0362654fd83e5Alex Sakhartchouk	param float fontSize
375d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk	param uint32_t dpi
37670b83c111beceaf8fbb700580833e7fec99272cfAlex Sakhartchouk	param const void *data
377d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk	ret RsFont
378d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk	}
379d3e0ad43dc758c409fc23d1893dab67b18520c24Alex Sakhartchouk
3804e9a7a8ded109e16b163789274899447cef02642Alex SakhartchoukMeshCreate {
3819003e5674fb3b2a1442cd0cca899fdc3246debf8Alex Sakhartchouk	param RsAllocation *vtx
3829003e5674fb3b2a1442cd0cca899fdc3246debf8Alex Sakhartchouk	param RsAllocation *idx
3839003e5674fb3b2a1442cd0cca899fdc3246debf8Alex Sakhartchouk	param uint32_t *primType
3844e9a7a8ded109e16b163789274899447cef02642Alex Sakhartchouk	ret RsMesh
3854e9a7a8ded109e16b163789274899447cef02642Alex Sakhartchouk	}
386