summaryrefslogtreecommitdiff
path: root/rs/java/android/renderscript/ScriptC.java
diff options
context:
space:
mode:
authorAshok Bhat <ashok.bhat@arm.com>2014-02-04 14:57:58 +0000
committerDavid Butcher <david.butcher@arm.com>2014-02-05 11:26:38 +0000
commit0e0c0885aed99a119052a792becb5a0c5a93632d (patch)
tree8d8740c998f7ab145266cb91b87a87384672d71b /rs/java/android/renderscript/ScriptC.java
parentbc80e40b160596c262fee0ee4df4b9f15cc14e89 (diff)
AArch64: Use long for pointers in RS Java/JNI code
Changes include [x] Some JNI functions, with return type jlong, casts pointer to jint before returning it. This has been fixed. [x] Minor JNI function prototype changes where formal paramter type has been changed to a JNI type (int to jint for example). [x] long is used for ScriptC, Sampler, Font, ProgramStore handles as they can be 64-bit. [x] A new hidden constructor ScriptC(long, RenderScript) has been added. This should eventually replace public API method ScriptC(int, RenderScript). [x] Font and FileA3D use getNativeAsset instead of getAssetInt to get Asset Handles. The getAssetInt method will be deprecated in favor of getNativeAsset, as the former does not support 64-bit. [x] rsnPathCreate method accepts loop as an int. This should be long as the underlying RS function assumes this to be a pointer. Change-Id: I919d857e5933febe63966049da83de9f9adee6f5 Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Diffstat (limited to 'rs/java/android/renderscript/ScriptC.java')
-rw-r--r--rs/java/android/renderscript/ScriptC.java16
1 files changed, 13 insertions, 3 deletions
diff --git a/rs/java/android/renderscript/ScriptC.java b/rs/java/android/renderscript/ScriptC.java
index b0a5759325af..cdb2b0811c68 100644
--- a/rs/java/android/renderscript/ScriptC.java
+++ b/rs/java/android/renderscript/ScriptC.java
@@ -45,7 +45,17 @@ public class ScriptC extends Script {
protected ScriptC(int id, RenderScript rs) {
super(id, rs);
}
-
+ /**
+ * Only intended for use by the generated derived classes.
+ *
+ * @param id
+ * @param rs
+ *
+ * @hide
+ */
+ protected ScriptC(long id, RenderScript rs) {
+ super(id, rs);
+ }
/**
* Only intended for use by the generated derived classes.
*
@@ -56,7 +66,7 @@ public class ScriptC extends Script {
*/
protected ScriptC(RenderScript rs, Resources resources, int resourceID) {
super(0, rs);
- int id = internalCreate(rs, resources, resourceID);
+ long id = internalCreate(rs, resources, resourceID);
if (id == 0) {
throw new RSRuntimeException("Loading of ScriptC script failed.");
}
@@ -70,7 +80,7 @@ public class ScriptC extends Script {
static String mCachePath;
- private static synchronized int internalCreate(RenderScript rs, Resources resources, int resourceID) {
+ private static synchronized long internalCreate(RenderScript rs, Resources resources, int resourceID) {
byte[] pgm;
int pgmLength;
InputStream is = resources.openRawResource(resourceID);