rs.spec revision 458f2dc26b7d34c2138c7bfbd95914240084e6bd
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 {
40458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams	param void *sur
41458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams	}
42458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams
43a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason SamsAssignName {
44a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	param void *obj
45a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	param const char *name
46a4a54e42fc710a62b47cbcb9d64c34a190429d9eJason Sams	param size_t len
47a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	}
48326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
49707aaf341a4b068e6ccadf923af85acdd85fd775Jason SamsObjDestroy {
50707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams	param void *obj
51707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams	}
52707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams
53326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementBegin {
54326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
55326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
56326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementAdd {
57326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDataKind dataKind
58326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDataType dataType
59326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool isNormalized
60326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t bits
618b2c065dfc16c148e2829a19e83d2269b9bcd4ccJason Sams	param const char * name
62326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
63326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
64326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementCreate {
65326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsElement
66326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
67326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
68326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeBegin {
69326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement type
70326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
71326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
72326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeAdd {
73326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDimension dim
74326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t value
75326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
76326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
77326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeCreate {
78326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsType
79326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
80326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
81326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreateTyped {
82326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsType type
83326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAllocation
84326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
85326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
86326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreateSized {
87326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement e
88326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t count
89326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAllocation
90326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
91326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
926678e9b2568ad041429a2477177133fe4932159fJason SamsAllocationCreateFromBitmap {
936678e9b2568ad041429a2477177133fe4932159fJason Sams	param uint32_t width
946678e9b2568ad041429a2477177133fe4932159fJason Sams	param uint32_t height
95a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams	param RsElement dstFmt
96a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams	param RsElement srcFmt
976678e9b2568ad041429a2477177133fe4932159fJason Sams	param bool genMips
986678e9b2568ad041429a2477177133fe4932159fJason Sams	param const void * data
996678e9b2568ad041429a2477177133fe4932159fJason Sams	ret RsAllocation
1006678e9b2568ad041429a2477177133fe4932159fJason Sams	}
1016678e9b2568ad041429a2477177133fe4932159fJason Sams
102c9d43db4d216b01b13aebfdb31d5615909591b33Jason SamsAllocationCreateFromBitmapBoxed {
103c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param uint32_t width
104c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param uint32_t height
105a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams	param RsElement dstFmt
106a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams	param RsElement srcFmt
107c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param bool genMips
108c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param const void * data
109c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	ret RsAllocation
110c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	}
111c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams
1126678e9b2568ad041429a2477177133fe4932159fJason Sams
113326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationUploadToTexture {
114326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
115326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t baseMipLevel
116326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
117326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
118326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationUploadToBufferObject {
119326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
120326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
121326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
122326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
123326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationData {
124326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
125326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void * data
1269397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	param uint32_t bytes
1279397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	handcodeApi
1289397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	togglePlay
129d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
130326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
131326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocation1DSubData {
132326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
133326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
134326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t count
135326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
1369397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	param uint32_t bytes
1379397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	handcodeApi
1389397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	togglePlay
139d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
140326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
141326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocation2DSubData {
142326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
143326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
144326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t yoff
145326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t w
146326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t h
147326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
1489397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	param uint32_t bytes
149326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
150326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
151e579df42e85d9e00f53c42ef1b78dbd209dba989Jason SamsAllocationRead {
152e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	param RsAllocation va
153e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	param void * data
154e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	}
155326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
156326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DCreate {
157326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAdapter1D
158326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
159326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
160326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DBindAllocation {
161326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapt
162326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
163326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
164326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
165326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DSetConstraint {
166326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapter
167326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDimension dim
168326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t value
169326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
170326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
171326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DData {
172326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapter
173326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void * data
174d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
175326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
176326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DSubData {
177326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapter
178326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
179326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t count
180326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
181d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
182326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
183326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DCreate {
184326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAdapter2D
185326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
186326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
187326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DBindAllocation {
188326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapt
189326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
190326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
191326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
192326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DSetConstraint {
193326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapter
194326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDimension dim
195326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t value
196326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
197326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
198326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DData {
199326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapter
200326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
201d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
202326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
203326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DSubData {
204326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapter
205326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
206326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t yoff
207326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t w
208326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t h
209326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
210326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
211326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
212326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerBegin {
213326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
214326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
215326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerSet {
216326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSamplerParam p
217326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSamplerValue value
218326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
219326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
220326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerCreate {
221326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsSampler
222326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
223326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
224326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
225326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
226326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptBindAllocation {
227326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsScript vtm
228326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
229326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
230326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
231326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
232326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
233326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCBegin {
234326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
235326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
236d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearColor {
237d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
238326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float r
239326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float g
240326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float b
241326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float a
242326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
243326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
244d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetTimeZone {
245d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
24698e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	param const char * timeZone
24798e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	param uint32_t length
24898e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	}
24998e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy
250d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearDepth {
251d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
252326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float depth
253326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
254326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
255d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearStencil {
256d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
257326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t stencil
258326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
259326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
260fa51719e6c1bd17b3f347477b4827face9ab647eJason SamsScriptSetType {
261326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsType type
262fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams	param uint32_t slot
26390b36a88cf0cc549b296ac15a249ea7786c6de9eJason Sams	param bool isWritable
264fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams	param const char * name
265326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
266326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
2678c6bc6930d4996b897de8e5113da4a4efae2310cJason SamsScriptSetInvoke {
2688c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param const char * name
2698c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param uint32_t slot
2708c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	}
2718c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams
2728c6bc6930d4996b897de8e5113da4a4efae2310cJason SamsScriptInvoke {
2738c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param RsScript s
2748c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param uint32_t slot
2758c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	}
2768c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams
277fa51719e6c1bd17b3f347477b4827face9ab647eJason SamsScriptSetRoot {
278326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool isRoot
279326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
280326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
281fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
282fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
283326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCSetScript {
2841ef8b80bc49f415b93912fe7335f852953bde4a4Jack Palevich	param void * codePtr
285326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
286326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
2871f52633fefd1862451e6a30209d590680d02beecJason SamsScriptCSetText {
2881f52633fefd1862451e6a30209d590680d02beecJason Sams	param const char * text
2891f52633fefd1862451e6a30209d590680d02beecJason Sams	param uint32_t length
2901f52633fefd1862451e6a30209d590680d02beecJason Sams	}
2911f52633fefd1862451e6a30209d590680d02beecJason Sams
292326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCCreate {
293326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsScript
294326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
295326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
29657b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoScriptCSetDefineF {
29757b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param const char* name
29857b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param float value
29957b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    }
30057b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato
30157b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoScriptCSetDefineI32 {
30257b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param const char* name
30357b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param int32_t value
30457b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    }
305326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
306326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreBegin {
307326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement in
308326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement out
309326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
310326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
311326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreColorMask {
312326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool r
313326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool g
314326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool b
315326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool a
316326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
317326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
318326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreBlendFunc {
319326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsBlendSrcFunc srcFunc
320326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsBlendDstFunc destFunc
321326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
322326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
323326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDepthMask {
324326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
325326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
326326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
327326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDither {
328326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
329326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
330326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
331326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDepthFunc {
332326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDepthFunc func
333326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
334326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
335326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreCreate {
336326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramFragmentStore
337326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
338326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3395fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterCreate {
3405fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsElement in
3415fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsElement out
3425fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool pointSmooth
3435fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool lineSmooth
3445fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool pointSprite
3455fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	ret RsProgramRaster
3465fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams}
3475fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams
3485fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterSetLineWidth {
3495fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsProgramRaster pr
3505fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param float lw
3515fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams}
3525fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams
3535fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterSetPointSize{
3545fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsProgramRaster pr
3555fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param float ps
3565fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams}
357326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
358326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
359326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBegin {
360326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement in
361326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement out
362e0158410a2fedef43f5a2848c28393ad611e8cadJason Sams	param bool pointSpriteEnable
363326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
364326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
365326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBindTexture {
366326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pf
367326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
368326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation a
369326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
370326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
371326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBindSampler {
372326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pf
373326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
374326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSampler s
375326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
376326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
377e0158410a2fedef43f5a2848c28393ad611e8cadJason SamsProgramFragmentSetSlot {
378326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
379326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
380e0158410a2fedef43f5a2848c28393ad611e8cadJason Sams	param RsTexEnvMode env
381e0158410a2fedef43f5a2848c28393ad611e8cadJason Sams	param RsType t
382326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
383326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
384326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentCreate {
385326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramFragment
386326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
387326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
388326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
389326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexBegin {
390326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement in
391326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement out
392326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
393326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
394326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexCreate {
395326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramVertex
396326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
397326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
398326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexBindAllocation {
399326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramVertex vpgm
400326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation constants
401326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
402326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
403326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexSetTextureMatrixEnable {
404326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
405326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
406326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
407b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason SamsProgramVertexAddLight {
408b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams	param RsLight light
409b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams	}
410b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams
41162bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightBegin {
41262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
41362bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
41462bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetLocal {
41562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param bool isLocal
41662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
41762bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
41862bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetMonochromatic {
41962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param bool isMono
42062bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
42162bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
42262bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightCreate {
42362bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	ret RsLight light
42462bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
42562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
42662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
42762bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetPosition {
42862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param RsLight light
42962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float x
43062bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float y
43162bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float z
43262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
43362bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
43462bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetColor {
43562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param RsLight light
43662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float r
43762bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float g
43862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float b
43962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
44062bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
441a5597fcd411badad50c1345b3eca26453da45bbbJason SamsFileOpen {
442a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	ret RsFile
443a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	param const char *name
444a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	param size_t len
445a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	}
446a5597fcd411badad50c1345b3eca26453da45bbbJason Sams
447a5597fcd411badad50c1345b3eca26453da45bbbJason Sams
448e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshCreate {
449e5ffb879ae535a899a486285a23bea05e912480fJason Sams	ret RsSimpleMesh
450e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation prim
451e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation index
452e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation *vtx
453e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param uint32_t vtxCount
454e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param uint32_t primType
455e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
456e5ffb879ae535a899a486285a23bea05e912480fJason Sams
457e5ffb879ae535a899a486285a23bea05e912480fJason Sams
458e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindIndex {
459e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsSimpleMesh mesh
460e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation idx
461e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
462e5ffb879ae535a899a486285a23bea05e912480fJason Sams
463e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindPrimitive {
464e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsSimpleMesh mesh
465e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation prim
466e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
467e5ffb879ae535a899a486285a23bea05e912480fJason Sams
468e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindVertex {
469e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsSimpleMesh mesh
470e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation vtx
471e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param uint32_t slot
472e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
473e5ffb879ae535a899a486285a23bea05e912480fJason Sams
474