1ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray/* 2ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray * Copyright (C) 2013 The Android Open Source Project 3ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray * 4ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray * Licensed under the Apache License, Version 2.0 (the "License"); 5ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray * you may not use this file except in compliance with the License. 6ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray * You may obtain a copy of the License at 7ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray * 8ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray * http://www.apache.org/licenses/LICENSE-2.0 9ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray * 10ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray * Unless required by applicable law or agreed to in writing, software 11ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray * distributed under the License is distributed on an "AS IS" BASIS, 12ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray * See the License for the specific language governing permissions and 14ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray * limitations under the License. 15ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray */ 16ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 17ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murraypackage android.support.v8.renderscript; 18ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 19ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murrayclass ScriptIntrinsicBlendThunker extends ScriptIntrinsicBlend { 20ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray android.renderscript.ScriptIntrinsicBlend mN; 21ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 22ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray android.renderscript.ScriptIntrinsicBlend getNObj() { 23ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return mN; 24ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 25ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 26ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray ScriptIntrinsicBlendThunker(int id, RenderScript rs) { 27ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray super(id, rs); 28ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 29ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 30ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public static ScriptIntrinsicBlendThunker create(RenderScript rs, Element e) { 31ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray RenderScriptThunker rst = (RenderScriptThunker) rs; 32ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray ElementThunker et = (ElementThunker)e; 33ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 34ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray ScriptIntrinsicBlendThunker blend = new ScriptIntrinsicBlendThunker(0, rs); 35d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 36d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray blend.mN = android.renderscript.ScriptIntrinsicBlend.create(rst.mN, et.getNObj()); 37d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException exc) { 38d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(exc); 39d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 40ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return blend; 41ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 42ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 43ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public void forEachClear(Allocation ain, Allocation aout) { 44ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aint = (AllocationThunker)ain; 45ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aoutt = (AllocationThunker)aout; 46ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 47d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 48d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray mN.forEachClear(aint.getNObj(), aoutt.getNObj()); 49d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 50d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 51d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 52ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 53ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 54ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public Script.KernelID getKernelIDClear() { 55ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray Script.KernelID k = createKernelID(0, 3, null, null); 56d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 57d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray k.mN = mN.getKernelIDClear(); 58d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 59d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 60d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 61ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return k; 62ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 63ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 64ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public void forEachSrc(Allocation ain, Allocation aout) { 65ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aint = (AllocationThunker)ain; 66ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aoutt = (AllocationThunker)aout; 67ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 68d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 69d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray mN.forEachSrc(aint.getNObj(), aoutt.getNObj()); 70d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 71d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 72d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 73ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 74ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 75ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public Script.KernelID getKernelIDSrc() { 76ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray Script.KernelID k = createKernelID(1, 3, null, null); 77d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 78d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray k.mN = mN.getKernelIDSrc(); 79d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 80d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 81d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 82ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return k; 83ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 84ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 85ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public void forEachDst(Allocation ain, Allocation aout) { 86ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aint = (AllocationThunker)ain; 87ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aoutt = (AllocationThunker)aout; 88ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 89d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 90d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray mN.forEachDst(aint.getNObj(), aoutt.getNObj()); 91d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 92d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 93d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 94ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 95ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 96ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public Script.KernelID getKernelIDDst() { 97ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray Script.KernelID k = createKernelID(2, 3, null, null); 98d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 99d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray k.mN = mN.getKernelIDDst(); 100d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 101d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 102d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 103ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return k; 104ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 105ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 106ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public void forEachSrcOver(Allocation ain, Allocation aout) { 107ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aint = (AllocationThunker)ain; 108ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aoutt = (AllocationThunker)aout; 109ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 110d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 111d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray mN.forEachSrcOver(aint.getNObj(), aoutt.getNObj()); 112d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 113d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 114d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 115ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 116ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 117ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public Script.KernelID getKernelIDSrcOver() { 118ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray Script.KernelID k = createKernelID(3, 3, null, null); 119d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 120d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray k.mN = mN.getKernelIDSrcOver(); 121d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 122d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 123d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 124ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return k; 125ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 126ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 127ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public void forEachDstOver(Allocation ain, Allocation aout) { 128ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aint = (AllocationThunker)ain; 129ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aoutt = (AllocationThunker)aout; 130ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 131d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 132d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray mN.forEachDstOver(aint.getNObj(), aoutt.getNObj()); 133d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 134d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 135d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 136ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 137ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 138ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public Script.KernelID getKernelIDDstOver() { 139ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray Script.KernelID k = createKernelID(4, 3, null, null); 140d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 141d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray k.mN = mN.getKernelIDDstOver(); 142d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 143d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 144d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 145ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return k; 146ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 147ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 148ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public void forEachSrcIn(Allocation ain, Allocation aout) { 149ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aint = (AllocationThunker)ain; 150ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aoutt = (AllocationThunker)aout; 151ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 152d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 153d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray mN.forEachSrcIn(aint.getNObj(), aoutt.getNObj()); 154d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 155d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 156d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 157ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 158ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 159ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public Script.KernelID getKernelIDSrcIn() { 160ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray Script.KernelID k = createKernelID(5, 3, null, null); 161d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 162d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray k.mN = mN.getKernelIDSrcIn(); 163d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 164d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 165d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 166ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return k; 167ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 168ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 169ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public void forEachDstIn(Allocation ain, Allocation aout) { 170ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aint = (AllocationThunker)ain; 171ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aoutt = (AllocationThunker)aout; 172ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 173d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 174d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray mN.forEachDstIn(aint.getNObj(), aoutt.getNObj()); 175d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 176d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 177d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 178ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 179ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 180ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public Script.KernelID getKernelIDDstIn() { 181ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray Script.KernelID k = createKernelID(6, 3, null, null); 182d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 183d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray k.mN = mN.getKernelIDDstIn(); 184d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 185d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 186d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 187ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return k; 188ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 189ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 190ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public void forEachSrcOut(Allocation ain, Allocation aout) { 191ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aint = (AllocationThunker)ain; 192ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aoutt = (AllocationThunker)aout; 193ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 194d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 195d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray mN.forEachSrcOut(aint.getNObj(), aoutt.getNObj()); 196d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 197d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 198d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 199ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 200ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 201ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public Script.KernelID getKernelIDSrcOut() { 202ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray Script.KernelID k = createKernelID(7, 3, null, null); 203d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 204d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray k.mN = mN.getKernelIDSrcOut(); 205d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 206d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 207d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 208ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return k; 209ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 210ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 211ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public void forEachDstOut(Allocation ain, Allocation aout) { 212ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aint = (AllocationThunker)ain; 213ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aoutt = (AllocationThunker)aout; 214ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 215d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 216d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray mN.forEachDstOut(aint.getNObj(), aoutt.getNObj()); 217d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 218d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 219d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 220ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 221ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 222ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public Script.KernelID getKernelIDDstOut() { 223ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray Script.KernelID k = createKernelID(8, 3, null, null); 224d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 225d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray k.mN = mN.getKernelIDDstOut(); 226d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 227d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 228d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 229ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return k; 230ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 231ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 232ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public void forEachSrcAtop(Allocation ain, Allocation aout) { 233ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aint = (AllocationThunker)ain; 234ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aoutt = (AllocationThunker)aout; 235ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 236d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 237d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray mN.forEachSrcAtop(aint.getNObj(), aoutt.getNObj()); 238d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 239d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 240d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 241ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 242ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 243ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public Script.KernelID getKernelIDSrcAtop() { 244ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray Script.KernelID k = createKernelID(9, 3, null, null); 245d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 246d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray k.mN = mN.getKernelIDSrcAtop(); 247d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 248d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 249d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 250ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return k; 251ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 252ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 253ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public void forEachDstAtop(Allocation ain, Allocation aout) { 254ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aint = (AllocationThunker)ain; 255ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aoutt = (AllocationThunker)aout; 256ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 257d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 258d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray mN.forEachDstAtop(aint.getNObj(), aoutt.getNObj()); 259d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 260d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 261d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 262ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 263ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 264ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public Script.KernelID getKernelIDDstAtop() { 265ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray Script.KernelID k = createKernelID(10, 3, null, null); 266d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 267d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray k.mN = mN.getKernelIDDstAtop(); 268d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 269d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 270d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 271ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return k; 272ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 273ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 274ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public void forEachXor(Allocation ain, Allocation aout) { 275ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aint = (AllocationThunker)ain; 276ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aoutt = (AllocationThunker)aout; 277ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 278d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 279d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray mN.forEachXor(aint.getNObj(), aoutt.getNObj()); 280d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 281d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 282d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 283ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 284ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 285ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public Script.KernelID getKernelIDXor() { 286ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray Script.KernelID k = createKernelID(11, 3, null, null); 287d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 288d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray k.mN = mN.getKernelIDXor(); 289d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 290d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 291d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 292ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return k; 293ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 294ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 295ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public void forEachMultiply(Allocation ain, Allocation aout) { 296ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aint = (AllocationThunker)ain; 297ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aoutt = (AllocationThunker)aout; 298ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 299d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 300d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray mN.forEachMultiply(aint.getNObj(), aoutt.getNObj()); 301d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 302d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 303d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 304ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 305ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 306ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public Script.KernelID getKernelIDMultiply() { 307ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray Script.KernelID k = createKernelID(14, 3, null, null); 308d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 309d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray k.mN = mN.getKernelIDMultiply(); 310d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 311d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 312d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 313ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return k; 314ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 315ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 316ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public void forEachAdd(Allocation ain, Allocation aout) { 317ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aint = (AllocationThunker)ain; 318ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aoutt = (AllocationThunker)aout; 319ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 320d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 321d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray mN.forEachAdd(aint.getNObj(), aoutt.getNObj()); 322d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 323d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 324d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 325ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 326ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 327ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public Script.KernelID getKernelIDAdd() { 328ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray Script.KernelID k = createKernelID(34, 3, null, null); 329d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 330d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray k.mN = mN.getKernelIDAdd(); 331d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 332d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 333d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 334ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return k; 335ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 336ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 337ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public void forEachSubtract(Allocation ain, Allocation aout) { 338ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aint = (AllocationThunker)ain; 339ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray AllocationThunker aoutt = (AllocationThunker)aout; 340ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 341d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 342d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray mN.forEachSubtract(aint.getNObj(), aoutt.getNObj()); 343d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 344d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 345d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 346ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 347ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 348ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray public Script.KernelID getKernelIDSubtract() { 349ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray Script.KernelID k = createKernelID(35, 3, null, null); 350d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray try { 351d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray k.mN = mN.getKernelIDSubtract(); 352d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } catch (android.renderscript.RSRuntimeException e) { 353d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray throw ExceptionThunker.convertException(e); 354d1107f953974cf7a6c8bdf43e898d2f1f74427e6Tim Murray } 355ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray return k; 356ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray } 357ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 358ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray} 359ce8b0e674c93035013d1c33aaabc9bb6ceffde0fTim Murray 360