rs.spec revision eb9aa675754c49f613c6ad71d41472b30f38b007
1326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 2186e59154a0fb86e05e283e9c083b69878c06720Jason SamsContextDestroy { 3186e59154a0fb86e05e283e9c083b69878c06720Jason Sams direct 4186e59154a0fb86e05e283e9c083b69878c06720Jason Sams} 5186e59154a0fb86e05e283e9c083b69878c06720Jason Sams 6186e59154a0fb86e05e283e9c083b69878c06720Jason SamsContextGetMessage { 7186e59154a0fb86e05e283e9c083b69878c06720Jason Sams direct 8186e59154a0fb86e05e283e9c083b69878c06720Jason Sams param void *data 9186e59154a0fb86e05e283e9c083b69878c06720Jason Sams param size_t *receiveLen 101a4efa363916977ef9aeab756725b3bdc880a15bJason Sams param uint32_t *usrID 11186e59154a0fb86e05e283e9c083b69878c06720Jason Sams ret RsMessageToClientType 12186e59154a0fb86e05e283e9c083b69878c06720Jason Sams} 13186e59154a0fb86e05e283e9c083b69878c06720Jason Sams 14186e59154a0fb86e05e283e9c083b69878c06720Jason SamsContextPeekMessage { 15186e59154a0fb86e05e283e9c083b69878c06720Jason Sams direct 16186e59154a0fb86e05e283e9c083b69878c06720Jason Sams param size_t *receiveLen 171a4efa363916977ef9aeab756725b3bdc880a15bJason Sams param uint32_t *usrID 18186e59154a0fb86e05e283e9c083b69878c06720Jason Sams ret RsMessageToClientType 19186e59154a0fb86e05e283e9c083b69878c06720Jason Sams} 20186e59154a0fb86e05e283e9c083b69878c06720Jason Sams 21702652065131e740c04e0744bb433028e15d8434Jason SamsContextSendMessage { 22702652065131e740c04e0744bb433028e15d8434Jason Sams param uint32_t id 23702652065131e740c04e0744bb433028e15d8434Jason Sams param const uint8_t *data 24702652065131e740c04e0744bb433028e15d8434Jason Sams} 25702652065131e740c04e0744bb433028e15d8434Jason Sams 26186e59154a0fb86e05e283e9c083b69878c06720Jason SamsContextInitToClient { 27186e59154a0fb86e05e283e9c083b69878c06720Jason Sams direct 28186e59154a0fb86e05e283e9c083b69878c06720Jason Sams} 29186e59154a0fb86e05e283e9c083b69878c06720Jason Sams 30186e59154a0fb86e05e283e9c083b69878c06720Jason SamsContextDeinitToClient { 31186e59154a0fb86e05e283e9c083b69878c06720Jason Sams direct 32186e59154a0fb86e05e283e9c083b69878c06720Jason Sams} 33186e59154a0fb86e05e283e9c083b69878c06720Jason Sams 34c975cf4a71b63ccbd20f1f3b3341c5f2e6025b45Jason SamsTypeCreate { 35186e59154a0fb86e05e283e9c083b69878c06720Jason Sams direct 36186e59154a0fb86e05e283e9c083b69878c06720Jason Sams param RsElement e 37186e59154a0fb86e05e283e9c083b69878c06720Jason Sams param uint32_t dimX 38186e59154a0fb86e05e283e9c083b69878c06720Jason Sams param uint32_t dimY 39186e59154a0fb86e05e283e9c083b69878c06720Jason Sams param uint32_t dimZ 408f615d682f9e7e2cd4de2e4478e0e76fc359922cStephen Hines param bool mipmaps 41186e59154a0fb86e05e283e9c083b69878c06720Jason Sams param bool faces 42a572aca4eb4ddb32c10baa1f529431cfefd756b8Jason Sams param uint32_t yuv 43186e59154a0fb86e05e283e9c083b69878c06720Jason Sams ret RsType 44186e59154a0fb86e05e283e9c083b69878c06720Jason Sams} 45186e59154a0fb86e05e283e9c083b69878c06720Jason Sams 46c7968a0ac24f05d978616a79a5068b6b16dbbda6Jason SamsTypeCreate2 { 47c7968a0ac24f05d978616a79a5068b6b16dbbda6Jason Sams direct 48c7968a0ac24f05d978616a79a5068b6b16dbbda6Jason Sams param const RsTypeCreateParams *dat 49c7968a0ac24f05d978616a79a5068b6b16dbbda6Jason Sams ret RsType 50c7968a0ac24f05d978616a79a5068b6b16dbbda6Jason Sams} 51c7968a0ac24f05d978616a79a5068b6b16dbbda6Jason Sams 52c975cf4a71b63ccbd20f1f3b3341c5f2e6025b45Jason SamsAllocationCreateTyped { 53186e59154a0fb86e05e283e9c083b69878c06720Jason Sams direct 54186e59154a0fb86e05e283e9c083b69878c06720Jason Sams param RsType vtype 558f615d682f9e7e2cd4de2e4478e0e76fc359922cStephen Hines param RsAllocationMipmapControl mipmaps 56186e59154a0fb86e05e283e9c083b69878c06720Jason Sams param uint32_t usages 57099bc262f862cdeb547cf8a78fe9e0e92560f437Tim Murray param uintptr_t ptr 58186e59154a0fb86e05e283e9c083b69878c06720Jason Sams ret RsAllocation 59186e59154a0fb86e05e283e9c083b69878c06720Jason Sams} 60186e59154a0fb86e05e283e9c083b69878c06720Jason Sams 61c975cf4a71b63ccbd20f1f3b3341c5f2e6025b45Jason SamsAllocationCreateFromBitmap { 62186e59154a0fb86e05e283e9c083b69878c06720Jason Sams direct 63186e59154a0fb86e05e283e9c083b69878c06720Jason Sams param RsType vtype 648f615d682f9e7e2cd4de2e4478e0e76fc359922cStephen Hines param RsAllocationMipmapControl mipmaps 65186e59154a0fb86e05e283e9c083b69878c06720Jason Sams param const void *data 66186e59154a0fb86e05e283e9c083b69878c06720Jason Sams param uint32_t usages 67186e59154a0fb86e05e283e9c083b69878c06720Jason Sams ret RsAllocation 68186e59154a0fb86e05e283e9c083b69878c06720Jason Sams} 69186e59154a0fb86e05e283e9c083b69878c06720Jason Sams 70c975cf4a71b63ccbd20f1f3b3341c5f2e6025b45Jason SamsAllocationCubeCreateFromBitmap { 71186e59154a0fb86e05e283e9c083b69878c06720Jason Sams direct 72186e59154a0fb86e05e283e9c083b69878c06720Jason Sams param RsType vtype 738f615d682f9e7e2cd4de2e4478e0e76fc359922cStephen Hines param RsAllocationMipmapControl mipmaps 74186e59154a0fb86e05e283e9c083b69878c06720Jason Sams param const void *data 75186e59154a0fb86e05e283e9c083b69878c06720Jason Sams param uint32_t usages 76186e59154a0fb86e05e283e9c083b69878c06720Jason Sams ret RsAllocation 77186e59154a0fb86e05e283e9c083b69878c06720Jason Sams} 78186e59154a0fb86e05e283e9c083b69878c06720Jason Sams 79733396b67724162844ea2785c7495115dc5ee8d8Jason SamsAllocationGetSurface { 8041e373d91a60043afa0f9abd026218b49cbc1201Jason Sams param RsAllocation alloc 813522f40418fdf877f5a136475dbf75e57a3b7c77Jason Sams sync 82733396b67724162844ea2785c7495115dc5ee8d8Jason Sams ret RsNativeWindow 833522f40418fdf877f5a136475dbf75e57a3b7c77Jason Sams} 843522f40418fdf877f5a136475dbf75e57a3b7c77Jason Sams 857ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason SamsAllocationSetSurface { 867ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams param RsAllocation alloc 877ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams param RsNativeWindow sur 887ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams sync 897ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams } 907ac2a4dda4d20ca1f1b714e129a3a08f63178c18Jason Sams 918c88090e8cccab103eebe2ff569e116e9f5fb208Jason SamsContextFinish { 92748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk sync 93748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 94326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 95c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason SamsContextDump { 96748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param int32_t bits 97c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams} 98c21cf40f6ae69091bf24f87b5eeabc95e73dd271Jason Sams 99613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason SamsContextSetPriority { 100748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param int32_t priority 101748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 102613cad1702dbb76eb2a6ba0cfcb43b9fe207cebcJason Sams 103741aac95b777b2e6cb90f484a05e489a79a6ef05Jason SamsContextDestroyWorker { 1048c1da3f9c29ae2004521c7aaf9be556d88331c3fTim Murray sync 1051dcefab7178f0644b0e0a6998007b1acae5261cfJason Sams} 1061dcefab7178f0644b0e0a6998007b1acae5261cfJason Sams 107a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason SamsAssignName { 108748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsObjectBase obj 109748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param const char *name 110748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 111326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 112707aaf341a4b068e6ccadf923af85acdd85fd775Jason SamsObjDestroy { 113748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsAsyncVoidPtr objPtr 114397b0b17fd26439eb82a76fea903952b88e5cc96Tim Murray handcodeApi 115748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 116707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams 117d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason SamsElementCreate { 118c700e649ca44d0dcff8b271e42d949ea72fe3c63Alex Sakhartchouk direct 119748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsDataType mType 120748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsDataKind mKind 121748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param bool mNormalized 122748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t mVectorSize 123748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk ret RsElement 124748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 125326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 126d01d970cf5973aa5186cc02c80fb2c143a69b0b1Jason SamsElementCreate2 { 127c700e649ca44d0dcff8b271e42d949ea72fe3c63Alex Sakhartchouk direct 128748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param const RsElement * elements 129748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param const char ** names 130748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param const uint32_t * arraySize 131748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk ret RsElement 132748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 133326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 134837e388700a48084489ba59d1d8cc5ece68b1535Jason SamsAllocationCopyToBitmap { 135748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsAllocation alloc 136748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param void * data 137748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 13839f2ef6fed00a99c5c389e12c4597884027d4858Alex Sakhartchouk 139b8a94e26c0a5e8f58d5b6ed04e46b411e95b77a4Jason SamsAllocationGetPointer { 140b8a94e26c0a5e8f58d5b6ed04e46b411e95b77a4Jason Sams param RsAllocation va 141b8a94e26c0a5e8f58d5b6ed04e46b411e95b77a4Jason Sams param uint32_t lod 142b8a94e26c0a5e8f58d5b6ed04e46b411e95b77a4Jason Sams param RsAllocationCubemapFace face 143b8a94e26c0a5e8f58d5b6ed04e46b411e95b77a4Jason Sams param uint32_t z 144b8a94e26c0a5e8f58d5b6ed04e46b411e95b77a4Jason Sams param uint32_t array 145b8a94e26c0a5e8f58d5b6ed04e46b411e95b77a4Jason Sams param size_t *stride 146b8a94e26c0a5e8f58d5b6ed04e46b411e95b77a4Jason Sams ret void *s 147b8a94e26c0a5e8f58d5b6ed04e46b411e95b77a4Jason Sams } 148326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 1494b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation1DData { 150748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsAllocation va 151748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t xoff 152748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t lod 153748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t count 154748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param const void *data 155748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 156326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 1574b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation1DElementData { 158748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsAllocation va 159748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t x 160748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t lod 161748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param const void *data 162748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param size_t comp_offset 163748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 1645f0c84cf464dda719cef65fdc9b4d0980e86b98fJason Sams 1654b45b8998e0d7038efaea80c70d23c086640b4e3Jason SamsAllocation2DData { 166748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsAllocation va 167748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t xoff 168748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t yoff 169748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t lod 170748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsAllocationCubemapFace face 171748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t w 172748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t h 173748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param const void *data 174358747a3118301c5faeee73c98dd5f839bbfb54aTim Murray param size_t stride 175748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 176326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 1773bbc0fd40264ddae1592706d9023865b7b3e3195Jason SamsAllocation3DData { 1783bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param RsAllocation va 1793bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t xoff 1803bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t yoff 1813bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t zoff 1823bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t lod 1833bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t w 1843bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t h 1853bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t d 1863bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param const void *data 1873bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param size_t stride 1883bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams } 1893bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams 190a23715148f7bda74e904fc553b70c9a49fd52a6eJason SamsAllocationGenerateMipmaps { 191748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsAllocation va 192a23715148f7bda74e904fc553b70c9a49fd52a6eJason Sams} 193a23715148f7bda74e904fc553b70c9a49fd52a6eJason Sams 194e579df42e85d9e00f53c42ef1b78dbd209dba989Jason SamsAllocationRead { 195748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsAllocation va 196748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param void * data 197748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 198326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 199509ea5c832a865bc9083d53f1f058377a689bab3Tim MurrayAllocation1DRead { 200509ea5c832a865bc9083d53f1f058377a689bab3Tim Murray param RsAllocation va 201509ea5c832a865bc9083d53f1f058377a689bab3Tim Murray param uint32_t xoff 202509ea5c832a865bc9083d53f1f058377a689bab3Tim Murray param uint32_t lod 203509ea5c832a865bc9083d53f1f058377a689bab3Tim Murray param uint32_t count 204509ea5c832a865bc9083d53f1f058377a689bab3Tim Murray param void *data 205509ea5c832a865bc9083d53f1f058377a689bab3Tim Murray } 206509ea5c832a865bc9083d53f1f058377a689bab3Tim Murray 2077b3e3093f745134345dadf89498ad16e1f9c0e71Tim MurrayAllocation2DRead { 2087b3e3093f745134345dadf89498ad16e1f9c0e71Tim Murray param RsAllocation va 2097b3e3093f745134345dadf89498ad16e1f9c0e71Tim Murray param uint32_t xoff 2107b3e3093f745134345dadf89498ad16e1f9c0e71Tim Murray param uint32_t yoff 2117b3e3093f745134345dadf89498ad16e1f9c0e71Tim Murray param uint32_t lod 2127b3e3093f745134345dadf89498ad16e1f9c0e71Tim Murray param RsAllocationCubemapFace face 2137b3e3093f745134345dadf89498ad16e1f9c0e71Tim Murray param uint32_t w 2147b3e3093f745134345dadf89498ad16e1f9c0e71Tim Murray param uint32_t h 2157b3e3093f745134345dadf89498ad16e1f9c0e71Tim Murray param void *data 216358747a3118301c5faeee73c98dd5f839bbfb54aTim Murray param size_t stride 2177b3e3093f745134345dadf89498ad16e1f9c0e71Tim Murray} 218509ea5c832a865bc9083d53f1f058377a689bab3Tim Murray 2198c1da3f9c29ae2004521c7aaf9be556d88331c3fTim Murray 220366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason SamsAllocationSyncAll { 221748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsAllocation va 222748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsAllocationUsageType src 223366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason Sams} 224366c9c85196675437a8dd74c1cf6b63ddbde3d6aJason Sams 22596abf819e50b59ba8cf886c13f894633eb0a24baJason SamsAllocationResize1D { 226748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsAllocation va 227748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t dimX 228748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 22996abf819e50b59ba8cf886c13f894633eb0a24baJason Sams 23074a827988567a9d65954bb0d825a3ba4a97e2947Alex SakhartchoukAllocationCopy2DRange { 231748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsAllocation dest 232748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t destXoff 233748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t destYoff 234748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t destMip 235748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t destFace 236748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t width 237748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t height 238748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsAllocation src 239748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t srcXoff 240748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t srcYoff 241748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t srcMip 242748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t srcFace 243748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 24474a827988567a9d65954bb0d825a3ba4a97e2947Alex Sakhartchouk 2453bbc0fd40264ddae1592706d9023865b7b3e3195Jason SamsAllocationCopy3DRange { 2463bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param RsAllocation dest 2473bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t destXoff 2483bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t destYoff 2493bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t destZoff 2503bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t destMip 2513bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t width 2523bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t height 2533bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t depth 2543bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param RsAllocation src 2553bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t srcXoff 2563bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t srcYoff 2573bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t srcZoff 2583bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams param uint32_t srcMip 2593bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams } 2603bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams 2611ffd86b448d78366190c540f98f8b6d641cdb6cfYang NiClosureCreate { 2621ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni direct 2631ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni param RsScriptKernelID kernelID 2641ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni param RsAllocation returnValue 2651ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni param RsScriptFieldID * fieldIDs 2661ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni param uintptr_t * values 2671ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni param size_t * sizes 2681ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni param RsClosure * depClosures 2691ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni param RsScriptFieldID * depFieldIDs 2701ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni ret RsClosure 2711ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni } 2721ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni 273eb9aa675754c49f613c6ad71d41472b30f38b007Yang NiInvokeClosureCreate { 274eb9aa675754c49f613c6ad71d41472b30f38b007Yang Ni direct 275eb9aa675754c49f613c6ad71d41472b30f38b007Yang Ni param RsScriptInvokeID invokeID 276eb9aa675754c49f613c6ad71d41472b30f38b007Yang Ni param const void * params 277eb9aa675754c49f613c6ad71d41472b30f38b007Yang Ni param const RsScriptFieldID * fieldIDs 278eb9aa675754c49f613c6ad71d41472b30f38b007Yang Ni param const uintptr_t * values 279eb9aa675754c49f613c6ad71d41472b30f38b007Yang Ni param const size_t * sizes 280eb9aa675754c49f613c6ad71d41472b30f38b007Yang Ni ret RsClosure 281eb9aa675754c49f613c6ad71d41472b30f38b007Yang Ni} 282eb9aa675754c49f613c6ad71d41472b30f38b007Yang Ni 2831ffd86b448d78366190c540f98f8b6d641cdb6cfYang NiClosureSetArg { 2841ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni param RsClosure closureID 2851ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni param uint32_t index 2861ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni param uintptr_t value 2871ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni param size_t valueSize 2881ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni} 2891ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni 2901ffd86b448d78366190c540f98f8b6d641cdb6cfYang NiClosureSetGlobal { 2911ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni param RsClosure closureID 2921ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni param RsScriptFieldID fieldID 2931ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni param uintptr_t value 2941ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni param size_t valueSize 2951ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni} 2963bbc0fd40264ddae1592706d9023865b7b3e3195Jason Sams 297326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerCreate { 298c700e649ca44d0dcff8b271e42d949ea72fe3c63Alex Sakhartchouk direct 299c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk param RsSamplerValue magFilter 300c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk param RsSamplerValue minFilter 301c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk param RsSamplerValue wrapS 302c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk param RsSamplerValue wrapT 303c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk param RsSamplerValue wrapR 304c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk param float mAniso 305c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk ret RsSampler 306c2c02a88641620f50a69cc174077ac8bbef40478Alex Sakhartchouk} 307326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 308326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptBindAllocation { 309748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsScript vtm 310748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsAllocation va 311748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t slot 312748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 313326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 314d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetTimeZone { 315748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsScript s 316748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param const char * timeZone 317748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 31898e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy 319eb9aa675754c49f613c6ad71d41472b30f38b007Yang NiScriptInvokeIDCreate { 320eb9aa675754c49f613c6ad71d41472b30f38b007Yang Ni param RsScript s 321eb9aa675754c49f613c6ad71d41472b30f38b007Yang Ni param uint32_t slot 322eb9aa675754c49f613c6ad71d41472b30f38b007Yang Ni ret RsScriptInvokeID; 323eb9aa675754c49f613c6ad71d41472b30f38b007Yang Ni } 324eb9aa675754c49f613c6ad71d41472b30f38b007Yang Ni 325be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptInvoke { 326748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsScript s 327748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t slot 328748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 329326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 330be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptInvokeV { 331748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsScript s 332748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t slot 333748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param const void * data 334748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 3358c6bc6930d4996b897de8e5113da4a4efae2310cJason Sams 336c2c02a88641620f50a69cc174077ac8bbef40478Alex SakhartchoukScriptForEach { 3375fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams param RsScript s 3385fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams param uint32_t slot 3395fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams param RsAllocation ain 3405fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams param RsAllocation aout 3415fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams param const void * usr 342d4ecb17adc9b099351f2ca1779a74f5283f20a3dTim Murray param const RsScriptCall * sc 3435fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams} 3445fb1aeb6374f814d72117803682bc141cc6b0895Jason Sams 3454b3c34e6833e39bc89c2128002806b654b8e623dChris WailesScriptForEachMulti { 3464b3c34e6833e39bc89c2128002806b654b8e623dChris Wailes param RsScript s 3474b3c34e6833e39bc89c2128002806b654b8e623dChris Wailes param uint32_t slot 3484b3c34e6833e39bc89c2128002806b654b8e623dChris Wailes param RsAllocation * ains 3494b3c34e6833e39bc89c2128002806b654b8e623dChris Wailes param RsAllocation aout 3504b3c34e6833e39bc89c2128002806b654b8e623dChris Wailes param const void * usr 3514b3c34e6833e39bc89c2128002806b654b8e623dChris Wailes param const RsScriptCall * sc 3524b3c34e6833e39bc89c2128002806b654b8e623dChris Wailes} 3534b3c34e6833e39bc89c2128002806b654b8e623dChris Wailes 354be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarI { 355748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsScript s 356748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t slot 357748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param int value 358748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 359be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams 360a5eb6e17c08426deeedf989d6be280d89662ee82Jason SamsScriptSetVarObj { 361748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsScript s 362748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t slot 363748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsObjectBase value 364748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 365a5eb6e17c08426deeedf989d6be280d89662ee82Jason Sams 3660977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen HinesScriptSetVarJ { 367748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsScript s 368748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t slot 369748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param int64_t value 370748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 3710977c94a4b83dd8ef6d3808160710ebbaa1b1768Stephen Hines 372be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarF { 373748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsScript s 374748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t slot 375748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param float value 376748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 377be36bf3a76481737a7fa606a04144ceef80eb4f2Jason Sams 3786d0a0740530d57e2a5759df994352600946ff47dStephen HinesScriptSetVarD { 379748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsScript s 380748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t slot 381748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param double value 382748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 3836d0a0740530d57e2a5759df994352600946ff47dStephen Hines 384be36bf3a76481737a7fa606a04144ceef80eb4f2Jason SamsScriptSetVarV { 385748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param RsScript s 386748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param uint32_t slot 387748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param const void * data 388748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 389fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams 3909c64239ebbfa4170190ede812e69150035e008e0Tim MurrayScriptGetVarV { 3919c64239ebbfa4170190ede812e69150035e008e0Tim Murray param RsScript s 3929c64239ebbfa4170190ede812e69150035e008e0Tim Murray param uint32_t slot 3939c64239ebbfa4170190ede812e69150035e008e0Tim Murray param void * data 3949c64239ebbfa4170190ede812e69150035e008e0Tim Murray sync 3959c64239ebbfa4170190ede812e69150035e008e0Tim Murray } 3969c64239ebbfa4170190ede812e69150035e008e0Tim Murray 3972980f07d3dbbca727e8efe24ace7e7928a935648Stephen HinesScriptSetVarVE { 3982980f07d3dbbca727e8efe24ace7e7928a935648Stephen Hines param RsScript s 3992980f07d3dbbca727e8efe24ace7e7928a935648Stephen Hines param uint32_t slot 4002980f07d3dbbca727e8efe24ace7e7928a935648Stephen Hines param const void * data 4012980f07d3dbbca727e8efe24ace7e7928a935648Stephen Hines param RsElement e 402ac8d146a41f18afad5314ac8af440d6aedbe20bfStephen Hines param const uint32_t * dims 4032980f07d3dbbca727e8efe24ace7e7928a935648Stephen Hines } 4042980f07d3dbbca727e8efe24ace7e7928a935648Stephen Hines 405fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams 406326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCCreate { 4079503b66e5329703535f7cc71a0755e6f3b1e39a6Shih-wei Liao param const char * resName 40815849d9a926fbd83587b9da30b8888574998a0fdShih-wei Liao param const char * cacheDir 409748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk param const char * text 410748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk ret RsScript 411748eb07e805b93c2bf79340d4937963ab739d17cAlex Sakhartchouk } 412326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 4138eaba4fee0c7b5325742c87187622fdff51d5effJason SamsScriptIntrinsicCreate { 4148eaba4fee0c7b5325742c87187622fdff51d5effJason Sams param uint32_t id 4158eaba4fee0c7b5325742c87187622fdff51d5effJason Sams param RsElement eid 4168eaba4fee0c7b5325742c87187622fdff51d5effJason Sams ret RsScript 4178eaba4fee0c7b5325742c87187622fdff51d5effJason Sams } 418326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 419dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason SamsScriptKernelIDCreate { 420dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams direct 421dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param RsScript sid 422dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param int slot 423dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param int sig 424dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams ret RsScriptKernelID 425dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams } 426dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams 427dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason SamsScriptFieldIDCreate { 428dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams direct 429dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param RsScript sid 430dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param int slot 431dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams ret RsScriptFieldID 432dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams } 433dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams 434dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason SamsScriptGroupCreate { 435dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams direct 436dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param RsScriptKernelID * kernels 437dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param RsScriptKernelID * src 438dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param RsScriptKernelID * dstK 439dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param RsScriptFieldID * dstF 440dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param const RsType * type 441dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams ret RsScriptGroup 442dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams} 443dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams 444dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason SamsScriptGroupSetOutput { 445dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param RsScriptGroup group 446dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param RsScriptKernelID kernel 447dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param RsAllocation alloc 448dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams} 449dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams 450dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason SamsScriptGroupSetInput { 451dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param RsScriptGroup group 452dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param RsScriptKernelID kernel 453dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param RsAllocation alloc 454dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams} 455dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams 456dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason SamsScriptGroupExecute { 457dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams param RsScriptGroup group 458dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams} 459dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams 4601ffd86b448d78366190c540f98f8b6d641cdb6cfYang NiScriptGroup2Create{ 4611ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni direct 462da0f069871343119251d6b0586be356dc2146a62Yang Ni param const char * cacheDir 4631ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni param RsClosure * closures 4641ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni ret RsScriptGroup2 4651ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni} 4661ffd86b448d78366190c540f98f8b6d641cdb6cfYang Ni 4674a92d1268983edaf329f73c8a5b8860cdbb11596Tim MurrayAllocationIoSend { 4684a92d1268983edaf329f73c8a5b8860cdbb11596Tim Murray param RsAllocation alloc 4694a92d1268983edaf329f73c8a5b8860cdbb11596Tim Murray } 470dbe66d6783c1e53cd1572de0ef6ef6fdf6f76f48Jason Sams 4714a92d1268983edaf329f73c8a5b8860cdbb11596Tim MurrayAllocationIoReceive { 4724a92d1268983edaf329f73c8a5b8860cdbb11596Tim Murray param RsAllocation alloc 4734a92d1268983edaf329f73c8a5b8860cdbb11596Tim Murray } 474