summaryrefslogtreecommitdiffstats
path: root/graphics/java
diff options
context:
space:
mode:
authorJason Sams <rjsams@android.com>2009-08-04 17:58:23 -0700
committerJason Sams <rjsams@android.com>2009-08-04 17:58:23 -0700
commit0835d42be9b215f845e30db03211c86670cfa12a (patch)
treecde00723e8788f56f00c69ca334f88e988146625 /graphics/java
parent22534176fb5c1257130ef4ee589739ca42766a32 (diff)
downloadframeworks_base-0835d42be9b215f845e30db03211c86670cfa12a.zip
frameworks_base-0835d42be9b215f845e30db03211c86670cfa12a.tar.gz
frameworks_base-0835d42be9b215f845e30db03211c86670cfa12a.tar.bz2
Seperate Light and Sampler from RenderScript.java
Diffstat (limited to 'graphics/java')
-rw-r--r--graphics/java/android/renderscript/Light.java87
-rw-r--r--graphics/java/android/renderscript/ProgramFragment.java2
-rw-r--r--graphics/java/android/renderscript/RenderScript.java103
-rw-r--r--graphics/java/android/renderscript/Sampler.java113
4 files changed, 201 insertions, 104 deletions
diff --git a/graphics/java/android/renderscript/Light.java b/graphics/java/android/renderscript/Light.java
new file mode 100644
index 0000000..c9196aa
--- /dev/null
+++ b/graphics/java/android/renderscript/Light.java
@@ -0,0 +1,87 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.renderscript;
+
+
+import java.io.IOException;
+import java.io.InputStream;
+
+import android.content.res.Resources;
+import android.os.Bundle;
+import android.util.Config;
+import android.util.Log;
+
+import android.graphics.Bitmap;
+import android.graphics.BitmapFactory;
+
+/**
+ * @hide
+ *
+ **/
+public class Light extends BaseObj {
+ Light(int id, RenderScript rs) {
+ super(rs);
+ 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);
+ }
+
+ public void setPosition(float x, float y, float z) {
+ mRS.nLightSetPosition(mID, x, y, z);
+ }
+
+ public static class Builder {
+ RenderScript mRS;
+ boolean mIsMono;
+ boolean mIsLocal;
+
+ public Builder(RenderScript rs) {
+ mRS = rs;
+ mIsMono = false;
+ mIsLocal = false;
+ }
+
+ public void lightSetIsMono(boolean isMono) {
+ mIsMono = isMono;
+ }
+
+ public void lightSetIsLocal(boolean isLocal) {
+ mIsLocal = isLocal;
+ }
+
+ static synchronized Light internalCreate(RenderScript rs, Builder b) {
+ rs.nSamplerBegin();
+ rs.nLightSetIsMono(b.mIsMono);
+ rs.nLightSetIsLocal(b.mIsLocal);
+ int id = rs.nLightCreate();
+ return new Light(id, rs);
+ }
+
+ public Light create() {
+ return internalCreate(mRS, this);
+ }
+ }
+
+}
+
diff --git a/graphics/java/android/renderscript/ProgramFragment.java b/graphics/java/android/renderscript/ProgramFragment.java
index d98fe03..005fdf6 100644
--- a/graphics/java/android/renderscript/ProgramFragment.java
+++ b/graphics/java/android/renderscript/ProgramFragment.java
@@ -52,7 +52,7 @@ public class ProgramFragment extends BaseObj {
mRS.nProgramFragmentBindTexture(mID, slot, va.mID);
}
- public void bindSampler(RenderScript.Sampler vs, int slot) {
+ public void bindSampler(Sampler vs, int slot) {
mRS.nProgramFragmentBindSampler(mID, slot, vs.mID);
}
diff --git a/graphics/java/android/renderscript/RenderScript.java b/graphics/java/android/renderscript/RenderScript.java
index 50a4494..cae80e9 100644
--- a/graphics/java/android/renderscript/RenderScript.java
+++ b/graphics/java/android/renderscript/RenderScript.java
@@ -201,35 +201,6 @@ public class RenderScript {
}
}
- //////////////////////////////////////////////////////////////////////////////////
- // Element
-
-
- public enum SamplerParam {
- FILTER_MIN (0),
- FILTER_MAG (1),
- WRAP_MODE_S (2),
- WRAP_MODE_T (3),
- WRAP_MODE_R (4);
-
- int mID;
- SamplerParam(int id) {
- mID = id;
- }
- }
-
- public enum SamplerValue {
- NEAREST (0),
- LINEAR (1),
- LINEAR_MIP_LINEAR (2),
- WRAP (3),
- CLAMP (4);
-
- int mID;
- SamplerValue(int id) {
- mID = id;
- }
- }
//////////////////////////////////////////////////////////////////////////////////
// Triangle Mesh
@@ -330,80 +301,6 @@ public class RenderScript {
//////////////////////////////////////////////////////////////////////////////////
- // ProgramFragmentStore
-
- //////////////////////////////////////////////////////////////////////////////////
- // ProgramFragment
-
- //////////////////////////////////////////////////////////////////////////////////
- // Sampler
-
- public class Sampler extends BaseObj {
- Sampler(int id) {
- super(RenderScript.this);
- mID = id;
- }
-
- public void destroy() {
- nSamplerDestroy(mID);
- mID = 0;
- }
- }
-
- public void samplerBegin() {
- nSamplerBegin();
- }
-
- public void samplerSet(SamplerParam p, SamplerValue v) {
- nSamplerSet(p.mID, v.mID);
- }
-
- public Sampler samplerCreate() {
- int id = nSamplerCreate();
- return new Sampler(id);
- }
-
- //////////////////////////////////////////////////////////////////////////////////
- // Light
-
- public class Light extends BaseObj {
- Light(int id) {
- super(RenderScript.this);
- mID = id;
- }
-
- public void destroy() {
- nLightDestroy(mID);
- mID = 0;
- }
-
- public void setColor(float r, float g, float b) {
- nLightSetColor(mID, r, g, b);
- }
-
- public void setPosition(float x, float y, float z) {
- nLightSetPosition(mID, x, y, z);
- }
- }
-
- public void lightBegin() {
- nLightBegin();
- }
-
- public void lightSetIsMono(boolean isMono) {
- nLightSetIsMono(isMono);
- }
-
- public void lightSetIsLocal(boolean isLocal) {
- nLightSetIsLocal(isLocal);
- }
-
- public Light lightCreate() {
- int id = nLightCreate();
- return new Light(id);
- }
-
- //////////////////////////////////////////////////////////////////////////////////
// File
public class File extends BaseObj {
diff --git a/graphics/java/android/renderscript/Sampler.java b/graphics/java/android/renderscript/Sampler.java
new file mode 100644
index 0000000..dfeac81
--- /dev/null
+++ b/graphics/java/android/renderscript/Sampler.java
@@ -0,0 +1,113 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.renderscript;
+
+
+import java.io.IOException;
+import java.io.InputStream;
+
+import android.content.res.Resources;
+import android.os.Bundle;
+import android.util.Config;
+import android.util.Log;
+
+import android.graphics.Bitmap;
+import android.graphics.BitmapFactory;
+
+/**
+ * @hide
+ *
+ **/
+public class Sampler extends BaseObj {
+ public enum Value {
+ NEAREST (0),
+ LINEAR (1),
+ LINEAR_MIP_LINEAR (2),
+ WRAP (3),
+ CLAMP (4);
+
+ int mID;
+ Value(int id) {
+ mID = id;
+ }
+ }
+
+ Sampler(int id, RenderScript rs) {
+ super(rs);
+ mID = id;
+ }
+
+ public void destroy() {
+ mRS.nSamplerDestroy(mID);
+ mID = 0;
+ }
+
+ public static class Builder {
+ RenderScript mRS;
+ Value mMin;
+ Value mMag;
+ Value mWrapS;
+ Value mWrapT;
+ Value mWrapR;
+
+ public Builder(RenderScript rs) {
+ mRS = rs;
+ mMin = Value.NEAREST;
+ mMag = Value.NEAREST;
+ mWrapS = Value.WRAP;
+ mWrapT = Value.WRAP;
+ mWrapR = Value.WRAP;
+ }
+
+ public void setMin(Value v) {
+ mMin = v;
+ }
+
+ public void setMag(Value v) {
+ mMag = v;
+ }
+
+ public void setWrapS(Value v) {
+ mWrapS = v;
+ }
+
+ public void setWrapT(Value v) {
+ mWrapT = v;
+ }
+
+ public void setWrapR(Value v) {
+ mWrapR = v;
+ }
+
+ static synchronized Sampler internalCreate(RenderScript rs, Builder b) {
+ rs.nSamplerBegin();
+ rs.nSamplerSet(0, b.mMin.mID);
+ rs.nSamplerSet(1, b.mMag.mID);
+ rs.nSamplerSet(2, b.mWrapS.mID);
+ rs.nSamplerSet(3, b.mWrapT.mID);
+ rs.nSamplerSet(4, b.mWrapR.mID);
+ int id = rs.nSamplerCreate();
+ return new Sampler(id, rs);
+ }
+
+ public Sampler create() {
+ return internalCreate(mRS, this);
+ }
+ }
+
+}
+