rs.spec revision 707aaf341a4b068e6ccadf923af85acdd85fd775
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
1957b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoContextSetDefineF {
2057b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param const char* name
2157b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param float value
2257b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    }
2357b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato
2457b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoContextSetDefineI32 {
2557b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param const char* name
2657b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param int32_t value
2757b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    }
2857b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato
29a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason SamsAssignName {
30a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	param void *obj
31a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	param const char *name
32a4a54e42fc710a62b47cbcb9d64c34a190429d9eJason Sams	param size_t len
33a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	}
34326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
35707aaf341a4b068e6ccadf923af85acdd85fd775Jason SamsObjDestroy {
36707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams	param void *obj
37707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams	}
38707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams
39326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementBegin {
40326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
41326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
42326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementAddPredefined {
43326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElementPredefined predef
44326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
45326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
46326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementAdd {
47326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDataKind dataKind
48326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDataType dataType
49326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool isNormalized
50326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t bits
518b2c065dfc16c148e2829a19e83d2269b9bcd4ccJason Sams	param const char * name
52326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
53326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
54326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementCreate {
55326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsElement
56326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
57326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
58326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementGetPredefined {
59326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElementPredefined predef
60326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsElement
61326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
62326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
63326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeBegin {
64326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement type
65326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
66326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
67326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeAdd {
68326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDimension dim
69326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t value
70326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
71326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
72326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeCreate {
73326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsType
74326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
75326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
76326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreateTyped {
77326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsType type
78326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAllocation
79326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
80326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
81326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreatePredefSized {
82326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElementPredefined predef
83326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t count
84326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAllocation
85326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
86326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
87326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreateSized {
88326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement e
89326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t count
90326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAllocation
91326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
92326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
936678e9b2568ad041429a2477177133fe4932159fJason SamsAllocationCreateFromFile {
94326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const char *file
95326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool genMips
96326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAllocation
97326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
98326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
996678e9b2568ad041429a2477177133fe4932159fJason SamsAllocationCreateFromBitmap {
1006678e9b2568ad041429a2477177133fe4932159fJason Sams	param uint32_t width
1016678e9b2568ad041429a2477177133fe4932159fJason Sams	param uint32_t height
1026678e9b2568ad041429a2477177133fe4932159fJason Sams	param RsElementPredefined dstFmt
1036678e9b2568ad041429a2477177133fe4932159fJason Sams	param RsElementPredefined srcFmt
1046678e9b2568ad041429a2477177133fe4932159fJason Sams	param bool genMips
1056678e9b2568ad041429a2477177133fe4932159fJason Sams	param const void * data
1066678e9b2568ad041429a2477177133fe4932159fJason Sams	ret RsAllocation
1076678e9b2568ad041429a2477177133fe4932159fJason Sams	}
1086678e9b2568ad041429a2477177133fe4932159fJason Sams
109c9d43db4d216b01b13aebfdb31d5615909591b33Jason SamsAllocationCreateFromBitmapBoxed {
110c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param uint32_t width
111c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param uint32_t height
112c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param RsElementPredefined dstFmt
113c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param RsElementPredefined srcFmt
114c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param bool genMips
115c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param const void * data
116c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	ret RsAllocation
117c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	}
118c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams
1196678e9b2568ad041429a2477177133fe4932159fJason Sams
120326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationUploadToTexture {
121326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
122326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t baseMipLevel
123326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
124326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
125326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationUploadToBufferObject {
126326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
127326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
128326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
129326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
130326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationData {
131326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
132326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void * data
133d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
134326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
135326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocation1DSubData {
136326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
137326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
138326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t count
139326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
140d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
141326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
142326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocation2DSubData {
143326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
144326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
145326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t yoff
146326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t w
147326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t h
148326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
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 SamsTriangleMeshBegin {
226326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement vertex
227326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement index
228326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
229326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
230326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshAddVertex {
231326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *vtx
232326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
233326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
234326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshAddTriangle {
235326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t idx1
236326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t idx2
237326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t idx3
238326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
239326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
240326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshCreate {
241326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsTriangleMesh
242326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
243326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
244326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
245326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshRender {
246326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsTriangleMesh vtm
247326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
248326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
249326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshRenderRange {
250326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsTriangleMesh vtm
251326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t start
252326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t count
253326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
254326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
255326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
256326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptBindAllocation {
257326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsScript vtm
258326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
259326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
260326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
261326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
262326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
263326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCBegin {
264326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
265326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
266d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearColor {
267d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
268326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float r
269326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float g
270326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float b
271326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float a
272326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
273326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
274d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetTimeZone {
275d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
27698e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	param const char * timeZone
27798e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	param uint32_t length
27898e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	}
27998e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy
280d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearDepth {
281d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
282326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float depth
283326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
284326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
285d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearStencil {
286d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
287326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t stencil
288326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
289326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
290fa51719e6c1bd17b3f347477b4827face9ab647eJason SamsScriptSetType {
291326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsType type
292fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams	param uint32_t slot
29390b36a88cf0cc549b296ac15a249ea7786c6de9eJason Sams	param bool isWritable
294fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams	param const char * name
295326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
296326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
297fa51719e6c1bd17b3f347477b4827face9ab647eJason SamsScriptSetRoot {
298326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool isRoot
299326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
300326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
301fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
302fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
303326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCSetScript {
3041ef8b80bc49f415b93912fe7335f852953bde4a4Jack Palevich	param void * codePtr
305326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
306326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3071f52633fefd1862451e6a30209d590680d02beecJason SamsScriptCSetText {
3081f52633fefd1862451e6a30209d590680d02beecJason Sams	param const char * text
3091f52633fefd1862451e6a30209d590680d02beecJason Sams	param uint32_t length
3101f52633fefd1862451e6a30209d590680d02beecJason Sams	}
3111f52633fefd1862451e6a30209d590680d02beecJason Sams
312326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCCreate {
313326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsScript
314326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
315326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
31657b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoScriptCSetDefineF {
31757b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param const char* name
31857b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param float value
31957b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    }
32057b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato
32157b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoScriptCSetDefineI32 {
32257b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param const char* name
32357b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param int32_t value
32457b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    }
325326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
326326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreBegin {
327326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement in
328326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement out
329326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
330326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
331326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreColorMask {
332326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool r
333326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool g
334326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool b
335326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool a
336326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
337326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
338326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreBlendFunc {
339326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsBlendSrcFunc srcFunc
340326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsBlendDstFunc destFunc
341326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
342326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
343326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDepthMask {
344326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
345326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
346326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
347326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDither {
348326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
349326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
350326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
351326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDepthFunc {
352326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDepthFunc func
353326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
354326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
355326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreCreate {
356326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramFragmentStore
357326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
358326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
359326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
360326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
361326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBegin {
362326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement in
363326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement out
364326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
365326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
366326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBindTexture {
367326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pf
368326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
369326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation a
370326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
371326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
372326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBindSampler {
373326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pf
374326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
375326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSampler s
376326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
377326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
378326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentSetType {
379326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
380326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsType t
381326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
382326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
383326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentSetEnvMode {
384326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
385326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsTexEnvMode env
386326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
387326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
388326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentSetTexEnable {
389326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
390326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
391326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
392326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
393326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentCreate {
394326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramFragment
395326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
396326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
397326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
398326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexBegin {
399326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement in
400326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement out
401326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
402326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
403326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexCreate {
404326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramVertex
405326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
406326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
407326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexBindAllocation {
408326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramVertex vpgm
409326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation constants
410326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
411326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
412326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexSetTextureMatrixEnable {
413326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
414326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
415326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
416b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason SamsProgramVertexAddLight {
417b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams	param RsLight light
418b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams	}
419b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams
42062bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightBegin {
42162bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
42262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
42362bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetLocal {
42462bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param bool isLocal
42562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
42662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
42762bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetMonochromatic {
42862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param bool isMono
42962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
43062bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
43162bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightCreate {
43262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	ret RsLight light
43362bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
43462bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
43562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
43662bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetPosition {
43762bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param RsLight light
43862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float x
43962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float y
44062bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float z
44162bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
44262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
44362bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetColor {
44462bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param RsLight light
44562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float r
44662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float g
44762bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float b
44862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
44962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
450a5597fcd411badad50c1345b3eca26453da45bbbJason SamsFileOpen {
451a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	ret RsFile
452a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	param const char *name
453a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	param size_t len
454a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	}
455a5597fcd411badad50c1345b3eca26453da45bbbJason Sams
456a5597fcd411badad50c1345b3eca26453da45bbbJason Sams
457e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshCreate {
458e5ffb879ae535a899a486285a23bea05e912480fJason Sams	ret RsSimpleMesh
459e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation prim
460e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation index
461e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation *vtx
462e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param uint32_t vtxCount
463e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param uint32_t primType
464e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
465e5ffb879ae535a899a486285a23bea05e912480fJason Sams
466e5ffb879ae535a899a486285a23bea05e912480fJason Sams
467e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindIndex {
468e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsSimpleMesh mesh
469e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation idx
470e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
471e5ffb879ae535a899a486285a23bea05e912480fJason Sams
472e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindPrimitive {
473e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsSimpleMesh mesh
474e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation prim
475e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
476e5ffb879ae535a899a486285a23bea05e912480fJason Sams
477e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindVertex {
478e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsSimpleMesh mesh
479e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation vtx
480e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param uint32_t slot
481e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
482e5ffb879ae535a899a486285a23bea05e912480fJason Sams
483