diff options
Diffstat (limited to 'libs/rs/rsScript.cpp')
-rw-r--r-- | libs/rs/rsScript.cpp | 88 |
1 files changed, 3 insertions, 85 deletions
diff --git a/libs/rs/rsScript.cpp b/libs/rs/rsScript.cpp index b0bbb22a95a7..fc22fc3f39f7 100644 --- a/libs/rs/rsScript.cpp +++ b/libs/rs/rsScript.cpp @@ -24,12 +24,6 @@ Script::Script(Context *rsc) : ObjectBase(rsc) mAllocFile = __FILE__; mAllocLine = __LINE__; memset(&mEnviroment, 0, sizeof(mEnviroment)); - mEnviroment.mClearColor[0] = 0; - mEnviroment.mClearColor[1] = 0; - mEnviroment.mClearColor[2] = 0; - mEnviroment.mClearColor[3] = 1; - mEnviroment.mClearDepth = 1; - mEnviroment.mClearStencil = 0; } Script::~Script() @@ -61,33 +55,12 @@ void rsi_ScriptBindAllocation(Context * rsc, RsScript vs, RsAllocation va, uint3 //LOGE("rsi_ScriptBindAllocation %i %p %p", slot, a, a->getPtr()); } -void rsi_ScriptSetClearColor(Context * rsc, RsScript vs, float r, float g, float b, float a) -{ - Script *s = static_cast<Script *>(vs); - s->mEnviroment.mClearColor[0] = r; - s->mEnviroment.mClearColor[1] = g; - s->mEnviroment.mClearColor[2] = b; - s->mEnviroment.mClearColor[3] = a; -} - void rsi_ScriptSetTimeZone(Context * rsc, RsScript vs, const char * timeZone, uint32_t length) { Script *s = static_cast<Script *>(vs); s->mEnviroment.mTimeZone = timeZone; } -void rsi_ScriptSetClearDepth(Context * rsc, RsScript vs, float v) -{ - Script *s = static_cast<Script *>(vs); - s->mEnviroment.mClearDepth = v; -} - -void rsi_ScriptSetClearStencil(Context * rsc, RsScript vs, uint32_t v) -{ - Script *s = static_cast<Script *>(vs); - s->mEnviroment.mClearStencil = v; -} - void rsi_ScriptSetType(Context * rsc, RsType vt, uint32_t slot, bool writable, const char *name) { ScriptCState *ss = &rsc->mScriptC; @@ -99,76 +72,21 @@ void rsi_ScriptSetType(Context * rsc, RsType vt, uint32_t slot, bool writable, c void rsi_ScriptInvoke(Context *rsc, RsScript vs, uint32_t slot) { - //LOGE("rsi_ScriptInvoke %i", slot); Script *s = static_cast<Script *>(vs); - if ((slot >= s->mEnviroment.mInvokeFunctionCount) || - (s->mEnviroment.mInvokeFunctions[slot] == NULL)) { - rsc->setError(RS_ERROR_BAD_SCRIPT, "Calling invoke on bad script"); - return; - } - s->setupScript(); - //LOGE("invoking %i %p", slot, s->mEnviroment.mInvokeFunctions[slot]); - s->mEnviroment.mInvokeFunctions[slot](); - //LOGE("invoke finished"); + s->Invoke(rsc, slot, NULL, 0); } void rsi_ScriptInvokeData(Context *rsc, RsScript vs, uint32_t slot, void *data) { - //LOGE("rsi_ScriptInvoke %i", slot); Script *s = static_cast<Script *>(vs); - if ((slot >= s->mEnviroment.mInvokeFunctionCount) || - (s->mEnviroment.mInvokeFunctions[slot] == NULL)) { - rsc->setError(RS_ERROR_BAD_SCRIPT, "Calling invoke on bad script"); - return; - } - s->setupScript(); - //LOGE("invoking %i %p", slot, s->mEnviroment.mInvokeFunctions[slot]); - s->mEnviroment.mInvokeFunctions[slot](); - //LOGE("invoke finished"); + s->Invoke(rsc, slot, NULL, 0); } void rsi_ScriptInvokeV(Context *rsc, RsScript vs, uint32_t slot, const void *data, uint32_t len) { - //LOGE("rsi_ScriptInvoke %i", slot); Script *s = static_cast<Script *>(vs); - if ((slot >= s->mEnviroment.mInvokeFunctionCount) || - (s->mEnviroment.mInvokeFunctions[slot] == NULL)) { - rsc->setError(RS_ERROR_BAD_SCRIPT, "Calling invoke on bad script"); - return; - } - s->setupScript(); - - //LOGE("rsi_ScriptInvokeV, len=%i", len); - const uint32_t * dPtr = (const uint32_t *)data; - switch(len) { - case 0: - s->mEnviroment.mInvokeFunctions[slot](); - break; - case 4: - ((void (*)(uint32_t)) - s->mEnviroment.mInvokeFunctions[slot])(dPtr[0]); - break; - case 8: - ((void (*)(uint32_t, uint32_t)) - s->mEnviroment.mInvokeFunctions[slot])(dPtr[0], dPtr[1]); - break; - case 12: - ((void (*)(uint32_t, uint32_t, uint32_t)) - s->mEnviroment.mInvokeFunctions[slot])(dPtr[0], dPtr[1], dPtr[2]); - break; - case 16: - ((void (*)(uint32_t, uint32_t, uint32_t, uint32_t)) - s->mEnviroment.mInvokeFunctions[slot])(dPtr[0], dPtr[1], dPtr[2], dPtr[3]); - break; - case 20: - ((void (*)(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)) - s->mEnviroment.mInvokeFunctions[slot])(dPtr[0], dPtr[1], dPtr[2], dPtr[3], dPtr[4]); - break; - - - } - + s->Invoke(rsc, slot, data, len); } void rsi_ScriptSetVarI(Context *rsc, RsScript vs, uint32_t slot, int value) |