summaryrefslogtreecommitdiff
path: root/graphics/java/android/renderscript/Script.java
diff options
context:
space:
mode:
authorJason Sams <rjsams@android.com>2011-04-27 16:33:11 -0700
committerJason Sams <rjsams@android.com>2011-04-27 16:33:11 -0700
commit6e494d3ab606be8c06f8d4930fbec572bbfa15c2 (patch)
treeffd17bfd895705529e4542280e78dd1d6aa8a15a /graphics/java/android/renderscript/Script.java
parenta08526ac42b3da98926ae921a6d8cfb9bbc90553 (diff)
Add dalvik code for forEach.
Change-Id: I26533fc553315b99b8f177ab62d9735a177b26b0
Diffstat (limited to 'graphics/java/android/renderscript/Script.java')
-rw-r--r--graphics/java/android/renderscript/Script.java29
1 files changed, 29 insertions, 0 deletions
diff --git a/graphics/java/android/renderscript/Script.java b/graphics/java/android/renderscript/Script.java
index 56abba51a836..11aa13476bff 100644
--- a/graphics/java/android/renderscript/Script.java
+++ b/graphics/java/android/renderscript/Script.java
@@ -43,6 +43,35 @@ public class Script extends BaseObj {
}
}
+ /**
+ * @hide
+ * Only intended for use by generated reflected code.
+ *
+ * @param slot
+ * @param ain
+ * @param aout
+ * @param v
+ */
+ protected void forEach(int slot, Allocation ain, Allocation aout, FieldPacker v) {
+ if (ain == null && aout == null) {
+ throw new RSIllegalArgumentException(
+ "At least one of ain or aout is required to be non-null.");
+ }
+ int in_id = 0;
+ if (ain != null) {
+ in_id = ain.getID();
+ }
+ int out_id = 0;
+ if (aout != null) {
+ out_id = aout.getID();
+ }
+ byte[] params = null;
+ if (v != null) {
+ params = v.getData();
+ }
+ mRS.nScriptForEach(getID(), slot, in_id, out_id, params);
+ }
+
Script(int id, RenderScript rs) {
super(id, rs);