rs.spec revision ccc010bb7c0f89e162bf60033968a20be90a903a
1326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
2326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindRootScript {
4326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsScript sampler
5326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
6326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
7ccc010bb7c0f89e162bf60033968a20be90a903aJason SamsContextBindProgramStore {
8ccc010bb7c0f89e162bf60033968a20be90a903aJason Sams	param RsProgramStore 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
2386f1b23aaaf9b8822a009d8c3e585e46768abb6aJason SamsContextPause {
2486f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams	}
2586f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams
2686f1b23aaaf9b8822a009d8c3e585e46768abb6aJason SamsContextResume {
2786f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams	}
2886f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams
29458f2dc26b7d34c2138c7bfbd95914240084e6bdJason SamsContextSetSurface {
30613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams	param uint32_t width
31613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams	param uint32_t height
32fa4028663712dbb1a3d13c507c3bc13c6e4be80dMathias Agopian	param android_native_window_t *sur
33458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams	}
34458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams
35c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason SamsContextDump {
36c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams	param int32_t bits
37c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams}
38c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams
39a2cf755a28a1e7ffff2955df656d714f40e4d715Jason SamsContextGetError {
40a2cf755a28a1e7ffff2955df656d714f40e4d715Jason Sams	param RsError *err
41a2cf755a28a1e7ffff2955df656d714f40e4d715Jason Sams	ret const char *
42a2cf755a28a1e7ffff2955df656d714f40e4d715Jason Sams	}
43a2cf755a28a1e7ffff2955df656d714f40e4d715Jason Sams
44613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason SamsContextSetPriority {
45158324456b8dbf40f684dd0a4af3493b9549f3f5Jason Sams	param int32_t priority
46613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams	}
47613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams
48a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason SamsAssignName {
49a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	param void *obj
50a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	param const char *name
51a4a54e42fc710a62b47cbcb9d64c34a190429d9eJason Sams	param size_t len
52a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams	}
53326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
54707aaf341a4b068e6ccadf923af85acdd85fd775Jason SamsObjDestroy {
55707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams	param void *obj
56707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams	}
57707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams
58d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason SamsElementCreate {
59d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param RsDataType mType
60d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param RsDataKind mKind
61d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param bool mNormalized
62d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param uint32_t mVectorSize
63d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	ret RsElement
64326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
65326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
66d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason SamsElementCreate2 {
67d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param size_t count
68d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param const RsElement * elements
69d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param const char ** names
70d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason Sams	param const size_t * nameLengths
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
98fa84da2cbc271f855b3b1ec75bb688abdf1d1d01Jason SamsAllocationCreateBitmapRef {
99fa84da2cbc271f855b3b1ec75bb688abdf1d1d01Jason Sams	param RsType type
100fa84da2cbc271f855b3b1ec75bb688abdf1d1d01Jason Sams	param void * bmpPtr
101fa84da2cbc271f855b3b1ec75bb688abdf1d1d01Jason Sams	param void * callbackData
102fa84da2cbc271f855b3b1ec75bb688abdf1d1d01Jason Sams	param RsBitmapCallback_t callback
103fa84da2cbc271f855b3b1ec75bb688abdf1d1d01Jason Sams	ret RsAllocation
104fa84da2cbc271f855b3b1ec75bb688abdf1d1d01Jason Sams	}
105fa84da2cbc271f855b3b1ec75bb688abdf1d1d01Jason Sams
1066678e9b2568ad041429a2477177133fe4932159fJason SamsAllocationCreateFromBitmap {
1076678e9b2568ad041429a2477177133fe4932159fJason Sams	param uint32_t width
1086678e9b2568ad041429a2477177133fe4932159fJason Sams	param uint32_t height
109a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams	param RsElement dstFmt
110a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams	param RsElement srcFmt
1116678e9b2568ad041429a2477177133fe4932159fJason Sams	param bool genMips
1126678e9b2568ad041429a2477177133fe4932159fJason Sams	param const void * data
1136678e9b2568ad041429a2477177133fe4932159fJason Sams	ret RsAllocation
1146678e9b2568ad041429a2477177133fe4932159fJason Sams	}
1156678e9b2568ad041429a2477177133fe4932159fJason Sams
116c9d43db4d216b01b13aebfdb31d5615909591b33Jason SamsAllocationCreateFromBitmapBoxed {
117c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param uint32_t width
118c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param uint32_t height
119a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams	param RsElement dstFmt
120a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams	param RsElement srcFmt
121c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param bool genMips
122c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	param const void * data
123c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	ret RsAllocation
124c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams	}
125c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams
1266678e9b2568ad041429a2477177133fe4932159fJason Sams
127326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationUploadToTexture {
128326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
1297fabe1a3bf8de37d86021bb7f744c791db81aed3Jason Sams	param bool genMipMaps
130326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t baseMipLevel
131326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
132326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
133326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationUploadToBufferObject {
134326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
135326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
136326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
137326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
138326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationData {
139326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
140326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void * data
1419397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	param uint32_t bytes
1429397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	handcodeApi
1439397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	togglePlay
144d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
145326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
146326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocation1DSubData {
147326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
148326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
149326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t count
150326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
1519397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	param uint32_t bytes
1529397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	handcodeApi
1539397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	togglePlay
154d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
155326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
156326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocation2DSubData {
157326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
158326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
159326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t yoff
160326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t w
161326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t h
162326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
1639397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams	param uint32_t bytes
164326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
165326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
166e579df42e85d9e00f53c42ef1b78dbd209dba989Jason SamsAllocationRead {
167e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	param RsAllocation va
168e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	param void * data
169e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams	}
170326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
171326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DCreate {
172326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAdapter1D
173326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
174326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
175326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DBindAllocation {
176326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapt
177326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
178326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
179326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
180326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DSetConstraint {
181326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapter
182326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDimension dim
183326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t value
184326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
185326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
186326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DData {
187326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapter
188326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void * data
189d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
190326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
191326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DSubData {
192326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter1D adapter
193326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
194326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t count
195326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
196d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
197326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
198326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DCreate {
199326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsAdapter2D
200326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
201326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
202326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DBindAllocation {
203326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapt
204326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation alloc
205326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
206326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
207326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DSetConstraint {
208326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapter
209326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDimension dim
210326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t value
211326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
212326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
213326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DData {
214326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapter
215326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
216d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	}
217326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
218326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DSubData {
219326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAdapter2D adapter
220326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t xoff
221326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t yoff
222326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t w
223326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t h
224326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param const void *data
225326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
226326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
227326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerBegin {
228326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
229326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
230326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerSet {
231326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSamplerParam p
232326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSamplerValue value
233326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
234326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
235326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerCreate {
236326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsSampler
237326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
238326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
239326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
240326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
241326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptBindAllocation {
242326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsScript vtm
243326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation va
244326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
245326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
246326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
247326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
248326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCBegin {
249326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
250326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
251d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearColor {
252d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
253326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float r
254326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float g
255326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float b
256326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float a
257326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
258326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
259d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetTimeZone {
260d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
26198e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	param const char * timeZone
26298e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	param uint32_t length
26398e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy	}
26498e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy
265d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearDepth {
266d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
267326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param float depth
268326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
269326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
270d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearStencil {
271d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams	param RsScript s
272326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t stencil
273326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
274326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
275be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams
276be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptInvoke {
277be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param RsScript s
278fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams	param uint32_t slot
279326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
280326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
281be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptInvokeData {
282be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param RsScript s
2838c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param uint32_t slot
284be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param void * data
2858c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	}
2868c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams
287be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptInvokeV {
2888c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param RsScript s
2898c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	param uint32_t slot
290be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param const void * data
291be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param uint32_t dataLen
292be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	handcodeApi
293be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	togglePlay
2948c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams	}
2958c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams
296fa51719e6c1bd17b3f347477b4827face9ab647eJason SamsScriptSetRoot {
297326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool isRoot
298326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
299326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
300be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarI {
301be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param RsScript s
302be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param uint32_t slot
303be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param int value
304be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	}
305be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams
306be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarF {
307be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param RsScript s
308be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param uint32_t slot
309be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param float value
310be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	}
311be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams
312be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarV {
313be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param RsScript s
314be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param uint32_t slot
315be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param const void * data
316be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	param uint32_t dataLen
317be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	handcodeApi
318be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	togglePlay
319be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams	}
320fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
321fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams
322326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCSetScript {
3231ef8b80bc49f415b93912fe7335f852953bde4a4Jack Palevich	param void * codePtr
324326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
325326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3261f52633fefd1862451e6a30209d590680d02beecJason SamsScriptCSetText {
3271f52633fefd1862451e6a30209d590680d02beecJason Sams	param const char * text
3281f52633fefd1862451e6a30209d590680d02beecJason Sams	param uint32_t length
3291f52633fefd1862451e6a30209d590680d02beecJason Sams	}
3301f52633fefd1862451e6a30209d590680d02beecJason Sams
331326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCCreate {
332326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsScript
333326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
334326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
33557b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoScriptCSetDefineF {
33657b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param const char* name
33757b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param float value
33857b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    }
33957b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato
34057b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoScriptCSetDefineI32 {
34157b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param const char* name
34257b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    param int32_t value
34357b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato    }
344326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
345ccc010bb7c0f89e162bf60033968a20be90a903aJason SamsProgramStoreBegin {
346326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement in
347326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsElement out
348326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
349326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
350ccc010bb7c0f89e162bf60033968a20be90a903aJason SamsProgramStoreColorMask {
351326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool r
352326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool g
353326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool b
354326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool a
355326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
356326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
357ccc010bb7c0f89e162bf60033968a20be90a903aJason SamsProgramStoreBlendFunc {
358326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsBlendSrcFunc srcFunc
359326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsBlendDstFunc destFunc
360326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
361326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
362ccc010bb7c0f89e162bf60033968a20be90a903aJason SamsProgramStoreDepthMask {
363326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
364326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
365326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
366ccc010bb7c0f89e162bf60033968a20be90a903aJason SamsProgramStoreDither {
367326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param bool enable
368326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
369326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
370ccc010bb7c0f89e162bf60033968a20be90a903aJason SamsProgramStoreDepthFunc {
371326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsDepthFunc func
372326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams}
373326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
374ccc010bb7c0f89e162bf60033968a20be90a903aJason SamsProgramStoreCreate {
375ccc010bb7c0f89e162bf60033968a20be90a903aJason Sams	ret RsProgramStore
376326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
377326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3785fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterCreate {
3795fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsElement in
3805fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsElement out
3815fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool pointSmooth
3825fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool lineSmooth
3835fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param bool pointSprite
3845fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	ret RsProgramRaster
3855fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams}
3865fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams
3875fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterSetLineWidth {
3885fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsProgramRaster pr
3895fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param float lw
3905fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams}
3915fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams
3925fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterSetPointSize{
3935fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param RsProgramRaster pr
3945fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams	param float ps
3955fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams}
396326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
397326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
3984815c0d121310cfcd6a8aba4eab77a9910af53acJason SamsProgramBindConstants {
3994815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param RsProgram vp
4004815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param uint32_t slot
4014815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param RsAllocation constants
4024815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	}
4034815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams
404f2a5d7326b38e5a28b6618f9b1e5a021aef7179fJason Sams
4057dad9c30a59c99b57269e1b498807b6f034d56e9Jason SamsProgramBindTexture {
406326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pf
407326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
408326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsAllocation a
409326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
410326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
4117dad9c30a59c99b57269e1b498807b6f034d56e9Jason SamsProgramBindSampler {
412326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsProgramFragment pf
413326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param uint32_t slot
414326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	param RsSampler s
415326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
416326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
417326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentCreate {
4187dad9c30a59c99b57269e1b498807b6f034d56e9Jason Sams	param const uint32_t * params
4197dad9c30a59c99b57269e1b498807b6f034d56e9Jason Sams	param uint32_t paramLength
420326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramFragment
421326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
422326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
423f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason SamsProgramFragmentCreate2 {
424f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	param const char * shaderText
425f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	param uint32_t shaderLength
426f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	param const uint32_t * params
427f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	param uint32_t paramLength
428f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	ret RsProgramFragment
429f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	}
430f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams
431326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexCreate {
4324815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param bool texMat
433326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	ret RsProgramVertex
434326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams	}
435326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams
4364815c0d121310cfcd6a8aba4eab77a9910af53acJason SamsProgramVertexCreate2 {
4374815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param const char * shaderText
4384815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param uint32_t shaderLength
4394815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param const uint32_t * params
4404815c0d121310cfcd6a8aba4eab77a9910af53acJason Sams	param uint32_t paramLength
441f2e4fa215c420cf0f8d226e9a59acb1f312e5e40Jason Sams	ret RsProgramVertex
442b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams	}
443b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams
44462bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightBegin {
44562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
44662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
44762bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetLocal {
44862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param bool isLocal
44962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
45062bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
45162bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetMonochromatic {
45262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param bool isMono
45362bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
45462bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
45562bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightCreate {
45662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	ret RsLight light
45762bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
45862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
45962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
46062bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetPosition {
46162bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param RsLight light
46262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float x
46362bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float y
46462bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float z
46562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
46662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
46762bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetColor {
46862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param RsLight light
46962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float r
47062bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float g
47162bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	param float b
47262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams	}
47362bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams
474a5597fcd411badad50c1345b3eca26453da45bbbJason SamsFileOpen {
475a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	ret RsFile
476a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	param const char *name
477a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	param size_t len
478a5597fcd411badad50c1345b3eca26453da45bbbJason Sams	}
479a5597fcd411badad50c1345b3eca26453da45bbbJason Sams
480a5597fcd411badad50c1345b3eca26453da45bbbJason Sams
481e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshCreate {
482e5ffb879ae535a899a486285a23bea05e912480fJason Sams	ret RsSimpleMesh
483e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation prim
484e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation index
485e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation *vtx
486e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param uint32_t vtxCount
487e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param uint32_t primType
488e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
489e5ffb879ae535a899a486285a23bea05e912480fJason Sams
490e5ffb879ae535a899a486285a23bea05e912480fJason Sams
491e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindIndex {
492e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsSimpleMesh mesh
493e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation idx
494e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
495e5ffb879ae535a899a486285a23bea05e912480fJason Sams
496e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindPrimitive {
497e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsSimpleMesh mesh
498e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation prim
499e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
500e5ffb879ae535a899a486285a23bea05e912480fJason Sams
501e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindVertex {
502e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsSimpleMesh mesh
503e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param RsAllocation vtx
504e5ffb879ae535a899a486285a23bea05e912480fJason Sams	param uint32_t slot
505e5ffb879ae535a899a486285a23bea05e912480fJason Sams	}
506e5ffb879ae535a899a486285a23bea05e912480fJason Sams
507c1ed589021e280cda59a0521cb96b3e9eb629e1bJason SamsAnimationCreate {
508c1ed589021e280cda59a0521cb96b3e9eb629e1bJason Sams	param const float *inValues
509c1ed589021e280cda59a0521cb96b3e9eb629e1bJason Sams	param const float *outValues
510c1ed589021e280cda59a0521cb96b3e9eb629e1bJason Sams	param uint32_t valueCount
511c1ed589021e280cda59a0521cb96b3e9eb629e1bJason Sams	param RsAnimationInterpolation interp
512c1ed589021e280cda59a0521cb96b3e9eb629e1bJason Sams	param RsAnimationEdge pre
513c1ed589021e280cda59a0521cb96b3e9eb629e1bJason Sams	param RsAnimationEdge post
514c1ed589021e280cda59a0521cb96b3e9eb629e1bJason Sams	ret RsAnimation
515c1ed589021e280cda59a0521cb96b3e9eb629e1bJason Sams	}
516c1ed589021e280cda59a0521cb96b3e9eb629e1bJason Sams
517