summaryrefslogtreecommitdiff
path: root/rs/java/android/renderscript/RenderScript.java
diff options
context:
space:
mode:
authorStephen Hines <srhines@google.com>2014-08-13 17:43:00 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-08-13 17:43:00 +0000
commit42a33d5bbf228298bb1b0506ea711b890f326e9e (patch)
tree18ef3e0984faf48a699ddeaa425631b01a2548e9 /rs/java/android/renderscript/RenderScript.java
parentc27ebda05e89e927a97f275791ab807743134a42 (diff)
parentb75dc06bbe2fdff1a4c9baa69eb92a849c22715d (diff)
am b75dc06b: am 4179e889: Merge "Revert "Collapse code paths for single- and multi-input kernels.""
* commit 'b75dc06bbe2fdff1a4c9baa69eb92a849c22715d': Revert "Collapse code paths for single- and multi-input kernels."
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 4f3a1a860c10..340efef875a3 100644
--- a/rs/java/android/renderscript/RenderScript.java
+++ b/rs/java/android/renderscript/RenderScript.java
@@ -605,14 +605,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);