summaryrefslogtreecommitdiffstats
path: root/graphics/jni
diff options
context:
space:
mode:
authorStephen Hines <srhines@google.com>2012-04-20 14:26:06 -0700
committerStephen Hines <srhines@google.com>2012-05-01 00:29:52 -0700
commitadeb809201fcb77ba2b76a814ae4cdc9dacb326b (patch)
tree2b19e82372eb7c279c0cc19f9e40df9e2d33bc73 /graphics/jni
parent9da1b5d0301e8d13be8c96cbd12dcda04fcf7118 (diff)
downloadframeworks_base-adeb809201fcb77ba2b76a814ae4cdc9dacb326b.zip
frameworks_base-adeb809201fcb77ba2b76a814ae4cdc9dacb326b.tar.gz
frameworks_base-adeb809201fcb77ba2b76a814ae4cdc9dacb326b.tar.bz2
Start passing element/dim information along with FieldPacker.
BUG=6009244 Change-Id: I3c82c8b40c899b875831f53cf0ad82ea36c1a043
Diffstat (limited to 'graphics/jni')
-rw-r--r--graphics/jni/android_renderscript_RenderScript.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/graphics/jni/android_renderscript_RenderScript.cpp b/graphics/jni/android_renderscript_RenderScript.cpp
index 1b7ef22..3d5d1a9 100644
--- a/graphics/jni/android_renderscript_RenderScript.cpp
+++ b/graphics/jni/android_renderscript_RenderScript.cpp
@@ -953,6 +953,20 @@ nScriptSetVarV(JNIEnv *_env, jobject _this, RsContext con, jint script, jint slo
_env->ReleaseByteArrayElements(data, ptr, JNI_ABORT);
}
+static void
+nScriptSetVarVE(JNIEnv *_env, jobject _this, RsContext con, jint script, jint slot, jbyteArray data, jint elem, jintArray dims)
+{
+ LOG_API("nScriptSetVarVE, con(%p), s(%p), slot(%i)", con, (void *)script, slot);
+ jint len = _env->GetArrayLength(data);
+ jbyte *ptr = _env->GetByteArrayElements(data, NULL);
+ jint dimsLen = _env->GetArrayLength(dims) * sizeof(int);
+ jint *dimsPtr = _env->GetIntArrayElements(dims, NULL);
+ rsScriptSetVarVE(con, (RsScript)script, slot, ptr, len, (RsElement)elem,
+ (const size_t*) dimsPtr, dimsLen);
+ _env->ReleaseByteArrayElements(data, ptr, JNI_ABORT);
+ _env->ReleaseIntArrayElements(dims, dimsPtr, JNI_ABORT);
+}
+
static void
nScriptSetTimeZone(JNIEnv *_env, jobject _this, RsContext con, jint script, jbyteArray timeZone)
@@ -1394,6 +1408,7 @@ static JNINativeMethod methods[] = {
{"rsnScriptSetVarF", "(IIIF)V", (void*)nScriptSetVarF },
{"rsnScriptSetVarD", "(IIID)V", (void*)nScriptSetVarD },
{"rsnScriptSetVarV", "(III[B)V", (void*)nScriptSetVarV },
+{"rsnScriptSetVarVE", "(III[BI[I)V", (void*)nScriptSetVarVE },
{"rsnScriptSetVarObj", "(IIII)V", (void*)nScriptSetVarObj },
{"rsnScriptCCreate", "(ILjava/lang/String;Ljava/lang/String;[BI)I", (void*)nScriptCCreate },