Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cb8e9827 authored by Jason Sams's avatar Jason Sams Committed by Android (Google) Code Review
Browse files

Merge "Remove InvokeData and add ContextFinish to generate a sync point."

parents 8959f1c7 96ed4cfa
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -68,6 +68,7 @@ public class RenderScript {
    native void nContextSetSurface(int w, int h, Surface sur);
    native void nContextSetPriority(int p);
    native void nContextDump(int bits);
    native void nContextFinish();

    native void nContextBindRootScript(int script);
    native void nContextBindSampler(int sampler, int slot);
@@ -141,7 +142,6 @@ public class RenderScript {
    native void nScriptBindAllocation(int script, int alloc, int slot);
    native void nScriptSetTimeZone(int script, byte[] timeZone);
    native void nScriptInvoke(int id, int slot);
    native void nScriptInvokeData(int id, int slot);
    native void nScriptInvokeV(int id, int slot, byte[] params);
    native void nScriptSetVarI(int id, int slot, int val);
    native void nScriptSetVarF(int id, int slot, float val);
@@ -323,6 +323,10 @@ public class RenderScript {
        nContextDump(bits);
    }

    public void finish() {
        nContextFinish();
    }

    public void destroy() {
        validate();
        nContextDeinitToClient();
+6 −6
Original line number Diff line number Diff line
@@ -46,12 +46,12 @@ public class Script extends BaseObj {
        mRS.nScriptInvoke(mID, slot);
    }

    protected void invokeData(int slot) {
        mRS.nScriptInvokeData(mID, slot);
    }

    protected void invokeV(int slot, FieldPacker v) {
    protected void invoke(int slot, FieldPacker v) {
        if (v != null) {
            mRS.nScriptInvokeV(mID, slot, v.getData());
        } else {
            mRS.nScriptInvoke(mID, slot);
        }
    }


+9 −10
Original line number Diff line number Diff line
@@ -84,6 +84,14 @@ static void nInitElements(JNIEnv *_env, jobject _this, jint a8, jint rgba4444, j

// ---------------------------------------------------------------------------

static void
nContextFinish(JNIEnv *_env, jobject _this)
{
    RsContext con = (RsContext)(_env->GetIntField(_this, gContextId));
    LOG_API("nContextFinish, con(%p)", con);
    rsContextFinish(con);
}

static void
nAssignName(JNIEnv *_env, jobject _this, jint obj, jbyteArray str)
{
@@ -959,15 +967,6 @@ nScriptInvoke(JNIEnv *_env, jobject _this, jint obj, jint slot)
    rsScriptInvoke(con, (RsScript)obj, slot);
}

static void
nScriptInvokeData(JNIEnv *_env, jobject _this, jint obj, jint slot)
{
    RsContext con = (RsContext)(_env->GetIntField(_this, gContextId));
    LOG_API("nScriptInvokeData, con(%p), script(%p)", con, (void *)obj);
    rsScriptInvokeData(con, (RsScript)obj, slot, 0);
}


static void
nScriptInvokeV(JNIEnv *_env, jobject _this, jint script, jint slot, jbyteArray data)
{
@@ -1381,6 +1380,7 @@ static JNINativeMethod methods[] = {
{"nDeviceSetConfig",               "(III)V",                               (void*)nDeviceSetConfig },
{"nContextCreate",                 "(II)I",                                (void*)nContextCreate },
{"nContextCreateGL",               "(IIZ)I",                               (void*)nContextCreateGL },
{"nContextFinish",                 "()V",                                  (void*)nContextFinish },
{"nContextSetPriority",            "(I)V",                                 (void*)nContextSetPriority },
{"nContextSetSurface",             "(IILandroid/view/Surface;)V",          (void*)nContextSetSurface },
{"nContextDestroy",                "(I)V",                                 (void*)nContextDestroy },
@@ -1442,7 +1442,6 @@ static JNINativeMethod methods[] = {
{"nScriptBindAllocation",          "(III)V",                               (void*)nScriptBindAllocation },
{"nScriptSetTimeZone",             "(I[B)V",                               (void*)nScriptSetTimeZone },
{"nScriptInvoke",                  "(II)V",                                (void*)nScriptInvoke },
{"nScriptInvokeData",              "(II)V",                                (void*)nScriptInvokeData },
{"nScriptInvokeV",                 "(II[B)V",                              (void*)nScriptInvokeV },
{"nScriptSetVarI",                 "(III)V",                               (void*)nScriptSetVarI },
{"nScriptSetVarF",                 "(IIF)V",                               (void*)nScriptSetVarF },
+3 −1
Original line number Diff line number Diff line
// Fountain test script
#pragma version(1)

#pragma rs java_package_name(com.android.fountain)

#include "../../../../scriptc/rs_types.rsh"
#include "../../../../scriptc/rs_math.rsh"
#include "../../../../scriptc/rs_graphics.rsh"
@@ -10,7 +12,7 @@ static int newPart = 0;
float4 partColor;
rs_mesh partMesh;

typedef struct __attribute__((packed, aligned(4))) Point_s {
typedef struct __attribute__((packed, aligned(4))) Point {
    float2 delta;
    float2 position;
    uchar4 color;
Loading