summaryrefslogtreecommitdiffstats
path: root/graphics/java
diff options
context:
space:
mode:
authorJason Sams <rjsams@android.com>2009-09-03 15:43:13 -0700
committerJason Sams <rjsams@android.com>2009-09-03 15:43:13 -0700
commit2525a815220652b37e2e390fe8c62394a6d0e574 (patch)
treebe26549baa696d9beb89c8188ab16c13f26a5548 /graphics/java
parent1c1ffa0cab8b56274970736d7f3b8c00c01c3d2b (diff)
downloadframeworks_base-2525a815220652b37e2e390fe8c62394a6d0e574.zip
frameworks_base-2525a815220652b37e2e390fe8c62394a6d0e574.tar.gz
frameworks_base-2525a815220652b37e2e390fe8c62394a6d0e574.tar.bz2
Improve structure support using symbol lookup of named structures in scripts to allow them to appear as just pointers to structs.
Diffstat (limited to 'graphics/java')
-rw-r--r--graphics/java/android/renderscript/Allocation.java5
-rw-r--r--graphics/java/android/renderscript/Element.java46
-rw-r--r--graphics/java/android/renderscript/RenderScript.java2
-rw-r--r--graphics/java/android/renderscript/SimpleMesh.java7
4 files changed, 35 insertions, 25 deletions
diff --git a/graphics/java/android/renderscript/Allocation.java b/graphics/java/android/renderscript/Allocation.java
index 536f71c..e6cb395 100644
--- a/graphics/java/android/renderscript/Allocation.java
+++ b/graphics/java/android/renderscript/Allocation.java
@@ -110,9 +110,12 @@ public class Allocation extends BaseObj {
}
public void data(Object o) {
- mRS.nAllocationDataFromObject(mID, mType, o);
+ mRS.nAllocationSubDataFromObject(mID, mType, 0, o);
}
+ public void subData(int offset, Object o) {
+ mRS.nAllocationSubDataFromObject(mID, mType, offset, o);
+ }
public class Adapter1D extends BaseObj {
Adapter1D(int id, RenderScript rs) {
diff --git a/graphics/java/android/renderscript/Element.java b/graphics/java/android/renderscript/Element.java
index 0ca112c..0b7e667 100644
--- a/graphics/java/android/renderscript/Element.java
+++ b/graphics/java/android/renderscript/Element.java
@@ -244,8 +244,8 @@ public class Element extends BaseObj {
}
public Builder addFloatXY(String prefix) {
- add(DataType.FLOAT, DataKind.X, false, 32, prefix + "X");
- add(DataType.FLOAT, DataKind.Y, false, 32, prefix + "Y");
+ add(DataType.FLOAT, DataKind.X, false, 32, prefix + "x");
+ add(DataType.FLOAT, DataKind.Y, false, 32, prefix + "y");
return this;
}
@@ -257,9 +257,9 @@ public class Element extends BaseObj {
}
public Builder addFloatXYZ(String prefix) {
- add(DataType.FLOAT, DataKind.X, false, 32, prefix + "X");
- add(DataType.FLOAT, DataKind.Y, false, 32, prefix + "Y");
- add(DataType.FLOAT, DataKind.Z, false, 32, prefix + "Z");
+ add(DataType.FLOAT, DataKind.X, false, 32, prefix + "x");
+ add(DataType.FLOAT, DataKind.Y, false, 32, prefix + "y");
+ add(DataType.FLOAT, DataKind.Z, false, 32, prefix + "z");
return this;
}
@@ -270,8 +270,8 @@ public class Element extends BaseObj {
}
public Builder addFloatST(String prefix) {
- add(DataType.FLOAT, DataKind.S, false, 32, prefix + "S");
- add(DataType.FLOAT, DataKind.T, false, 32, prefix + "T");
+ add(DataType.FLOAT, DataKind.S, false, 32, prefix + "s");
+ add(DataType.FLOAT, DataKind.T, false, 32, prefix + "t");
return this;
}
@@ -283,9 +283,9 @@ public class Element extends BaseObj {
}
public Builder addFloatNorm(String prefix) {
- add(DataType.FLOAT, DataKind.NX, false, 32, prefix + "NX");
- add(DataType.FLOAT, DataKind.NY, false, 32, prefix + "NY");
- add(DataType.FLOAT, DataKind.NZ, false, 32, prefix + "NZ");
+ add(DataType.FLOAT, DataKind.NX, false, 32, prefix + "nx");
+ add(DataType.FLOAT, DataKind.NY, false, 32, prefix + "ny");
+ add(DataType.FLOAT, DataKind.NZ, false, 32, prefix + "nz");
return this;
}
@@ -294,8 +294,8 @@ public class Element extends BaseObj {
return this;
}
- public Builder addFloatPointSize(String name) {
- add(DataType.FLOAT, DataKind.POINT_SIZE, false, 32, name);
+ public Builder addFloatPointSize(String prefix) {
+ add(DataType.FLOAT, DataKind.POINT_SIZE, false, 32, prefix + "pointSize");
return this;
}
@@ -307,9 +307,9 @@ public class Element extends BaseObj {
}
public Builder addFloatRGB(String prefix) {
- add(DataType.FLOAT, DataKind.RED, false, 32, prefix + "R");
- add(DataType.FLOAT, DataKind.GREEN, false, 32, prefix + "G");
- add(DataType.FLOAT, DataKind.BLUE, false, 32, prefix + "B");
+ add(DataType.FLOAT, DataKind.RED, false, 32, prefix + "r");
+ add(DataType.FLOAT, DataKind.GREEN, false, 32, prefix + "g");
+ add(DataType.FLOAT, DataKind.BLUE, false, 32, prefix + "b");
return this;
}
@@ -322,10 +322,10 @@ public class Element extends BaseObj {
}
public Builder addFloatRGBA(String prefix) {
- add(DataType.FLOAT, DataKind.RED, false, 32, prefix + "R");
- add(DataType.FLOAT, DataKind.GREEN, false, 32, prefix + "G");
- add(DataType.FLOAT, DataKind.BLUE, false, 32, prefix + "B");
- add(DataType.FLOAT, DataKind.ALPHA, false, 32, prefix + "A");
+ add(DataType.FLOAT, DataKind.RED, false, 32, prefix + "r");
+ add(DataType.FLOAT, DataKind.GREEN, false, 32, prefix + "g");
+ add(DataType.FLOAT, DataKind.BLUE, false, 32, prefix + "b");
+ add(DataType.FLOAT, DataKind.ALPHA, false, 32, prefix + "a");
return this;
}
@@ -338,10 +338,10 @@ public class Element extends BaseObj {
}
public Builder addUNorm8RGBA(String prefix) {
- add(DataType.UNSIGNED, DataKind.RED, true, 8, prefix + "R");
- add(DataType.UNSIGNED, DataKind.GREEN, true, 8, prefix + "G");
- add(DataType.UNSIGNED, DataKind.BLUE, true, 8, prefix + "B");
- add(DataType.UNSIGNED, DataKind.ALPHA, true, 8, prefix + "A");
+ add(DataType.UNSIGNED, DataKind.RED, true, 8, prefix + "r");
+ add(DataType.UNSIGNED, DataKind.GREEN, true, 8, prefix + "g");
+ add(DataType.UNSIGNED, DataKind.BLUE, true, 8, prefix + "b");
+ add(DataType.UNSIGNED, DataKind.ALPHA, true, 8, prefix + "a");
return this;
}
diff --git a/graphics/java/android/renderscript/RenderScript.java b/graphics/java/android/renderscript/RenderScript.java
index 0f188f6..bd345e5 100644
--- a/graphics/java/android/renderscript/RenderScript.java
+++ b/graphics/java/android/renderscript/RenderScript.java
@@ -106,7 +106,7 @@ public class RenderScript {
native void nAllocationSubData2D(int id, int xoff, int yoff, int w, int h, float[] d, int sizeBytes);
native void nAllocationRead(int id, int[] d);
native void nAllocationRead(int id, float[] d);
- native void nAllocationDataFromObject(int id, Type t, Object o);
+ native void nAllocationSubDataFromObject(int id, Type t, int offset, Object o);
native void nTriangleMeshBegin(int vertex, int index);
native void nTriangleMeshAddVertex_XY (float x, float y);
diff --git a/graphics/java/android/renderscript/SimpleMesh.java b/graphics/java/android/renderscript/SimpleMesh.java
index e66fb8a..5d87654 100644
--- a/graphics/java/android/renderscript/SimpleMesh.java
+++ b/graphics/java/android/renderscript/SimpleMesh.java
@@ -50,6 +50,13 @@ public class SimpleMesh extends BaseObj {
return Allocation.createTyped(mRS, mIndexType);
}
+ public Type getVertexType(int slot) {
+ return mVertexTypes[slot];
+ }
+
+ public Type getIndexType() {
+ return mIndexType;
+ }
public static class Builder {
RenderScript mRS;