rs.spec revision 326e0ddf89e8df2837752fbfd7a014814b32082c
1326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
2326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindSampler {
4326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
5326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSampler sampler
6326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
7326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
8326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindRootScript {
9326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsScript sampler
10326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
11326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
12326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramFragmentStore {
13326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragmentStore pgm
14326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
15326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
16326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramFragment {
17326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pgm
18326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
19326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
20326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramVertex {
21326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramVertex pgm
22326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
23326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
24326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
25326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementBegin {
26326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
27326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
28326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementAddPredefined {
29326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElementPredefined predef
30326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
31326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
32326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementAdd {
33326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDataKind dataKind
34326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDataType dataType
35326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool isNormalized
36326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t bits
37326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
38326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
39326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementCreate {
40326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsElement
41326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
42326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
43326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementGetPredefined {
44326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElementPredefined predef
45326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsElement
46326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
47326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
48326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementDestroy {
49326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement ve
50326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
51326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
52326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeBegin {
53326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement type
54326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
55326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
56326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeAdd {
57326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDimension dim
58326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t value
59326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
60326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
61326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeCreate {
62326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsType
63326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
64326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
65326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeDestroy {
66326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsType p
67326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
68326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
69326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreateTyped {
70326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsType type
71326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAllocation
72326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
73326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
74326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreatePredefSized {
75326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElementPredefined predef
76326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t count
77326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAllocation
78326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
79326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
80326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreateSized {
81326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement e
82326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param size_t count
83326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAllocation
84326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
85326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
86326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreateFromBitmap {
87326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const char *file
88326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool genMips
89326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAllocation
90326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
91326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
92326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationUploadToTexture {
93326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
94326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t baseMipLevel
95326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
96326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
97326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationUploadToBufferObject {
98326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
99326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
100326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
101326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationDestroy {
102326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
103326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
104326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
105326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
106326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationData {
107326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
108326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void * data
109326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	} 
110326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
111326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocation1DSubData {
112326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
113326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
114326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t count
115326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
116326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	} 
117326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
118326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocation2DSubData {
119326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
120326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
121326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t yoff
122326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t w
123326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t h
124326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
125326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
126326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
127326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
128326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DCreate {
129326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAdapter1D
130326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
131326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
132326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DBindAllocation {
133326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapt
134326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
135326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
136326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
137326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DDestroy {
138326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapter
139326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
140326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
141326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DSetConstraint {
142326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapter
143326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDimension dim
144326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t value
145326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
146326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
147326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DData {
148326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapter
149326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void * data
150326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	} 
151326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
152326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DSubData {
153326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapter
154326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
155326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t count
156326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
157326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	} 
158326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
159326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DCreate {
160326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAdapter2D
161326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
162326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
163326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DBindAllocation {
164326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapt
165326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
166326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
167326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
168326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DDestroy {
169326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapter
170326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
171326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
172326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DSetConstraint {
173326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapter
174326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDimension dim
175326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t value
176326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
177326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
178326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DData {
179326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapter
180326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
181326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	} 
182326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
183326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DSubData {
184326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapter
185326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
186326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t yoff
187326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t w
188326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t h
189326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
190326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
191326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
192326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerBegin {
193326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
194326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
195326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerSet {
196326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSamplerParam p
197326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSamplerValue value
198326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
199326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
200326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerCreate {
201326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsSampler
202326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
203326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
204326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
205326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshBegin {
206326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement vertex
207326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement index
208326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
209326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
210326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshAddVertex {
211326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *vtx
212326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
213326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
214326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshAddTriangle {
215326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t idx1
216326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t idx2
217326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t idx3
218326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
219326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
220326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshCreate {
221326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsTriangleMesh
222326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
223326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
224326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshDestroy {
225326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsTriangleMesh mesh
226326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
227326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
228326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshRender {
229326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsTriangleMesh vtm
230326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
231326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
232326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshRenderRange {
233326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsTriangleMesh vtm
234326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t start
235326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t count
236326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
237326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
238326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptDestroy {
239326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsScript script
240326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
241326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
242326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptBindAllocation {
243326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsScript vtm
244326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
245326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
246326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
247326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
248326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
249326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCBegin {
250326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
251326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
252326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCSetClearColor {
253326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float r
254326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float g
255326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float b
256326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float a
257326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
258326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
259326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCSetClearDepth {
260326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float depth
261326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
262326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
263326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCSetClearStencil {
264326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t stencil
265326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
266326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
267326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCAddType {
268326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsType type
269326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
270326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
271326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCSetRoot {
272326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool isRoot
273326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
274326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
275326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCSetOrtho {
276326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool isOrtho
277326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
278326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
279326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCSetScript {
280326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param void * ptr
281326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
282326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
283326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCCreate {
284326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsScript
285326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
286326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
287326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
288326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreBegin {
289326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement in
290326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement out
291326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
292326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
293326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreColorMask {
294326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool r
295326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool g
296326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool b
297326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool a
298326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
299326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
300326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreBlendFunc {
301326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsBlendSrcFunc srcFunc
302326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsBlendDstFunc destFunc
303326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
304326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
305326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDepthMask {
306326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
307326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
308326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
309326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDither {
310326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
311326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
312326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
313326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDepthFunc {
314326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDepthFunc func
315326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
316326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
317326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreCreate {
318326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramFragmentStore
319326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
320326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
321326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
322326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
323326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBegin {
324326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement in
325326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement out
326326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
327326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
328326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBindTexture {
329326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pf
330326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
331326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation a
332326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
333326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
334326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBindSampler {
335326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pf
336326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
337326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSampler s
338326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
339326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
340326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentSetType {
341326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
342326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsType t
343326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
344326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
345326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentSetEnvMode {
346326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
347326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsTexEnvMode env
348326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
349326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
350326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentSetTexEnable {
351326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
352326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
353326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
354326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
355326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentCreate {
356326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramFragment
357326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
358326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
359326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
360326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
361326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexBegin {
362326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement in
363326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement out
364326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
365326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
366326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexCreate {
367326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramVertex
368326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
369326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
370326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexBindAllocation {
371326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramVertex vpgm
372326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
373326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation constants
374326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
375326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
376326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexSetType {
377326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
378326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsType constants
379326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
380326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
381326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexSetCameraMode {
382326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool ortho
383326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
384326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
385326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexSetTextureMatrixEnable {
386326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
387326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
388326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
389326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexSetModelMatrixEnable {
390326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
391326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
392326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
393