diff options
| author | Jason Sams <jsams@google.com> | 2012-08-21 15:53:29 -0700 |
|---|---|---|
| committer | Jason Sams <jsams@google.com> | 2012-08-21 15:53:29 -0700 |
| commit | 19e1086df11567be9ee3eaf99fa1fc82c65b2b27 (patch) | |
| tree | f0ecdc695141a59ae8f865ffa334cd28b21e75b8 | |
| parent | ee98610f1af9c12fcb89522cf1795470bec60938 (diff) | |
| download | frameworks_base-19e1086df11567be9ee3eaf99fa1fc82c65b2b27.zip frameworks_base-19e1086df11567be9ee3eaf99fa1fc82c65b2b27.tar.gz frameworks_base-19e1086df11567be9ee3eaf99fa1fc82c65b2b27.tar.bz2 | |
Move the kernel launch to specific intrinsic class.
This allows support of both input types. Kernel source
and global source.
Change-Id: Iea60bebd79c786795eae81c14cbec352b470a9c0
3 files changed, 14 insertions, 7 deletions
diff --git a/graphics/java/android/renderscript/ScriptIntrinsic.java b/graphics/java/android/renderscript/ScriptIntrinsic.java index 6ad1527..f275fee 100644 --- a/graphics/java/android/renderscript/ScriptIntrinsic.java +++ b/graphics/java/android/renderscript/ScriptIntrinsic.java @@ -28,8 +28,4 @@ public class ScriptIntrinsic extends Script { ScriptIntrinsic(int id, RenderScript rs) { super(id, rs); } - - public void forEach(Allocation ain, Allocation aout) { - forEach(0, ain, aout, null); - } } diff --git a/graphics/java/android/renderscript/ScriptIntrinsicConvolve3x3.java b/graphics/java/android/renderscript/ScriptIntrinsicConvolve3x3.java index 0ae1449..c7465a7 100644 --- a/graphics/java/android/renderscript/ScriptIntrinsicConvolve3x3.java +++ b/graphics/java/android/renderscript/ScriptIntrinsicConvolve3x3.java @@ -32,6 +32,7 @@ import java.util.HashMap; **/ public class ScriptIntrinsicConvolve3x3 extends ScriptIntrinsic { private float[] mValues = new float[9]; + private Allocation mInput; ScriptIntrinsicConvolve3x3(int id, RenderScript rs) { super(id, rs); @@ -52,8 +53,12 @@ public class ScriptIntrinsicConvolve3x3 extends ScriptIntrinsic { } + public void setInput(Allocation ain) { + mInput = ain; + bindAllocation(ain, 1); + } - public void setValues(float v[]) { + public void setColorMatrix(float v[]) { FieldPacker fp = new FieldPacker(9*4); for (int ct=0; ct < mValues.length; ct++) { mValues[ct] = v[ct]; @@ -61,5 +66,10 @@ public class ScriptIntrinsicConvolve3x3 extends ScriptIntrinsic { } setVar(0, fp); } + + public void forEach(Allocation aout) { + forEach(0, null, aout, null); + } + } diff --git a/tests/RenderScriptTests/ImageProcessing/src/com/android/rs/image/Intrinsics.java b/tests/RenderScriptTests/ImageProcessing/src/com/android/rs/image/Intrinsics.java index ea8a018..dab8111 100644 --- a/tests/RenderScriptTests/ImageProcessing/src/com/android/rs/image/Intrinsics.java +++ b/tests/RenderScriptTests/ImageProcessing/src/com/android/rs/image/Intrinsics.java @@ -46,7 +46,7 @@ public class Intrinsics extends TestBase { v[0] = 0.f; v[1] = -s; v[2] = 0.f; v[3] = -s; v[4] = s*4+1; v[5] = -s; v[6] = 0.f; v[7] = -s; v[8] = 0.f; - mScript.setValues(v); + mScript.setColorMatrix(v); } @@ -55,7 +55,8 @@ public class Intrinsics extends TestBase { } public void runTest() { - mScript.forEach(mInPixelsAllocation, mOutPixelsAllocation); + mScript.setInput(mInPixelsAllocation); + mScript.forEach(mOutPixelsAllocation); } } |
