rs.spec revision 613cad1702dbb76eb2a6ba0cfcb43b9fe207cebc
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
45613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason SamsContextSetPriority {
46613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams	param uint32_t priority
47613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams	}
48613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams
49a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason SamsAssignName {
50a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	param void *obj
51a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	param const char *name
52a4a54e42fc710a62b47cbcb9d64c34a190429d9eJason Sams	param size_t len
53a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	}
54326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
55707aaf341a4b068e6ccadf923af85acdd85fd775Jason SamsObjDestroy {
56707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams	param void *obj
57707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams	}
58707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams
59326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementBegin {
60326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
61326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
62326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementAdd {
63326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDataKind dataKind
64326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDataType dataType
65326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool isNormalized
66326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t bits
678b2c065dfc16c148e2829a19e83d2269b9bcd4ccJason Sams	param const char * name
68326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
69326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
70326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementCreate {
71326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsElement
72326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
73326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
74326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeBegin {
75326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement type
76326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
77326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
78326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeAdd {
79326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDimension dim
80326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t value
81326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
82326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
83326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeCreate {
84326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsType
85326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
86326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
87326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreateTyped {
88326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsType type
89326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAllocation
90326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
91326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
92326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreateSized {
93326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement e
94326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t count
95326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAllocation
96326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
97326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
986678e9b2568ad041429a2477177133fe4932159fJason SamsAllocationCreateFromBitmap {
996678e9b2568ad041429a2477177133fe4932159fJason Sams	param uint32_t width
1006678e9b2568ad041429a2477177133fe4932159fJason Sams	param uint32_t height
101a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams	param RsElement dstFmt
102a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams	param RsElement srcFmt
1036678e9b2568ad041429a2477177133fe4932159fJason Sams	param bool genMips
1046678e9b2568ad041429a2477177133fe4932159fJason Sams	param const void * data
1056678e9b2568ad041429a2477177133fe4932159fJason Sams	ret RsAllocation
1066678e9b2568ad041429a2477177133fe4932159fJason Sams	}
1076678e9b2568ad041429a2477177133fe4932159fJason Sams
108c9d43db4d216b01b13aebfdb31d5615909591b33Jason SamsAllocationCreateFromBitmapBoxed {
109c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param uint32_t width
110c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param uint32_t height
111a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams	param RsElement dstFmt
112a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams	param RsElement srcFmt
113c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param bool genMips
114c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param const void * data
115c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	ret RsAllocation
116c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	}
117c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams
1186678e9b2568ad041429a2477177133fe4932159fJason Sams
119326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationUploadToTexture {
120326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
121326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t baseMipLevel
122326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
123326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
124326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationUploadToBufferObject {
125326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
126326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
127326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
128326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
129326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationData {
130326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
131326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void * data
1329397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	param uint32_t bytes
1339397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	handcodeApi
1349397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	togglePlay
135d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
136326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
137326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocation1DSubData {
138326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
139326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
140326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t count
141326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
1429397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	param uint32_t bytes
1439397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	handcodeApi
1449397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	togglePlay
145d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
146326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
147326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocation2DSubData {
148326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
149326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
150326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t yoff
151326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t w
152326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t h
153326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
1549397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	param uint32_t bytes
155326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
156326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
157e579df42e85d9e00f53c42ef1b78dbd209dba989Jason SamsAllocationRead {
158e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	param RsAllocation va
159e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	param void * data
160e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	}
161326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
162326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DCreate {
163326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAdapter1D
164326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
165326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
166326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DBindAllocation {
167326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapt
168326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
169326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
170326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
171326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DSetConstraint {
172326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapter
173326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDimension dim
174326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t value
175326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
176326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
177326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DData {
178326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapter
179326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void * data
180d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
181326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
182326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DSubData {
183326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapter
184326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
185326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t count
186326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
187d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
188326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
189326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DCreate {
190326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAdapter2D
191326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
192326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
193326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DBindAllocation {
194326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapt
195326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
196326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
197326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
198326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DSetConstraint {
199326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapter
200326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDimension dim
201326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t value
202326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
203326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
204326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DData {
205326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapter
206326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
207d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
208326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
209326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DSubData {
210326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapter
211326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
212326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t yoff
213326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t w
214326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t h
215326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
216326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
217326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
218326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerBegin {
219326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
220326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
221326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerSet {
222326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSamplerParam p
223326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSamplerValue value
224326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
225326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
226326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerCreate {
227326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsSampler
228326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
229326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
230326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
231326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
232326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptBindAllocation {
233326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsScript vtm
234326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
235326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
236326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
237326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
238326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
239326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCBegin {
240326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
241326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
242d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearColor {
243d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
244326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float r
245326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float g
246326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float b
247326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float a
248326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
249326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
250d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetTimeZone {
251d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
25298e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	param const char * timeZone
25398e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	param uint32_t length
25498e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	}
25598e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy
256d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearDepth {
257d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
258326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float depth
259326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
260326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
261d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearStencil {
262d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
263326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t stencil
264326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
265326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
266fa51719e6c1bd17b3f347477b4827face9ab647eJason SamsScriptSetType {
267326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsType type
268fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams	param uint32_t slot
26990b36a88cf0cc549b296ac15a249ea7786c6de9eJason Sams	param bool isWritable
270fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams	param const char * name
271326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
272326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
2738c6bc6930d4996b897de8e5113da4a4efae2310cJason SamsScriptSetInvoke {
2748c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param const char * name
2758c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param uint32_t slot
2768c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	}
2778c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams
2788c6bc6930d4996b897de8e5113da4a4efae2310cJason SamsScriptInvoke {
2798c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param RsScript s
2808c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param uint32_t slot
2818c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	}
2828c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams
283fa51719e6c1bd17b3f347477b4827face9ab647eJason SamsScriptSetRoot {
284326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool isRoot
285326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
286326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
287fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
288fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
289326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCSetScript {
2901ef8b80bc49f415b93912fe7335f852953bde4a4Jack Palevich	param void * codePtr
291326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
292326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
2931f52633fefd1862451e6a30209d590680d02beecJason SamsScriptCSetText {
2941f52633fefd1862451e6a30209d590680d02beecJason Sams	param const char * text
2951f52633fefd1862451e6a30209d590680d02beecJason Sams	param uint32_t length
2961f52633fefd1862451e6a30209d590680d02beecJason Sams	}
2971f52633fefd1862451e6a30209d590680d02beecJason Sams
298326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCCreate {
299326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsScript
300326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
301326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
30257b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoScriptCSetDefineF {
30357b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param const char* name
30457b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param float value
30557b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    }
30657b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato
30757b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoScriptCSetDefineI32 {
30857b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param const char* name
30957b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param int32_t value
31057b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    }
311326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
312326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreBegin {
313326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement in
314326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement out
315326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
316326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
317326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreColorMask {
318326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool r
319326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool g
320326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool b
321326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool a
322326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
323326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
324326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreBlendFunc {
325326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsBlendSrcFunc srcFunc
326326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsBlendDstFunc destFunc
327326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
328326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
329326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDepthMask {
330326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
331326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
332326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
333326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDither {
334326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
335326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
336326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
337326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDepthFunc {
338326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDepthFunc func
339326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
340326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
341326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreCreate {
342326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramFragmentStore
343326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
344326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3455fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterCreate {
3465fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsElement in
3475fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsElement out
3485fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool pointSmooth
3495fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool lineSmooth
3505fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool pointSprite
3515fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	ret RsProgramRaster
3525fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams}
3535fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams
3545fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterSetLineWidth {
3555fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsProgramRaster pr
3565fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param float lw
3575fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams}
3585fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams
3595fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterSetPointSize{
3605fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsProgramRaster pr
3615fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param float ps
3625fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams}
363326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
364326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
365326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBegin {
366326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement in
367326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement out
368e0158410a2fedef43f5a2848c28393ad611e8cadJason Sams	param bool pointSpriteEnable
369326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
370326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
371326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBindTexture {
372326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pf
373326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
374326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation a
375326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
376326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
377326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBindSampler {
378326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pf
379326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
380326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSampler s
381326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
382326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
383e0158410a2fedef43f5a2848c28393ad611e8cadJason SamsProgramFragmentSetSlot {
384326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
385326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
386e0158410a2fedef43f5a2848c28393ad611e8cadJason Sams	param RsTexEnvMode env
387e0158410a2fedef43f5a2848c28393ad611e8cadJason Sams	param RsType t
388326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
389326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
390326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentCreate {
391326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramFragment
392326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
393326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
394326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
395326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexBegin {
396326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement in
397326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement out
398326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
399326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
400326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexCreate {
401326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramVertex
402326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
403326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
404326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexBindAllocation {
405326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramVertex vpgm
406326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation constants
407326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
408326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
409326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexSetTextureMatrixEnable {
410326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
411326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
412326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
413b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason SamsProgramVertexAddLight {
414b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams	param RsLight light
415b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams	}
416b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams
41762bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightBegin {
41862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
41962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
42062bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetLocal {
42162bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param bool isLocal
42262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
42362bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
42462bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetMonochromatic {
42562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param bool isMono
42662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
42762bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
42862bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightCreate {
42962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	ret RsLight light
43062bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
43162bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
43262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
43362bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetPosition {
43462bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param RsLight light
43562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float x
43662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float y
43762bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float z
43862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
43962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
44062bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetColor {
44162bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param RsLight light
44262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float r
44362bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float g
44462bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float b
44562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
44662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
447a5597fcd411badad50c1345b3eca26453da45bbbJason SamsFileOpen {
448a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	ret RsFile
449a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	param const char *name
450a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	param size_t len
451a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	}
452a5597fcd411badad50c1345b3eca26453da45bbbJason Sams
453a5597fcd411badad50c1345b3eca26453da45bbbJason Sams
454e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshCreate {
455e5ffb879ae535a899a486285a23bea05e912480fJason Sams	ret RsSimpleMesh
456e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation prim
457e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation index
458e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation *vtx
459e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param uint32_t vtxCount
460e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param uint32_t primType
461e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
462e5ffb879ae535a899a486285a23bea05e912480fJason Sams
463e5ffb879ae535a899a486285a23bea05e912480fJason Sams
464e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindIndex {
465e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsSimpleMesh mesh
466e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation idx
467e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
468e5ffb879ae535a899a486285a23bea05e912480fJason Sams
469e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindPrimitive {
470e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsSimpleMesh mesh
471e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation prim
472e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
473e5ffb879ae535a899a486285a23bea05e912480fJason Sams
474e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindVertex {
475e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsSimpleMesh mesh
476e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation vtx
477e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param uint32_t slot
478e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
479e5ffb879ae535a899a486285a23bea05e912480fJason Sams
480