diff options
Diffstat (limited to 'rs/java/android/renderscript/ScriptGroup.java')
| -rw-r--r-- | rs/java/android/renderscript/ScriptGroup.java | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/rs/java/android/renderscript/ScriptGroup.java b/rs/java/android/renderscript/ScriptGroup.java index 82d9a2f4403f..9bbacbc0d84c 100644 --- a/rs/java/android/renderscript/ScriptGroup.java +++ b/rs/java/android/renderscript/ScriptGroup.java @@ -278,6 +278,8 @@ public final class ScriptGroup extends BaseObj { public ValueAndSize(RenderScript rs, Object obj) { if (obj instanceof Allocation) { value = ((Allocation)obj).getID(rs); + // Special value for size to tell the runtime and driver that + // the value is an Allocation size = -1; } else if (obj instanceof Boolean) { value = ((Boolean)obj).booleanValue() ? 1 : 0; @@ -289,10 +291,10 @@ public final class ScriptGroup extends BaseObj { value = ((Long)obj).longValue(); size = 8; } else if (obj instanceof Float) { - value = ((Float)obj).longValue(); + value = Float.floatToRawIntBits(((Float)obj).floatValue()); size = 4; } else if (obj instanceof Double) { - value = ((Double)obj).longValue(); + value = Double.doubleToRawLongBits(((Double)obj).doubleValue()); size = 8; } } @@ -851,13 +853,13 @@ public final class ScriptGroup extends BaseObj { * Returns the field ID */ - public Script.FieldID getField() { return mField; } + Script.FieldID getField() { return mField; } /** * Returns the value */ - public Object getValue() { return mValue; } + Object getValue() { return mValue; } } /** @@ -995,6 +997,8 @@ public final class ScriptGroup extends BaseObj { * * @param name name for the script group. Legal names can only contain letters, digits, * '-', or '_'. The name can be no longer than 100 characters. + * Try to use unique names, to avoid name conflicts and reduce + * the cost of group creation. * @param outputs futures intended as outputs of the script group * @return a script group */ |
