summaryrefslogtreecommitdiff
path: root/rs/java/android/renderscript/RenderScript.java
diff options
context:
space:
mode:
authorStephen Hines <srhines@google.com>2014-08-13 17:32:19 +0000
committerStephen Hines <srhines@google.com>2014-08-13 17:32:19 +0000
commitc9c7daf69b32c0e72a3b99379cc5116c1647f24e (patch)
tree10c512fe2a0c09e7ef433a29085c12832e8c5aeb /rs/java/android/renderscript/RenderScript.java
parenteb3470219dea322efa93eb4b5457813ce71d0c5d (diff)
Revert "Collapse code paths for single- and multi-input kernels."
This reverts commit eb3470219dea322efa93eb4b5457813ce71d0c5d. Change-Id: Id943abf953e832ef831318e6699d4b46e9b46201
Diffstat (limited to 'rs/java/android/renderscript/RenderScript.java')
-rw-r--r--rs/java/android/renderscript/RenderScript.java50
1 files changed, 44 insertions, 6 deletions
diff --git a/rs/java/android/renderscript/RenderScript.java b/rs/java/android/renderscript/RenderScript.java
index bd272bcc2e7b..f2b1380d5ac4 100644
--- a/rs/java/android/renderscript/RenderScript.java
+++ b/rs/java/android/renderscript/RenderScript.java
@@ -590,14 +590,52 @@ public class RenderScript {
validate();
rsnScriptInvoke(mContext, id, slot);
}
+ native void rsnScriptForEach(long con, long id, int slot, long ain, long aout, byte[] params);
+ native void rsnScriptForEach(long con, long id, int slot, long ain, long aout);
+ native void rsnScriptForEachClipped(long con, long id, int slot, long ain, long aout, byte[] params,
+ int xstart, int xend, int ystart, int yend, int zstart, int zend);
+ native void rsnScriptForEachClipped(long con, long id, int slot, long ain, long aout,
+ int xstart, int xend, int ystart, int yend, int zstart, int zend);
+ synchronized void nScriptForEach(long id, int slot, long ain, long aout, byte[] params) {
+ validate();
+ if (params == null) {
+ rsnScriptForEach(mContext, id, slot, ain, aout);
+ } else {
+ rsnScriptForEach(mContext, id, slot, ain, aout, params);
+ }
+ }
- native void rsnScriptForEach(long con, long id, int slot, long[] ains,
- long aout, byte[] params, int[] limits);
-
- synchronized void nScriptForEach(long id, int slot, long[] ains, long aout,
- byte[] params, int[] limits) {
+ synchronized void nScriptForEachClipped(long id, int slot, long ain, long aout, byte[] params,
+ int xstart, int xend, int ystart, int yend, int zstart, int zend) {
validate();
- rsnScriptForEach(mContext, id, slot, ains, aout, params, limits);
+ if (params == null) {
+ rsnScriptForEachClipped(mContext, id, slot, ain, aout, xstart, xend, ystart, yend, zstart, zend);
+ } else {
+ rsnScriptForEachClipped(mContext, id, slot, ain, aout, params, xstart, xend, ystart, yend, zstart, zend);
+ }
+ }
+
+ /**
+ * Multi-input code.
+ *
+ */
+
+ // @hide
+ native void rsnScriptForEachMultiClipped(long con, long id, int slot, long[] ains, long aout, byte[] params,
+ int xstart, int xend, int ystart, int yend, int zstart, int zend);
+ // @hide
+ native void rsnScriptForEachMultiClipped(long con, long id, int slot, long[] ains, long aout,
+ int xstart, int xend, int ystart, int yend, int zstart, int zend);
+
+ // @hide
+ synchronized void nScriptForEachMultiClipped(long id, int slot, long[] ains, long aout, byte[] params,
+ int xstart, int xend, int ystart, int yend, int zstart, int zend) {
+ validate();
+ if (params == null) {
+ rsnScriptForEachMultiClipped(mContext, id, slot, ains, aout, xstart, xend, ystart, yend, zstart, zend);
+ } else {
+ rsnScriptForEachMultiClipped(mContext, id, slot, ains, aout, params, xstart, xend, ystart, yend, zstart, zend);
+ }
}
native void rsnScriptInvokeV(long con, long id, int slot, byte[] params);