rs.spec revision c21cf40f6ae69091bf24f87b5eeabc95e73dd271
1326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
2326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindRootScript {
4326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsScript sampler
5326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
6326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
7326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramFragmentStore {
8326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragmentStore pgm
9326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
10326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
11326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramFragment {
12326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pgm
13326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
14326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
15326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramVertex {
16326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramVertex pgm
17326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
18326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
195fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsContextBindProgramRaster {
205fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsProgramRaster pgm
215fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	}
225fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams
2357b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoContextSetDefineF {
2457b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param const char* name
2557b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param float value
2657b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    }
2757b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato
2857b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoContextSetDefineI32 {
2957b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param const char* name
3057b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param int32_t value
3157b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    }
3257b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato
3386f1b23aaaf9b8822a009d8c3e585e46768abb6aJason SamsContextPause {
3486f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams	}
3586f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams
3686f1b23aaaf9b8822a009d8c3e585e46768abb6aJason SamsContextResume {
3786f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams	}
3886f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams
39458f2dc26b7d34c2138c7bfbd95914240084e6bdJason SamsContextSetSurface {
40613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams	param uint32_t width
41613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams	param uint32_t height
42458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams	param void *sur
43458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams	}
44458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams
45c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason SamsContextDump {
46c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams	param int32_t bits
47c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams}
48c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams
49613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason SamsContextSetPriority {
50158324456b8dbf40f684dd0a4af3493b9549f3f5Jason Sams	param int32_t priority
51613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams	}
52613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams
53a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason SamsAssignName {
54a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	param void *obj
55a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	param const char *name
56a4a54e42fc710a62b47cbcb9d64c34a190429d9eJason Sams	param size_t len
57a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	}
58326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
59707aaf341a4b068e6ccadf923af85acdd85fd775Jason SamsObjDestroy {
60707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams	param void *obj
61707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams	}
62707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams
63326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementBegin {
64326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
65326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
66326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementAdd {
67326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDataKind dataKind
68326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDataType dataType
69326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool isNormalized
70326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t bits
718b2c065dfc16c148e2829a19e83d2269b9bcd4ccJason Sams	param const char * name
72326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
73326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
74326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementCreate {
75326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsElement
76326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
77326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
78326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeBegin {
79326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement type
80326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
81326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
82326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeAdd {
83326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDimension dim
84326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t value
85326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
86326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
87326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeCreate {
88326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsType
89326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
90326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
91326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreateTyped {
92326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsType type
93326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAllocation
94326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
95326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
96326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreateSized {
97326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement e
98326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t count
99326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAllocation
100326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
101326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
1026678e9b2568ad041429a2477177133fe4932159fJason SamsAllocationCreateFromBitmap {
1036678e9b2568ad041429a2477177133fe4932159fJason Sams	param uint32_t width
1046678e9b2568ad041429a2477177133fe4932159fJason Sams	param uint32_t height
105a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams	param RsElement dstFmt
106a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams	param RsElement srcFmt
1076678e9b2568ad041429a2477177133fe4932159fJason Sams	param bool genMips
1086678e9b2568ad041429a2477177133fe4932159fJason Sams	param const void * data
1096678e9b2568ad041429a2477177133fe4932159fJason Sams	ret RsAllocation
1106678e9b2568ad041429a2477177133fe4932159fJason Sams	}
1116678e9b2568ad041429a2477177133fe4932159fJason Sams
112c9d43db4d216b01b13aebfdb31d5615909591b33Jason SamsAllocationCreateFromBitmapBoxed {
113c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param uint32_t width
114c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param uint32_t height
115a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams	param RsElement dstFmt
116a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams	param RsElement srcFmt
117c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param bool genMips
118c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param const void * data
119c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	ret RsAllocation
120c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	}
121c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams
1226678e9b2568ad041429a2477177133fe4932159fJason Sams
123326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationUploadToTexture {
124326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
125326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t baseMipLevel
126326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
127326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
128326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationUploadToBufferObject {
129326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
130326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
131326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
132326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
133326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationData {
134326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
135326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void * data
1369397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	param uint32_t bytes
1379397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	handcodeApi
1389397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	togglePlay
139d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
140326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
141326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocation1DSubData {
142326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
143326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
144326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t count
145326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
1469397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	param uint32_t bytes
1479397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	handcodeApi
1489397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	togglePlay
149d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
150326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
151326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocation2DSubData {
152326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
153326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
154326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t yoff
155326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t w
156326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t h
157326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
1589397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	param uint32_t bytes
159326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
160326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
161e579df42e85d9e00f53c42ef1b78dbd209dba989Jason SamsAllocationRead {
162e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	param RsAllocation va
163e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	param void * data
164e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	}
165326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
166326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DCreate {
167326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAdapter1D
168326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
169326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
170326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DBindAllocation {
171326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapt
172326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
173326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
174326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
175326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DSetConstraint {
176326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapter
177326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDimension dim
178326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t value
179326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
180326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
181326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DData {
182326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapter
183326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void * data
184d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
185326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
186326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DSubData {
187326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapter
188326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
189326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t count
190326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
191d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
192326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
193326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DCreate {
194326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAdapter2D
195326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
196326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
197326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DBindAllocation {
198326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapt
199326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
200326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
201326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
202326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DSetConstraint {
203326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapter
204326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDimension dim
205326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t value
206326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
207326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
208326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DData {
209326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapter
210326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
211d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
212326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
213326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DSubData {
214326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapter
215326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
216326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t yoff
217326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t w
218326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t h
219326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
220326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
221326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
222326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerBegin {
223326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
224326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
225326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerSet {
226326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSamplerParam p
227326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSamplerValue value
228326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
229326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
230326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerCreate {
231326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsSampler
232326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
233326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
234326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
235326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
236326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptBindAllocation {
237326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsScript vtm
238326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
239326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
240326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
241326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
242326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
243326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCBegin {
244326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
245326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
246d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearColor {
247d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
248326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float r
249326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float g
250326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float b
251326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float a
252326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
253326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
254d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetTimeZone {
255d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
25698e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	param const char * timeZone
25798e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	param uint32_t length
25898e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	}
25998e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy
260d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearDepth {
261d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
262326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float depth
263326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
264326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
265d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearStencil {
266d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
267326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t stencil
268326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
269326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
270fa51719e6c1bd17b3f347477b4827face9ab647eJason SamsScriptSetType {
271326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsType type
272fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams	param uint32_t slot
27390b36a88cf0cc549b296ac15a249ea7786c6de9eJason Sams	param bool isWritable
274fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams	param const char * name
275326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
276326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
2778c6bc6930d4996b897de8e5113da4a4efae2310cJason SamsScriptSetInvoke {
2788c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param const char * name
2798c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param uint32_t slot
2808c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	}
2818c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams
2828c6bc6930d4996b897de8e5113da4a4efae2310cJason SamsScriptInvoke {
2838c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param RsScript s
2848c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param uint32_t slot
2858c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	}
2868c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams
287fa51719e6c1bd17b3f347477b4827face9ab647eJason SamsScriptSetRoot {
288326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool isRoot
289326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
290326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
291fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
292fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
293326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCSetScript {
2941ef8b80bc49f415b93912fe7335f852953bde4a4Jack Palevich	param void * codePtr
295326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
296326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
2971f52633fefd1862451e6a30209d590680d02beecJason SamsScriptCSetText {
2981f52633fefd1862451e6a30209d590680d02beecJason Sams	param const char * text
2991f52633fefd1862451e6a30209d590680d02beecJason Sams	param uint32_t length
3001f52633fefd1862451e6a30209d590680d02beecJason Sams	}
3011f52633fefd1862451e6a30209d590680d02beecJason Sams
302326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCCreate {
303326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsScript
304326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
305326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
30657b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoScriptCSetDefineF {
30757b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param const char* name
30857b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param float value
30957b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    }
31057b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato
31157b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoScriptCSetDefineI32 {
31257b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param const char* name
31357b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param int32_t value
31457b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    }
315326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
316326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreBegin {
317326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement in
318326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement out
319326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
320326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
321326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreColorMask {
322326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool r
323326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool g
324326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool b
325326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool a
326326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
327326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
328326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreBlendFunc {
329326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsBlendSrcFunc srcFunc
330326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsBlendDstFunc destFunc
331326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
332326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
333326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDepthMask {
334326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
335326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
336326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
337326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDither {
338326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
339326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
340326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
341326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDepthFunc {
342326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDepthFunc func
343326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
344326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
345326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreCreate {
346326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramFragmentStore
347326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
348326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3495fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterCreate {
3505fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsElement in
3515fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsElement out
3525fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool pointSmooth
3535fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool lineSmooth
3545fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool pointSprite
3555fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	ret RsProgramRaster
3565fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams}
3575fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams
3585fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterSetLineWidth {
3595fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsProgramRaster pr
3605fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param float lw
3615fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams}
3625fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams
3635fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterSetPointSize{
3645fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsProgramRaster pr
3655fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param float ps
3665fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams}
367326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
368326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
369326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBegin {
370326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement in
371326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement out
372e0158410a2fedef43f5a2848c28393ad611e8cadJason Sams	param bool pointSpriteEnable
373326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
374326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
375326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBindTexture {
376326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pf
377326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
378326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation a
379326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
380326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
381326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBindSampler {
382326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pf
383326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
384326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSampler s
385326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
386326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
387e0158410a2fedef43f5a2848c28393ad611e8cadJason SamsProgramFragmentSetSlot {
388326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
389326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
390e0158410a2fedef43f5a2848c28393ad611e8cadJason Sams	param RsTexEnvMode env
391e0158410a2fedef43f5a2848c28393ad611e8cadJason Sams	param RsType t
392326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
393326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
394326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentCreate {
395326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramFragment
396326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
397326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
398326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
399326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexBegin {
400326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement in
401326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement out
402326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
403326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
404326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexCreate {
405326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramVertex
406326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
407326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
408326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexBindAllocation {
409326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramVertex vpgm
410326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation constants
411326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
412326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
413326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexSetTextureMatrixEnable {
414326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
415326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
416326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
417b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason SamsProgramVertexAddLight {
418b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams	param RsLight light
419b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams	}
420b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams
42162bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightBegin {
42262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
42362bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
42462bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetLocal {
42562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param bool isLocal
42662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
42762bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
42862bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetMonochromatic {
42962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param bool isMono
43062bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
43162bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
43262bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightCreate {
43362bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	ret RsLight light
43462bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
43562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
43662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
43762bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetPosition {
43862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param RsLight light
43962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float x
44062bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float y
44162bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float z
44262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
44362bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
44462bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetColor {
44562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param RsLight light
44662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float r
44762bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float g
44862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float b
44962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
45062bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
451a5597fcd411badad50c1345b3eca26453da45bbbJason SamsFileOpen {
452a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	ret RsFile
453a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	param const char *name
454a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	param size_t len
455a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	}
456a5597fcd411badad50c1345b3eca26453da45bbbJason Sams
457a5597fcd411badad50c1345b3eca26453da45bbbJason Sams
458e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshCreate {
459e5ffb879ae535a899a486285a23bea05e912480fJason Sams	ret RsSimpleMesh
460e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation prim
461e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation index
462e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation *vtx
463e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param uint32_t vtxCount
464e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param uint32_t primType
465e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
466e5ffb879ae535a899a486285a23bea05e912480fJason Sams
467e5ffb879ae535a899a486285a23bea05e912480fJason Sams
468e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindIndex {
469e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsSimpleMesh mesh
470e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation idx
471e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
472e5ffb879ae535a899a486285a23bea05e912480fJason Sams
473e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindPrimitive {
474e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsSimpleMesh mesh
475e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation prim
476e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
477e5ffb879ae535a899a486285a23bea05e912480fJason Sams
478e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindVertex {
479e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsSimpleMesh mesh
480e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation vtx
481e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param uint32_t slot
482e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
483e5ffb879ae535a899a486285a23bea05e912480fJason Sams
484