rs.spec revision c21cf40f6ae69091bf24f87b5eeabc95e73dd271
1326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 2326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 3326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindRootScript { 4326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsScript sampler 5326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 6326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 7326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramFragmentStore { 8326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsProgramFragmentStore pgm 9326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 10326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 11326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramFragment { 12326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsProgramFragment pgm 13326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 14326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 15326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramVertex { 16326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsProgramVertex pgm 17326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 18326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 195fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsContextBindProgramRaster { 205fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams param RsProgramRaster pgm 215fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams } 225fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams 2357b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoContextSetDefineF { 2457b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato param const char* name 2557b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato param float value 2657b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato } 2757b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato 2857b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoContextSetDefineI32 { 2957b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato param const char* name 3057b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato param int32_t value 3157b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato } 3257b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato 3386f1b23aaaf9b8822a009d8c3e585e46768abb6aJason SamsContextPause { 3486f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams } 3586f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams 3686f1b23aaaf9b8822a009d8c3e585e46768abb6aJason SamsContextResume { 3786f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams } 3886f1b23aaaf9b8822a009d8c3e585e46768abb6aJason Sams 39458f2dc26b7d34c2138c7bfbd95914240084e6bdJason SamsContextSetSurface { 40613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams param uint32_t width 41613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams param uint32_t height 42458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams param void *sur 43458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams } 44458f2dc26b7d34c2138c7bfbd95914240084e6bdJason Sams 45c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason SamsContextDump { 46c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams param int32_t bits 47c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams} 48c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams 49613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason SamsContextSetPriority { 50158324456b8dbf40f684dd0a4af3493b9549f3f5Jason Sams param int32_t priority 51613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams } 52613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams 53a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason SamsAssignName { 54a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams param void *obj 55a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams param const char *name 56a4a54e42fc710a62b47cbcb9d64c34a190429d9eJason Sams param size_t len 57a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams } 58326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 59707aaf341a4b068e6ccadf923af85acdd85fd775Jason SamsObjDestroy { 60707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams param void *obj 61707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams } 62707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams 63326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementBegin { 64326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams} 65326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 66326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementAdd { 67326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsDataKind dataKind 68326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsDataType dataType 69326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool isNormalized 70326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param size_t bits 718b2c065dfc16c148e2829a19e83d2269b9bcd4ccJason Sams param const char * name 72326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 73326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 74326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementCreate { 75326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsElement 76326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 77326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 78326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeBegin { 79326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement type 80326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 81326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 82326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeAdd { 83326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsDimension dim 84326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param size_t value 85326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 86326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 87326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeCreate { 88326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsType 89326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 90326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 91326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreateTyped { 92326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsType type 93326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsAllocation 94326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 95326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 96326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreateSized { 97326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement e 98326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param size_t count 99326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsAllocation 100326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 101326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 1026678e9b2568ad041429a2477177133fe4932159fJason SamsAllocationCreateFromBitmap { 1036678e9b2568ad041429a2477177133fe4932159fJason Sams param uint32_t width 1046678e9b2568ad041429a2477177133fe4932159fJason Sams param uint32_t height 105a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams param RsElement dstFmt 106a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams param RsElement srcFmt 1076678e9b2568ad041429a2477177133fe4932159fJason Sams param bool genMips 1086678e9b2568ad041429a2477177133fe4932159fJason Sams param const void * data 1096678e9b2568ad041429a2477177133fe4932159fJason Sams ret RsAllocation 1106678e9b2568ad041429a2477177133fe4932159fJason Sams } 1116678e9b2568ad041429a2477177133fe4932159fJason Sams 112c9d43db4d216b01b13aebfdb31d5615909591b33Jason SamsAllocationCreateFromBitmapBoxed { 113c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams param uint32_t width 114c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams param uint32_t height 115a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams param RsElement dstFmt 116a57c0a72c3b3babc2757d081ff8146ebaa2caf4cJason Sams param RsElement srcFmt 117c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams param bool genMips 118c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams param const void * data 119c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams ret RsAllocation 120c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams } 121c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams 1226678e9b2568ad041429a2477177133fe4932159fJason Sams 123326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationUploadToTexture { 124326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation alloc 125326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t baseMipLevel 126326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 127326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 128326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationUploadToBufferObject { 129326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation alloc 130326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 131326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 132326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 133326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationData { 134326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation va 135326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param const void * data 1369397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams param uint32_t bytes 1379397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams handcodeApi 1389397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams togglePlay 139d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams } 140326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 141326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocation1DSubData { 142326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation va 143326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t xoff 144326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t count 145326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param const void *data 1469397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams param uint32_t bytes 1479397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams handcodeApi 1489397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams togglePlay 149d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams } 150326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 151326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocation2DSubData { 152326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation va 153326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t xoff 154326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t yoff 155326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t w 156326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t h 157326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param const void *data 1589397e30ce5fe3f6af9212a93b490836b04fdfffaJason Sams param uint32_t bytes 159326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 160326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 161e579df42e85d9e00f53c42ef1b78dbd209dba989Jason SamsAllocationRead { 162e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams param RsAllocation va 163e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams param void * data 164e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams } 165326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 166326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DCreate { 167326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsAdapter1D 168326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 169326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 170326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DBindAllocation { 171326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAdapter1D adapt 172326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation alloc 173326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 174326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 175326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DSetConstraint { 176326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAdapter1D adapter 177326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsDimension dim 178326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t value 179326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 180326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 181326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DData { 182326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAdapter1D adapter 183326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param const void * data 184d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams } 185326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 186326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DSubData { 187326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAdapter1D adapter 188326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t xoff 189326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t count 190326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param const void *data 191d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams } 192326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 193326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DCreate { 194326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsAdapter2D 195326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 196326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 197326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DBindAllocation { 198326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAdapter2D adapt 199326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation alloc 200326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 201326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 202326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DSetConstraint { 203326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAdapter2D adapter 204326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsDimension dim 205326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t value 206326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 207326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 208326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DData { 209326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAdapter2D adapter 210326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param const void *data 211d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams } 212326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 213326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DSubData { 214326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAdapter2D adapter 215326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t xoff 216326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t yoff 217326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t w 218326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t h 219326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param const void *data 220326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 221326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 222326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerBegin { 223326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 224326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 225326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerSet { 226326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsSamplerParam p 227326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsSamplerValue value 228326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 229326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 230326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerCreate { 231326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsSampler 232326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 233326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 234326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 235326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 236326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptBindAllocation { 237326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsScript vtm 238326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation va 239326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t slot 240326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 241326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 242326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 243326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCBegin { 244326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 245326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 246d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearColor { 247d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams param RsScript s 248326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param float r 249326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param float g 250326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param float b 251326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param float a 252326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 253326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 254d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetTimeZone { 255d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams param RsScript s 25698e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy param const char * timeZone 25798e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy param uint32_t length 25898e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy } 25998e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy 260d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearDepth { 261d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams param RsScript s 262326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param float depth 263326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 264326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 265d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearStencil { 266d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams param RsScript s 267326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t stencil 268326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 269326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 270fa51719e6c1bd17b3f347477b4827face9ab647eJason SamsScriptSetType { 271326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsType type 272fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams param uint32_t slot 27390b36a88cf0cc549b296ac15a249ea7786c6de9eJason Sams param bool isWritable 274fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams param const char * name 275326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 276326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 2778c6bc6930d4996b897de8e5113da4a4efae2310cJason SamsScriptSetInvoke { 2788c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams param const char * name 2798c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams param uint32_t slot 2808c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams } 2818c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams 2828c6bc6930d4996b897de8e5113da4a4efae2310cJason SamsScriptInvoke { 2838c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams param RsScript s 2848c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams param uint32_t slot 2858c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams } 2868c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams 287fa51719e6c1bd17b3f347477b4827face9ab647eJason SamsScriptSetRoot { 288326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool isRoot 289326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 290326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 291fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams 292fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams 293326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCSetScript { 2941ef8b80bc49f415b93912fe7335f852953bde4a4Jack Palevich param void * codePtr 295326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 296326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 2971f52633fefd1862451e6a30209d590680d02beecJason SamsScriptCSetText { 2981f52633fefd1862451e6a30209d590680d02beecJason Sams param const char * text 2991f52633fefd1862451e6a30209d590680d02beecJason Sams param uint32_t length 3001f52633fefd1862451e6a30209d590680d02beecJason Sams } 3011f52633fefd1862451e6a30209d590680d02beecJason Sams 302326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCCreate { 303326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsScript 304326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 305326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 30657b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoScriptCSetDefineF { 30757b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato param const char* name 30857b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato param float value 30957b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato } 31057b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato 31157b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoScriptCSetDefineI32 { 31257b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato param const char* name 31357b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato param int32_t value 31457b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato } 315326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 316326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreBegin { 317326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement in 318326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement out 319326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 320326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 321326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreColorMask { 322326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool r 323326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool g 324326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool b 325326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool a 326326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 327326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 328326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreBlendFunc { 329326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsBlendSrcFunc srcFunc 330326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsBlendDstFunc destFunc 331326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 332326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 333326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDepthMask { 334326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool enable 335326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams} 336326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 337326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDither { 338326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool enable 339326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams} 340326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 341326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDepthFunc { 342326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsDepthFunc func 343326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams} 344326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 345326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreCreate { 346326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsProgramFragmentStore 347326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 348326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 3495fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterCreate { 3505fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams param RsElement in 3515fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams param RsElement out 3525fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams param bool pointSmooth 3535fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams param bool lineSmooth 3545fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams param bool pointSprite 3555fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams ret RsProgramRaster 3565fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams} 3575fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams 3585fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterSetLineWidth { 3595fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams param RsProgramRaster pr 3605fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams param float lw 3615fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams} 3625fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams 3635fd09d847586f9680b4f495413b6ca5fbb69af6eJason SamsProgramRasterSetPointSize{ 3645fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams param RsProgramRaster pr 3655fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams param float ps 3665fd09d847586f9680b4f495413b6ca5fbb69af6eJason Sams} 367326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 368326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 369326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBegin { 370326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement in 371326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement out 372e0158410a2fedef43f5a2848c28393ad611e8cadJason Sams param bool pointSpriteEnable 373326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 374326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 375326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBindTexture { 376326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsProgramFragment pf 377326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t slot 378326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation a 379326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 380326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 381326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBindSampler { 382326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsProgramFragment pf 383326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t slot 384326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsSampler s 385326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 386326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 387e0158410a2fedef43f5a2848c28393ad611e8cadJason SamsProgramFragmentSetSlot { 388326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t slot 389326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool enable 390e0158410a2fedef43f5a2848c28393ad611e8cadJason Sams param RsTexEnvMode env 391e0158410a2fedef43f5a2848c28393ad611e8cadJason Sams param RsType t 392326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 393326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 394326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentCreate { 395326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsProgramFragment 396326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 397326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 398326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 399326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexBegin { 400326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement in 401326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement out 402326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 403326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 404326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexCreate { 405326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsProgramVertex 406326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 407326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 408326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexBindAllocation { 409326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsProgramVertex vpgm 410326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation constants 411326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 412326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 413326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexSetTextureMatrixEnable { 414326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool enable 415326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 416326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 417b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason SamsProgramVertexAddLight { 418b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams param RsLight light 419b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams } 420b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams 42162bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightBegin { 42262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams } 42362bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams 42462bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetLocal { 42562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param bool isLocal 42662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams } 42762bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams 42862bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetMonochromatic { 42962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param bool isMono 43062bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams } 43162bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams 43262bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightCreate { 43362bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams ret RsLight light 43462bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams } 43562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams 43662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams 43762bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetPosition { 43862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param RsLight light 43962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param float x 44062bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param float y 44162bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param float z 44262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams } 44362bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams 44462bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetColor { 44562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param RsLight light 44662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param float r 44762bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param float g 44862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param float b 44962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams } 45062bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams 451a5597fcd411badad50c1345b3eca26453da45bbbJason SamsFileOpen { 452a5597fcd411badad50c1345b3eca26453da45bbbJason Sams ret RsFile 453a5597fcd411badad50c1345b3eca26453da45bbbJason Sams param const char *name 454a5597fcd411badad50c1345b3eca26453da45bbbJason Sams param size_t len 455a5597fcd411badad50c1345b3eca26453da45bbbJason Sams } 456a5597fcd411badad50c1345b3eca26453da45bbbJason Sams 457a5597fcd411badad50c1345b3eca26453da45bbbJason Sams 458e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshCreate { 459e5ffb879ae535a899a486285a23bea05e912480fJason Sams ret RsSimpleMesh 460e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsAllocation prim 461e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsAllocation index 462e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsAllocation *vtx 463e5ffb879ae535a899a486285a23bea05e912480fJason Sams param uint32_t vtxCount 464e5ffb879ae535a899a486285a23bea05e912480fJason Sams param uint32_t primType 465e5ffb879ae535a899a486285a23bea05e912480fJason Sams } 466e5ffb879ae535a899a486285a23bea05e912480fJason Sams 467e5ffb879ae535a899a486285a23bea05e912480fJason Sams 468e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindIndex { 469e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsSimpleMesh mesh 470e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsAllocation idx 471e5ffb879ae535a899a486285a23bea05e912480fJason Sams } 472e5ffb879ae535a899a486285a23bea05e912480fJason Sams 473e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindPrimitive { 474e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsSimpleMesh mesh 475e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsAllocation prim 476e5ffb879ae535a899a486285a23bea05e912480fJason Sams } 477e5ffb879ae535a899a486285a23bea05e912480fJason Sams 478e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindVertex { 479e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsSimpleMesh mesh 480e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsAllocation vtx 481e5ffb879ae535a899a486285a23bea05e912480fJason Sams param uint32_t slot 482e5ffb879ae535a899a486285a23bea05e912480fJason Sams } 483e5ffb879ae535a899a486285a23bea05e912480fJason Sams 484