Cleanup of object destruction. No need to have a per-class destruction function. This was a legacy of the distant past when the classes did not have a common base.
This commit is contained in:
@@ -47,14 +47,6 @@ public class Allocation extends BaseObj {
|
||||
mRS.nAllocationUploadToTexture(mID, baseMipLevel);
|
||||
}
|
||||
|
||||
public void destroy() {
|
||||
if(mDestroyed) {
|
||||
throw new IllegalStateException("Object already destroyed.");
|
||||
}
|
||||
mDestroyed = true;
|
||||
mRS.nAllocationDestroy(mID);
|
||||
}
|
||||
|
||||
public void data(int[] d) {
|
||||
mRS.nAllocationData(mID, d);
|
||||
}
|
||||
@@ -98,11 +90,6 @@ public class Allocation extends BaseObj {
|
||||
mID = id;
|
||||
}
|
||||
|
||||
public void destroy() {
|
||||
mRS.nAdapter1DDestroy(mID);
|
||||
mID = 0;
|
||||
}
|
||||
|
||||
public void setConstraint(Dimension dim, int value) {
|
||||
mRS.nAdapter1DSetConstraint(mID, dim.mID, value);
|
||||
}
|
||||
@@ -139,11 +126,6 @@ public class Allocation extends BaseObj {
|
||||
mID = id;
|
||||
}
|
||||
|
||||
public void destroy() {
|
||||
mRS.nAdapter2DDestroy(mID);
|
||||
mID = 0;
|
||||
}
|
||||
|
||||
public void setConstraint(Dimension dim, int value) {
|
||||
mRS.nAdapter2DSetConstraint(mID, dim.mID, value);
|
||||
}
|
||||
@@ -251,7 +233,7 @@ public class Allocation extends BaseObj {
|
||||
Allocation alloc = createTyped(rs, t);
|
||||
t.destroy();
|
||||
return alloc;
|
||||
}
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
@@ -61,9 +61,18 @@ class BaseObj {
|
||||
{
|
||||
if (!mDestroyed) {
|
||||
Log.v(RenderScript.LOG_TAG,
|
||||
"Element finalized without having released the RS reference.");
|
||||
getClass() + " finalized without having released the RS reference.");
|
||||
}
|
||||
super.finalize();
|
||||
}
|
||||
|
||||
public void destroy() {
|
||||
if(mDestroyed) {
|
||||
throw new IllegalStateException("Object already destroyed.");
|
||||
}
|
||||
mDestroyed = true;
|
||||
mRS.nObjDestroy(mID);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -138,11 +138,7 @@ public class Element extends BaseObj {
|
||||
if(mIsPredefined) {
|
||||
throw new IllegalStateException("Attempting to destroy a predefined Element.");
|
||||
}
|
||||
if(mDestroyed) {
|
||||
throw new IllegalStateException("Object already destroyed.");
|
||||
}
|
||||
mDestroyed = true;
|
||||
mRS.nElementDestroy(mID);
|
||||
super.destroy();
|
||||
}
|
||||
|
||||
public static Element createFromClass(RenderScript rs, Class c) {
|
||||
|
||||
@@ -29,11 +29,6 @@ public class Light extends BaseObj {
|
||||
mID = id;
|
||||
}
|
||||
|
||||
public void destroy() {
|
||||
mRS.nLightDestroy(mID);
|
||||
mID = 0;
|
||||
}
|
||||
|
||||
public void setColor(float r, float g, float b) {
|
||||
mRS.nLightSetColor(mID, r, g, b);
|
||||
}
|
||||
|
||||
@@ -45,14 +45,6 @@ public class ProgramFragment extends BaseObj {
|
||||
mID = id;
|
||||
}
|
||||
|
||||
public void destroy() {
|
||||
if(mDestroyed) {
|
||||
throw new IllegalStateException("Object already destroyed.");
|
||||
}
|
||||
mDestroyed = true;
|
||||
mRS.nProgramFragmentStoreDestroy(mID);
|
||||
}
|
||||
|
||||
public void bindTexture(Allocation va, int slot)
|
||||
throws IllegalArgumentException {
|
||||
if((slot < 0) || (slot >= MAX_SLOT)) {
|
||||
|
||||
@@ -80,14 +80,6 @@ public class ProgramStore extends BaseObj {
|
||||
mID = id;
|
||||
}
|
||||
|
||||
public void destroy() {
|
||||
if(mDestroyed) {
|
||||
throw new IllegalStateException("Object already destroyed.");
|
||||
}
|
||||
mDestroyed = true;
|
||||
mRS.nProgramFragmentStoreDestroy(mID);
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static class Builder {
|
||||
|
||||
@@ -33,14 +33,6 @@ public class ProgramVertex extends BaseObj {
|
||||
mID = id;
|
||||
}
|
||||
|
||||
public void destroy() {
|
||||
if(mDestroyed) {
|
||||
throw new IllegalStateException("Object already destroyed.");
|
||||
}
|
||||
mDestroyed = true;
|
||||
mRS.nProgramVertexDestroy(mID);
|
||||
}
|
||||
|
||||
public void bindAllocation(MatrixAllocation va) {
|
||||
mRS.nProgramVertexBindAllocation(mID, va.mAlloc.mID);
|
||||
}
|
||||
|
||||
@@ -74,6 +74,7 @@ public class RenderScript {
|
||||
native void nContextAddDefineF(String name, float value);
|
||||
|
||||
native void nAssignName(int obj, byte[] name);
|
||||
native void nObjDestroy(int id);
|
||||
native int nFileOpen(byte[] name);
|
||||
|
||||
native void nElementBegin();
|
||||
@@ -81,12 +82,10 @@ public class RenderScript {
|
||||
native void nElementAdd(int kind, int type, int norm, int bits, String s);
|
||||
native int nElementCreate();
|
||||
native int nElementGetPredefined(int predef);
|
||||
native void nElementDestroy(int obj);
|
||||
|
||||
native void nTypeBegin(int elementID);
|
||||
native void nTypeAdd(int dim, int val);
|
||||
native int nTypeCreate();
|
||||
native void nTypeDestroy(int id);
|
||||
native void nTypeFinalDestroy(Type t);
|
||||
native void nTypeSetupFields(Type t, int[] types, int[] bits, Field[] IDs);
|
||||
|
||||
@@ -97,7 +96,6 @@ public class RenderScript {
|
||||
native int nAllocationCreateFromBitmapBoxed(int dstFmt, boolean genMips, Bitmap bmp);
|
||||
|
||||
native void nAllocationUploadToTexture(int alloc, int baseMioLevel);
|
||||
native void nAllocationDestroy(int alloc);
|
||||
native void nAllocationData(int id, int[] d);
|
||||
native void nAllocationData(int id, float[] d);
|
||||
native void nAllocationSubData1D(int id, int off, int count, int[] d);
|
||||
@@ -108,7 +106,6 @@ public class RenderScript {
|
||||
native void nAllocationRead(int id, float[] d);
|
||||
native void nAllocationDataFromObject(int id, Type t, Object o);
|
||||
|
||||
native void nTriangleMeshDestroy(int id);
|
||||
native void nTriangleMeshBegin(int vertex, int index);
|
||||
native void nTriangleMeshAddVertex_XY (float x, float y);
|
||||
native void nTriangleMeshAddVertex_XYZ (float x, float y, float z);
|
||||
@@ -118,7 +115,6 @@ public class RenderScript {
|
||||
native void nTriangleMeshAddTriangle(int i1, int i2, int i3);
|
||||
native int nTriangleMeshCreate();
|
||||
|
||||
native void nAdapter1DDestroy(int id);
|
||||
native void nAdapter1DBindAllocation(int ad, int alloc);
|
||||
native void nAdapter1DSetConstraint(int ad, int dim, int value);
|
||||
native void nAdapter1DData(int ad, int[] d);
|
||||
@@ -127,7 +123,6 @@ public class RenderScript {
|
||||
native void nAdapter1DSubData(int ad, int off, int count, float[] d);
|
||||
native int nAdapter1DCreate();
|
||||
|
||||
native void nAdapter2DDestroy(int id);
|
||||
native void nAdapter2DBindAllocation(int ad, int alloc);
|
||||
native void nAdapter2DSetConstraint(int ad, int dim, int value);
|
||||
native void nAdapter2DData(int ad, int[] d);
|
||||
@@ -136,7 +131,6 @@ public class RenderScript {
|
||||
native void nAdapter2DSubData(int ad, int xoff, int yoff, int w, int h, float[] d);
|
||||
native int nAdapter2DCreate();
|
||||
|
||||
native void nScriptDestroy(int script);
|
||||
native void nScriptBindAllocation(int script, int alloc, int slot);
|
||||
native void nScriptSetClearColor(int script, float r, float g, float b, float a);
|
||||
native void nScriptSetClearDepth(int script, float depth);
|
||||
@@ -151,7 +145,6 @@ public class RenderScript {
|
||||
native void nScriptCAddDefineI32(String name, int value);
|
||||
native void nScriptCAddDefineF(String name, float value);
|
||||
|
||||
native void nSamplerDestroy(int sampler);
|
||||
native void nSamplerBegin();
|
||||
native void nSamplerSet(int param, int value);
|
||||
native int nSamplerCreate();
|
||||
@@ -163,7 +156,6 @@ public class RenderScript {
|
||||
native void nProgramFragmentStoreBlendFunc(int src, int dst);
|
||||
native void nProgramFragmentStoreDither(boolean enable);
|
||||
native int nProgramFragmentStoreCreate();
|
||||
native void nProgramFragmentStoreDestroy(int pgm);
|
||||
|
||||
native void nProgramFragmentBegin(int in, int out);
|
||||
native void nProgramFragmentBindTexture(int vpf, int slot, int a);
|
||||
@@ -172,9 +164,7 @@ public class RenderScript {
|
||||
native void nProgramFragmentSetEnvMode(int slot, int env);
|
||||
native void nProgramFragmentSetTexEnable(int slot, boolean enable);
|
||||
native int nProgramFragmentCreate();
|
||||
native void nProgramFragmentDestroy(int pgm);
|
||||
|
||||
native void nProgramVertexDestroy(int pv);
|
||||
native void nProgramVertexBindAllocation(int pv, int mID);
|
||||
native void nProgramVertexBegin(int inID, int outID);
|
||||
native void nProgramVertexSetTextureMatrixEnable(boolean enable);
|
||||
@@ -185,16 +175,13 @@ public class RenderScript {
|
||||
native void nLightSetIsMono(boolean isMono);
|
||||
native void nLightSetIsLocal(boolean isLocal);
|
||||
native int nLightCreate();
|
||||
native void nLightDestroy(int l);
|
||||
native void nLightSetColor(int l, float r, float g, float b);
|
||||
native void nLightSetPosition(int l, float x, float y, float z);
|
||||
|
||||
native void nSimpleMeshDestroy(int id);
|
||||
native int nSimpleMeshCreate(int batchID, int idxID, int[] vtxID, int prim);
|
||||
native void nSimpleMeshBindVertex(int id, int alloc, int slot);
|
||||
native void nSimpleMeshBindIndex(int id, int alloc);
|
||||
|
||||
native void nAnimationDestroy(int id);
|
||||
native void nAnimationBegin(int attribCount, int keyframeCount);
|
||||
native void nAnimationAdd(float time, float[] attribs);
|
||||
native int nAnimationCreate();
|
||||
@@ -229,11 +216,6 @@ public class RenderScript {
|
||||
super(RenderScript.this);
|
||||
mID = id;
|
||||
}
|
||||
|
||||
public void destroy() {
|
||||
nTriangleMeshDestroy(mID);
|
||||
mID = 0;
|
||||
}
|
||||
}
|
||||
|
||||
public void triangleMeshBegin(Element vertex, Element index) {
|
||||
@@ -278,11 +260,6 @@ public class RenderScript {
|
||||
super(RenderScript.this);
|
||||
mID = id;
|
||||
}
|
||||
|
||||
public void destroy() {
|
||||
//nLightDestroy(mID);
|
||||
mID = 0;
|
||||
}
|
||||
}
|
||||
|
||||
public File fileOpen(String s) throws IllegalStateException, IllegalArgumentException
|
||||
|
||||
@@ -51,11 +51,6 @@ public class Sampler extends BaseObj {
|
||||
mID = id;
|
||||
}
|
||||
|
||||
public void destroy() {
|
||||
mRS.nSamplerDestroy(mID);
|
||||
mID = 0;
|
||||
}
|
||||
|
||||
public static class Builder {
|
||||
RenderScript mRS;
|
||||
Value mMin;
|
||||
|
||||
@@ -31,14 +31,6 @@ public class Script extends BaseObj {
|
||||
mID = id;
|
||||
}
|
||||
|
||||
public void destroy() {
|
||||
if(mDestroyed) {
|
||||
throw new IllegalStateException("Object already destroyed.");
|
||||
}
|
||||
mDestroyed = true;
|
||||
mRS.nScriptDestroy(mID);
|
||||
}
|
||||
|
||||
public void bindAllocation(Allocation va, int slot) {
|
||||
mRS.nScriptBindAllocation(mID, va.mID, slot);
|
||||
}
|
||||
|
||||
@@ -34,14 +34,6 @@ public class SimpleMesh extends BaseObj {
|
||||
mID = id;
|
||||
}
|
||||
|
||||
public void destroy() {
|
||||
if(mDestroyed) {
|
||||
throw new IllegalStateException("Object already destroyed.");
|
||||
}
|
||||
mDestroyed = true;
|
||||
mRS.nSimpleMeshDestroy(mID);
|
||||
}
|
||||
|
||||
public void bindVertexAllocation(Allocation a, int slot) {
|
||||
mRS.nSimpleMeshBindVertex(mID, a.mID, slot);
|
||||
}
|
||||
|
||||
@@ -48,14 +48,6 @@ public class Type extends BaseObj {
|
||||
super.finalize();
|
||||
}
|
||||
|
||||
public void destroy() {
|
||||
if(mDestroyed) {
|
||||
throw new IllegalStateException("Object already destroyed.");
|
||||
}
|
||||
mDestroyed = true;
|
||||
mRS.nTypeDestroy(mID);
|
||||
}
|
||||
|
||||
public static Type createFromClass(RenderScript rs, Class c, int size) {
|
||||
Element e = Element.createFromClass(rs, c);
|
||||
Builder b = new Builder(rs, e);
|
||||
|
||||
@@ -78,6 +78,14 @@ nAssignName(JNIEnv *_env, jobject _this, jint obj, jbyteArray str)
|
||||
_env->ReleasePrimitiveArrayCritical(str, cptr, JNI_ABORT);
|
||||
}
|
||||
|
||||
static void
|
||||
nObjDestroy(JNIEnv *_env, jobject _this, jint obj)
|
||||
{
|
||||
RsContext con = (RsContext)(_env->GetIntField(_this, gContextId));
|
||||
LOG_API("nObjDestroy, con(%p) obj(%p)", con, (void *)obj);
|
||||
rsObjDestroy(con, (void *)obj);
|
||||
}
|
||||
|
||||
|
||||
static jint
|
||||
nFileOpen(JNIEnv *_env, jobject _this, jbyteArray str)
|
||||
@@ -183,14 +191,6 @@ nElementGetPredefined(JNIEnv *_env, jobject _this, jint predef)
|
||||
return (jint)rsElementGetPredefined(con, (RsElementPredefined)predef);
|
||||
}
|
||||
|
||||
static void
|
||||
nElementDestroy(JNIEnv *_env, jobject _this, jint e)
|
||||
{
|
||||
RsContext con = (RsContext)(_env->GetIntField(_this, gContextId));
|
||||
LOG_API("nElementDestroy, con(%p) e(%p)", con, (RsElement)e);
|
||||
rsElementDestroy(con, (RsElement)e);
|
||||
}
|
||||
|
||||
// -----------------------------------
|
||||
|
||||
static void
|
||||
@@ -217,14 +217,6 @@ nTypeCreate(JNIEnv *_env, jobject _this)
|
||||
return (jint)rsTypeCreate(con);
|
||||
}
|
||||
|
||||
static void
|
||||
nTypeDestroy(JNIEnv *_env, jobject _this, jint eID)
|
||||
{
|
||||
RsContext con = (RsContext)(_env->GetIntField(_this, gContextId));
|
||||
LOG_API("nTypeDestroy, con(%p), t(%p)", con, (RsType)eID);
|
||||
rsTypeDestroy(con, (RsType)eID);
|
||||
}
|
||||
|
||||
static void * SF_LoadInt(JNIEnv *_env, jobject _obj, jfieldID _field, void *buffer)
|
||||
{
|
||||
((int32_t *)buffer)[0] = _env->GetIntField(_obj, _field);
|
||||
@@ -411,14 +403,6 @@ nAllocationCreateFromBitmapBoxed(JNIEnv *_env, jobject _this, jint dstFmt, jbool
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
nAllocationDestroy(JNIEnv *_env, jobject _this, jint a)
|
||||
{
|
||||
RsContext con = (RsContext)(_env->GetIntField(_this, gContextId));
|
||||
LOG_API("nAllocationDestroy, con(%p), a(%p)", con, (RsAllocation)a);
|
||||
rsAllocationDestroy(con, (RsAllocation)a);
|
||||
}
|
||||
|
||||
static void
|
||||
nAllocationData_i(JNIEnv *_env, jobject _this, jint alloc, jintArray data)
|
||||
{
|
||||
@@ -530,14 +514,6 @@ nAllocationDataFromObject(JNIEnv *_env, jobject _this, jint alloc, jobject _type
|
||||
|
||||
// -----------------------------------
|
||||
|
||||
static void
|
||||
nTriangleMeshDestroy(JNIEnv *_env, jobject _this, jint tm)
|
||||
{
|
||||
RsContext con = (RsContext)(_env->GetIntField(_this, gContextId));
|
||||
LOG_API("nTriangleMeshDestroy, con(%p), tm(%p)", con, (RsAllocation)tm);
|
||||
rsTriangleMeshDestroy(con, (RsTriangleMesh)tm);
|
||||
}
|
||||
|
||||
static void
|
||||
nTriangleMeshBegin(JNIEnv *_env, jobject _this, jint v, jint i)
|
||||
{
|
||||
@@ -609,14 +585,6 @@ nTriangleMeshCreate(JNIEnv *_env, jobject _this)
|
||||
|
||||
// -----------------------------------
|
||||
|
||||
static void
|
||||
nAdapter1DDestroy(JNIEnv *_env, jobject _this, jint adapter)
|
||||
{
|
||||
RsContext con = (RsContext)(_env->GetIntField(_this, gContextId));
|
||||
LOG_API("nAdapter1DDestroy, con(%p), adapter(%p)", con, (RsAdapter1D)adapter);
|
||||
rsAdapter1DDestroy(con, (RsAdapter1D)adapter);
|
||||
}
|
||||
|
||||
static void
|
||||
nAdapter1DBindAllocation(JNIEnv *_env, jobject _this, jint adapter, jint alloc)
|
||||
{
|
||||
@@ -687,14 +655,6 @@ nAdapter1DCreate(JNIEnv *_env, jobject _this)
|
||||
|
||||
// -----------------------------------
|
||||
|
||||
static void
|
||||
nAdapter2DDestroy(JNIEnv *_env, jobject _this, jint adapter)
|
||||
{
|
||||
RsContext con = (RsContext)(_env->GetIntField(_this, gContextId));
|
||||
LOG_API("nAdapter2DDestroy, con(%p), adapter(%p)", con, (RsAdapter2D)adapter);
|
||||
rsAdapter2DDestroy(con, (RsAdapter2D)adapter);
|
||||
}
|
||||
|
||||
static void
|
||||
nAdapter2DBindAllocation(JNIEnv *_env, jobject _this, jint adapter, jint alloc)
|
||||
{
|
||||
@@ -767,14 +727,6 @@ nAdapter2DCreate(JNIEnv *_env, jobject _this)
|
||||
|
||||
// -----------------------------------
|
||||
|
||||
static void
|
||||
nScriptDestroy(JNIEnv *_env, jobject _this, jint script)
|
||||
{
|
||||
RsContext con = (RsContext)(_env->GetIntField(_this, gContextId));
|
||||
LOG_API("nScriptDestroy, con(%p), script(%p)", con, (RsScript)script);
|
||||
rsScriptDestroy(con, (RsScript)script);
|
||||
}
|
||||
|
||||
static void
|
||||
nScriptBindAllocation(JNIEnv *_env, jobject _this, jint script, jint alloc, jint slot)
|
||||
{
|
||||
@@ -988,14 +940,6 @@ nProgramFragmentStoreCreate(JNIEnv *_env, jobject _this)
|
||||
return (jint)rsProgramFragmentStoreCreate(con);
|
||||
}
|
||||
|
||||
static void
|
||||
nProgramFragmentStoreDestroy(JNIEnv *_env, jobject _this, jint pgm)
|
||||
{
|
||||
RsContext con = (RsContext)(_env->GetIntField(_this, gContextId));
|
||||
LOG_API("nProgramFragmentStoreDestroy, con(%p), pgm(%i)", con, pgm);
|
||||
rsProgramFragmentStoreDestroy(con, (RsProgramFragmentStore)pgm);
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
static void
|
||||
@@ -1054,14 +998,6 @@ nProgramFragmentCreate(JNIEnv *_env, jobject _this, jint slot, jboolean enable)
|
||||
return (jint)rsProgramFragmentCreate(con);
|
||||
}
|
||||
|
||||
static void
|
||||
nProgramFragmentDestroy(JNIEnv *_env, jobject _this, jint pgm)
|
||||
{
|
||||
RsContext con = (RsContext)(_env->GetIntField(_this, gContextId));
|
||||
LOG_API("nProgramFragmentDestroy, con(%p), pgm(%i)", con, pgm);
|
||||
rsProgramFragmentDestroy(con, (RsProgramFragment)pgm);
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
static void
|
||||
@@ -1104,15 +1040,6 @@ nProgramVertexCreate(JNIEnv *_env, jobject _this)
|
||||
return (jint)rsProgramVertexCreate(con);
|
||||
}
|
||||
|
||||
static void
|
||||
nProgramVertexDestroy(JNIEnv *_env, jobject _this, jint pgm)
|
||||
{
|
||||
RsContext con = (RsContext)(_env->GetIntField(_this, gContextId));
|
||||
LOG_API("nProgramFragmentDestroy, con(%p), pgm(%i)", con, pgm);
|
||||
rsProgramFragmentDestroy(con, (RsProgramFragment)pgm);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
@@ -1172,14 +1099,6 @@ nContextAddDefineF(JNIEnv *_env, jobject _this, jstring name, jfloat value)
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
static void
|
||||
nSamplerDestroy(JNIEnv *_env, jobject _this, jint s)
|
||||
{
|
||||
RsContext con = (RsContext)(_env->GetIntField(_this, gContextId));
|
||||
LOG_API("nSamplerDestroy, con(%p), sampler(%p)", con, (RsSampler)s);
|
||||
rsSamplerDestroy(con, (RsSampler)s);
|
||||
}
|
||||
|
||||
static void
|
||||
nSamplerBegin(JNIEnv *_env, jobject _this)
|
||||
{
|
||||
@@ -1238,14 +1157,6 @@ nLightCreate(JNIEnv *_env, jobject _this)
|
||||
return (jint)rsLightCreate(con);
|
||||
}
|
||||
|
||||
static void
|
||||
nLightDestroy(JNIEnv *_env, jobject _this, jint light)
|
||||
{
|
||||
RsContext con = (RsContext)(_env->GetIntField(_this, gContextId));
|
||||
LOG_API("nLightDestroy, con(%p), light(%p)", con, (RsLight)light);
|
||||
rsLightDestroy(con, (RsLight)light);
|
||||
}
|
||||
|
||||
static void
|
||||
nLightSetColor(JNIEnv *_env, jobject _this, jint light, float r, float g, float b)
|
||||
{
|
||||
@@ -1264,14 +1175,6 @@ nLightSetPosition(JNIEnv *_env, jobject _this, jint light, float x, float y, flo
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
static void
|
||||
nSimpleMeshDestroy(JNIEnv *_env, jobject _this, jint s)
|
||||
{
|
||||
RsContext con = (RsContext)(_env->GetIntField(_this, gContextId));
|
||||
LOG_API("nSimpleMeshDestroy, con(%p), SimpleMesh(%p)", con, (RsSimpleMesh)s);
|
||||
rsSimpleMeshDestroy(con, (RsSimpleMesh)s);
|
||||
}
|
||||
|
||||
static jint
|
||||
nSimpleMeshCreate(JNIEnv *_env, jobject _this, jint batchID, jint indexID, jintArray vtxIDs, jint primID)
|
||||
{
|
||||
@@ -1313,6 +1216,7 @@ static JNINativeMethod methods[] = {
|
||||
{"nContextCreate", "(ILandroid/view/Surface;I)I", (void*)nContextCreate },
|
||||
{"nContextDestroy", "(I)V", (void*)nContextDestroy },
|
||||
{"nAssignName", "(I[B)V", (void*)nAssignName },
|
||||
{"nObjDestroy", "(I)V", (void*)nObjDestroy },
|
||||
|
||||
{"nFileOpen", "([B)I", (void*)nFileOpen },
|
||||
|
||||
@@ -1321,12 +1225,10 @@ static JNINativeMethod methods[] = {
|
||||
{"nElementAdd", "(IIIILjava/lang/String;)V", (void*)nElementAdd },
|
||||
{"nElementCreate", "()I", (void*)nElementCreate },
|
||||
{"nElementGetPredefined", "(I)I", (void*)nElementGetPredefined },
|
||||
{"nElementDestroy", "(I)V", (void*)nElementDestroy },
|
||||
|
||||
{"nTypeBegin", "(I)V", (void*)nTypeBegin },
|
||||
{"nTypeAdd", "(II)V", (void*)nTypeAdd },
|
||||
{"nTypeCreate", "()I", (void*)nTypeCreate },
|
||||
{"nTypeDestroy", "(I)V", (void*)nTypeDestroy },
|
||||
{"nTypeFinalDestroy", "(Landroid/renderscript/Type;)V", (void*)nTypeFinalDestroy },
|
||||
{"nTypeSetupFields", "(Landroid/renderscript/Type;[I[I[Ljava/lang/reflect/Field;)V", (void*)nTypeSetupFields },
|
||||
|
||||
@@ -1336,7 +1238,6 @@ static JNINativeMethod methods[] = {
|
||||
{"nAllocationCreateFromBitmap", "(IZLandroid/graphics/Bitmap;)I", (void*)nAllocationCreateFromBitmap },
|
||||
{"nAllocationCreateFromBitmapBoxed","(IZLandroid/graphics/Bitmap;)I", (void*)nAllocationCreateFromBitmapBoxed },
|
||||
{"nAllocationUploadToTexture", "(II)V", (void*)nAllocationUploadToTexture },
|
||||
{"nAllocationDestroy", "(I)V", (void*)nAllocationDestroy },
|
||||
{"nAllocationData", "(I[I)V", (void*)nAllocationData_i },
|
||||
{"nAllocationData", "(I[F)V", (void*)nAllocationData_f },
|
||||
{"nAllocationSubData1D", "(III[I)V", (void*)nAllocationSubData1D_i },
|
||||
@@ -1347,7 +1248,6 @@ static JNINativeMethod methods[] = {
|
||||
{"nAllocationRead", "(I[F)V", (void*)nAllocationRead_f },
|
||||
{"nAllocationDataFromObject", "(ILandroid/renderscript/Type;Ljava/lang/Object;)V", (void*)nAllocationDataFromObject },
|
||||
|
||||
{"nTriangleMeshDestroy", "(I)V", (void*)nTriangleMeshDestroy },
|
||||
{"nTriangleMeshBegin", "(II)V", (void*)nTriangleMeshBegin },
|
||||
{"nTriangleMeshAddVertex_XY", "(FF)V", (void*)nTriangleMeshAddVertex_XY },
|
||||
{"nTriangleMeshAddVertex_XYZ", "(FFF)V", (void*)nTriangleMeshAddVertex_XYZ },
|
||||
@@ -1357,7 +1257,6 @@ static JNINativeMethod methods[] = {
|
||||
{"nTriangleMeshAddTriangle", "(III)V", (void*)nTriangleMeshAddTriangle },
|
||||
{"nTriangleMeshCreate", "()I", (void*)nTriangleMeshCreate },
|
||||
|
||||
{"nAdapter1DDestroy", "(I)V", (void*)nAdapter1DDestroy },
|
||||
{"nAdapter1DBindAllocation", "(II)V", (void*)nAdapter1DBindAllocation },
|
||||
{"nAdapter1DSetConstraint", "(III)V", (void*)nAdapter1DSetConstraint },
|
||||
{"nAdapter1DData", "(I[I)V", (void*)nAdapter1DData_i },
|
||||
@@ -1366,7 +1265,6 @@ static JNINativeMethod methods[] = {
|
||||
{"nAdapter1DSubData", "(III[F)V", (void*)nAdapter1DSubData_f },
|
||||
{"nAdapter1DCreate", "()I", (void*)nAdapter1DCreate },
|
||||
|
||||
{"nAdapter2DDestroy", "(I)V", (void*)nAdapter2DDestroy },
|
||||
{"nAdapter2DBindAllocation", "(II)V", (void*)nAdapter2DBindAllocation },
|
||||
{"nAdapter2DSetConstraint", "(III)V", (void*)nAdapter2DSetConstraint },
|
||||
{"nAdapter2DData", "(I[I)V", (void*)nAdapter2DData_i },
|
||||
@@ -1375,7 +1273,6 @@ static JNINativeMethod methods[] = {
|
||||
{"nAdapter2DSubData", "(IIIII[F)V", (void*)nAdapter2DSubData_f },
|
||||
{"nAdapter2DCreate", "()I", (void*)nAdapter2DCreate },
|
||||
|
||||
{"nScriptDestroy", "(I)V", (void*)nScriptDestroy },
|
||||
{"nScriptBindAllocation", "(III)V", (void*)nScriptBindAllocation },
|
||||
{"nScriptSetClearColor", "(IFFFF)V", (void*)nScriptSetClearColor },
|
||||
{"nScriptSetClearDepth", "(IF)V", (void*)nScriptSetClearDepth },
|
||||
@@ -1397,7 +1294,6 @@ static JNINativeMethod methods[] = {
|
||||
{"nProgramFragmentStoreBlendFunc", "(II)V", (void*)nProgramFragmentStoreBlendFunc },
|
||||
{"nProgramFragmentStoreDither", "(Z)V", (void*)nProgramFragmentStoreDither },
|
||||
{"nProgramFragmentStoreCreate", "()I", (void*)nProgramFragmentStoreCreate },
|
||||
{"nProgramFragmentStoreDestroy", "(I)V", (void*)nProgramFragmentStoreDestroy },
|
||||
|
||||
{"nProgramFragmentBegin", "(II)V", (void*)nProgramFragmentBegin },
|
||||
{"nProgramFragmentBindTexture", "(III)V", (void*)nProgramFragmentBindTexture },
|
||||
@@ -1406,9 +1302,7 @@ static JNINativeMethod methods[] = {
|
||||
{"nProgramFragmentSetEnvMode", "(II)V", (void*)nProgramFragmentSetEnvMode },
|
||||
{"nProgramFragmentSetTexEnable", "(IZ)V", (void*)nProgramFragmentSetTexEnable },
|
||||
{"nProgramFragmentCreate", "()I", (void*)nProgramFragmentCreate },
|
||||
{"nProgramFragmentDestroy", "(I)V", (void*)nProgramFragmentDestroy },
|
||||
|
||||
{"nProgramVertexDestroy", "(I)V", (void*)nProgramVertexDestroy },
|
||||
{"nProgramVertexBindAllocation", "(II)V", (void*)nProgramVertexBindAllocation },
|
||||
{"nProgramVertexBegin", "(II)V", (void*)nProgramVertexBegin },
|
||||
{"nProgramVertexSetTextureMatrixEnable", "(Z)V", (void*)nProgramVertexSetTextureMatrixEnable },
|
||||
@@ -1419,7 +1313,6 @@ static JNINativeMethod methods[] = {
|
||||
{"nLightSetIsMono", "(Z)V", (void*)nLightSetIsMono },
|
||||
{"nLightSetIsLocal", "(Z)V", (void*)nLightSetIsLocal },
|
||||
{"nLightCreate", "()I", (void*)nLightCreate },
|
||||
{"nLightDestroy", "(I)V", (void*)nLightDestroy },
|
||||
{"nLightSetColor", "(IFFF)V", (void*)nLightSetColor },
|
||||
{"nLightSetPosition", "(IFFF)V", (void*)nLightSetPosition },
|
||||
|
||||
@@ -1428,12 +1321,10 @@ static JNINativeMethod methods[] = {
|
||||
{"nContextBindProgramFragment", "(I)V", (void*)nContextBindProgramFragment },
|
||||
{"nContextBindProgramVertex", "(I)V", (void*)nContextBindProgramVertex },
|
||||
|
||||
{"nSamplerDestroy", "(I)V", (void*)nSamplerDestroy },
|
||||
{"nSamplerBegin", "()V", (void*)nSamplerBegin },
|
||||
{"nSamplerSet", "(II)V", (void*)nSamplerSet },
|
||||
{"nSamplerCreate", "()I", (void*)nSamplerCreate },
|
||||
|
||||
{"nSimpleMeshDestroy", "(I)V", (void*)nSimpleMeshDestroy },
|
||||
{"nSimpleMeshCreate", "(II[II)I", (void*)nSimpleMeshCreate },
|
||||
{"nSimpleMeshBindVertex", "(III)V", (void*)nSimpleMeshBindVertex },
|
||||
{"nSimpleMeshBindIndex", "(II)V", (void*)nSimpleMeshBindIndex },
|
||||
|
||||
@@ -32,6 +32,10 @@ AssignName {
|
||||
param size_t len
|
||||
}
|
||||
|
||||
ObjDestroy {
|
||||
param void *obj
|
||||
}
|
||||
|
||||
ElementBegin {
|
||||
}
|
||||
|
||||
@@ -56,10 +60,6 @@ ElementGetPredefined {
|
||||
ret RsElement
|
||||
}
|
||||
|
||||
ElementDestroy {
|
||||
param RsElement ve
|
||||
}
|
||||
|
||||
TypeBegin {
|
||||
param RsElement type
|
||||
}
|
||||
@@ -73,10 +73,6 @@ TypeCreate {
|
||||
ret RsType
|
||||
}
|
||||
|
||||
TypeDestroy {
|
||||
param RsType p
|
||||
}
|
||||
|
||||
AllocationCreateTyped {
|
||||
param RsType type
|
||||
ret RsAllocation
|
||||
@@ -130,10 +126,6 @@ AllocationUploadToBufferObject {
|
||||
param RsAllocation alloc
|
||||
}
|
||||
|
||||
AllocationDestroy {
|
||||
param RsAllocation alloc
|
||||
}
|
||||
|
||||
|
||||
AllocationData {
|
||||
param RsAllocation va
|
||||
@@ -170,10 +162,6 @@ Adapter1DBindAllocation {
|
||||
param RsAllocation alloc
|
||||
}
|
||||
|
||||
Adapter1DDestroy {
|
||||
param RsAdapter1D adapter
|
||||
}
|
||||
|
||||
Adapter1DSetConstraint {
|
||||
param RsAdapter1D adapter
|
||||
param RsDimension dim
|
||||
@@ -201,10 +189,6 @@ Adapter2DBindAllocation {
|
||||
param RsAllocation alloc
|
||||
}
|
||||
|
||||
Adapter2DDestroy {
|
||||
param RsAdapter2D adapter
|
||||
}
|
||||
|
||||
Adapter2DSetConstraint {
|
||||
param RsAdapter2D adapter
|
||||
param RsDimension dim
|
||||
@@ -237,9 +221,6 @@ SamplerCreate {
|
||||
ret RsSampler
|
||||
}
|
||||
|
||||
SamplerDestroy {
|
||||
param RsSampler s
|
||||
}
|
||||
|
||||
TriangleMeshBegin {
|
||||
param RsElement vertex
|
||||
@@ -260,9 +241,6 @@ TriangleMeshCreate {
|
||||
ret RsTriangleMesh
|
||||
}
|
||||
|
||||
TriangleMeshDestroy {
|
||||
param RsTriangleMesh mesh
|
||||
}
|
||||
|
||||
TriangleMeshRender {
|
||||
param RsTriangleMesh vtm
|
||||
@@ -274,9 +252,6 @@ TriangleMeshRenderRange {
|
||||
param uint32_t count
|
||||
}
|
||||
|
||||
ScriptDestroy {
|
||||
param RsScript script
|
||||
}
|
||||
|
||||
ScriptBindAllocation {
|
||||
param RsScript vtm
|
||||
@@ -381,9 +356,6 @@ ProgramFragmentStoreCreate {
|
||||
ret RsProgramFragmentStore
|
||||
}
|
||||
|
||||
ProgramFragmentStoreDestroy {
|
||||
param RsProgramFragmentStore pfs
|
||||
}
|
||||
|
||||
|
||||
ProgramFragmentBegin {
|
||||
@@ -422,10 +394,6 @@ ProgramFragmentCreate {
|
||||
ret RsProgramFragment
|
||||
}
|
||||
|
||||
ProgramFragmentDestroy {
|
||||
param RsProgramFragment pf
|
||||
}
|
||||
|
||||
|
||||
ProgramVertexBegin {
|
||||
param RsElement in
|
||||
@@ -464,9 +432,6 @@ LightCreate {
|
||||
ret RsLight light
|
||||
}
|
||||
|
||||
LightDestroy {
|
||||
param RsLight light
|
||||
}
|
||||
|
||||
LightSetPosition {
|
||||
param RsLight light
|
||||
@@ -498,9 +463,6 @@ SimpleMeshCreate {
|
||||
param uint32_t primType
|
||||
}
|
||||
|
||||
SimpleMeshDestroy {
|
||||
param RsSimpleMesh mesh
|
||||
}
|
||||
|
||||
SimpleMeshBindIndex {
|
||||
param RsSimpleMesh mesh
|
||||
|
||||
@@ -76,12 +76,6 @@ RsAdapter1D rsi_Adapter1DCreate(Context *rsc)
|
||||
return a;
|
||||
}
|
||||
|
||||
void rsi_Adapter1DDestroy(Context *rsc, RsAdapter1D va)
|
||||
{
|
||||
Adapter1D * a = static_cast<Adapter1D *>(va);
|
||||
a->decRef();
|
||||
}
|
||||
|
||||
void rsi_Adapter1DBindAllocation(Context *rsc, RsAdapter1D va, RsAllocation valloc)
|
||||
{
|
||||
Adapter1D * a = static_cast<Adapter1D *>(va);
|
||||
@@ -195,12 +189,6 @@ RsAdapter2D rsi_Adapter2DCreate(Context *rsc)
|
||||
return a;
|
||||
}
|
||||
|
||||
void rsi_Adapter2DDestroy(Context *rsc, RsAdapter2D va)
|
||||
{
|
||||
Adapter2D * a = static_cast<Adapter2D *>(va);
|
||||
a->decRef();
|
||||
}
|
||||
|
||||
void rsi_Adapter2DBindAllocation(Context *rsc, RsAdapter2D va, RsAllocation valloc)
|
||||
{
|
||||
Adapter2D * a = static_cast<Adapter2D *>(va);
|
||||
|
||||
@@ -201,10 +201,6 @@ void rsi_AllocationUploadToBufferObject(Context *rsc, RsAllocation va)
|
||||
alloc->uploadToBufferObject();
|
||||
}
|
||||
|
||||
void rsi_AllocationDestroy(Context *rsc, RsAllocation)
|
||||
{
|
||||
}
|
||||
|
||||
static void mip565(const Adapter2D &out, const Adapter2D &in)
|
||||
{
|
||||
uint32_t w = out.getDimX();
|
||||
|
||||
@@ -395,6 +395,13 @@ void rsi_AssignName(Context *rsc, void * obj, const char *name, uint32_t len)
|
||||
rsc->assignName(ob, name, len);
|
||||
}
|
||||
|
||||
void rsi_ObjDestroy(Context *rsc, void *obj)
|
||||
{
|
||||
ObjectBase *ob = static_cast<ObjectBase *>(obj);
|
||||
rsc->removeName(ob);
|
||||
ob->decRef();
|
||||
}
|
||||
|
||||
void rsi_ContextSetDefineF(Context *rsc, const char* name, float value)
|
||||
{
|
||||
rsc->addInt32Define(name, value);
|
||||
|
||||
@@ -416,12 +416,6 @@ RsElement rsi_ElementCreate(Context *rsc)
|
||||
return se;
|
||||
}
|
||||
|
||||
void rsi_ElementDestroy(Context *rsc, RsElement vse)
|
||||
{
|
||||
Element * se = static_cast<Element *>(vse);
|
||||
se->decRef();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -82,7 +82,7 @@ void LightState::clear()
|
||||
|
||||
|
||||
////////////////////////////////////////////////////
|
||||
//
|
||||
//
|
||||
|
||||
namespace android {
|
||||
namespace renderscript {
|
||||
@@ -110,12 +110,6 @@ RsLight rsi_LightCreate(Context *rsc)
|
||||
return l;
|
||||
}
|
||||
|
||||
void rsi_LightDestroy(Context *rsc, RsLight vl)
|
||||
{
|
||||
Light *l = static_cast<Light *>(vl);
|
||||
l->decRef();
|
||||
}
|
||||
|
||||
void rsi_LightSetColor(Context *rsc, RsLight vl, float r, float g, float b)
|
||||
{
|
||||
Light *l = static_cast<Light *>(vl);
|
||||
|
||||
@@ -236,15 +236,6 @@ RsProgramFragment rsi_ProgramFragmentCreate(Context *rsc)
|
||||
return pf;
|
||||
}
|
||||
|
||||
void rsi_ProgramFragmentDestroy(Context *rsc, RsProgramFragment vpf)
|
||||
{
|
||||
ProgramFragment *pf = (ProgramFragment *)vpf;
|
||||
if (pf->getName()) {
|
||||
rsc->removeName(pf);
|
||||
}
|
||||
pf->decRef();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -261,17 +261,6 @@ void rsi_ProgramFragmentStoreDither(Context *rsc, bool enable)
|
||||
rsc->mStateFragmentStore.mPFS->setDitherEnable(enable);
|
||||
}
|
||||
|
||||
void rsi_ProgramFragmentStoreDestroy(Context *rsc, RsProgramFragmentStore vpfs)
|
||||
{
|
||||
ProgramFragmentStore *pfs = (ProgramFragmentStore *)vpfs;
|
||||
if (pfs->getName()) {
|
||||
rsc->removeName(pfs);
|
||||
}
|
||||
pfs->decRef();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -138,20 +138,13 @@ RsSampler rsi_SamplerCreate(Context *rsc)
|
||||
SamplerState * ss = &rsc->mStateSampler;
|
||||
|
||||
|
||||
Sampler * s = new Sampler(ss->mMagFilter,
|
||||
ss->mMinFilter,
|
||||
ss->mWrapS,
|
||||
Sampler * s = new Sampler(ss->mMagFilter,
|
||||
ss->mMinFilter,
|
||||
ss->mWrapS,
|
||||
ss->mWrapT,
|
||||
ss->mWrapR);
|
||||
return s;
|
||||
}
|
||||
|
||||
void rsi_SamplerDestroy(Context *rsc, RsSampler vs)
|
||||
{
|
||||
Sampler * s = static_cast<Sampler *>(vs);
|
||||
s->decRef();
|
||||
|
||||
}
|
||||
|
||||
|
||||
}}
|
||||
|
||||
@@ -37,12 +37,6 @@ namespace android {
|
||||
namespace renderscript {
|
||||
|
||||
|
||||
void rsi_ScriptDestroy(Context * rsc, RsScript vs)
|
||||
{
|
||||
Script *s = static_cast<Script *>(vs);
|
||||
s->decRef();
|
||||
}
|
||||
|
||||
void rsi_ScriptBindAllocation(Context * rsc, RsScript vs, RsAllocation va, uint32_t slot)
|
||||
{
|
||||
Script *s = static_cast<Script *>(vs);
|
||||
|
||||
@@ -135,12 +135,6 @@ void rsi_SimpleMeshBindPrimitive(Context *rsc, RsSimpleMesh mv, RsAllocation va)
|
||||
sm->mPrimitiveBuffer.set((Allocation *)va);
|
||||
}
|
||||
|
||||
void rsi_SimpleMeshDestroy(Context *rsc, RsSimpleMesh vtm)
|
||||
{
|
||||
SimpleMesh * tm = static_cast<SimpleMesh *>(vtm);
|
||||
tm->decRef();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -177,9 +177,16 @@ void Type::makeGLComponents()
|
||||
mGL.mColor.size = 3;
|
||||
break;
|
||||
case Component::ALPHA:
|
||||
rsAssert(mGL.mColor.size == 3);
|
||||
rsAssert(mGL.mColor.type == c->getGLType());
|
||||
mGL.mColor.size = 4;
|
||||
// Can be RGBA or A at this point
|
||||
if (mGL.mColor.size > 0) {
|
||||
rsAssert(mGL.mColor.size == 3);
|
||||
rsAssert(mGL.mColor.type == c->getGLType());
|
||||
mGL.mColor.size = 4;
|
||||
} else {
|
||||
mGL.mColor.size = 1;
|
||||
mGL.mColor.offset = mElement->getComponentOffsetBytes(ct);
|
||||
mGL.mColor.type = c->getGLType();
|
||||
}
|
||||
break;
|
||||
|
||||
case Component::NX:
|
||||
@@ -352,11 +359,6 @@ RsType rsi_TypeCreate(Context *rsc)
|
||||
return st;
|
||||
}
|
||||
|
||||
void rsi_TypeDestroy(Context *rsc, RsType vst)
|
||||
{
|
||||
Type * st = static_cast<Type *>(vst);
|
||||
st->decRef();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user