diff options
author | Android (Google) Code Review <android-gerrit@google.com> | 2009-09-24 20:50:39 -0400 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2009-09-24 20:50:39 -0400 |
commit | cc89ef3d6e9b1f9be657c9158ad04b8de104434c (patch) | |
tree | 45c82f24c81723288c6168ad837f121fc5663573 /graphics/java | |
parent | 0665ae22aa51183d6ff5fdd0abeee0344306e89d (diff) | |
parent | 65e7aa56f56097418d617663683544c25b3988ea (diff) | |
download | frameworks_base-cc89ef3d6e9b1f9be657c9158ad04b8de104434c.zip frameworks_base-cc89ef3d6e9b1f9be657c9158ad04b8de104434c.tar.gz frameworks_base-cc89ef3d6e9b1f9be657c9158ad04b8de104434c.tar.bz2 |
Merge change 26971 into eclair
* changes:
Implement pause/resume for the RS thread.
Diffstat (limited to 'graphics/java')
-rw-r--r-- | graphics/java/android/renderscript/RSSurfaceView.java | 11 | ||||
-rw-r--r-- | graphics/java/android/renderscript/RenderScript.java | 10 |
2 files changed, 19 insertions, 2 deletions
diff --git a/graphics/java/android/renderscript/RSSurfaceView.java b/graphics/java/android/renderscript/RSSurfaceView.java index 3d6acc9..b46a749 100644 --- a/graphics/java/android/renderscript/RSSurfaceView.java +++ b/graphics/java/android/renderscript/RSSurfaceView.java @@ -36,6 +36,7 @@ import android.view.SurfaceView; **/ public class RSSurfaceView extends SurfaceView implements SurfaceHolder.Callback { private SurfaceHolder mSurfaceHolder; + private RenderScript mRS; /** * Standard View constructor. In order to render something, you @@ -97,6 +98,9 @@ public class RSSurfaceView extends SurfaceView implements SurfaceHolder.Callback * Must not be called before a renderer has been set. */ public void onPause() { + if(mRS != null) { + mRS.pause(); + } Log.v(RenderScript.LOG_TAG, "onPause"); } @@ -108,6 +112,9 @@ public class RSSurfaceView extends SurfaceView implements SurfaceHolder.Callback * Must not be called before a renderer has been set. */ public void onResume() { + if(mRS != null) { + mRS.resume(); + } Log.v(RenderScript.LOG_TAG, "onResume"); } @@ -138,8 +145,8 @@ public class RSSurfaceView extends SurfaceView implements SurfaceHolder.Callback while ((sur == null) || (mSurfaceHolder == null)) { sur = getHolder().getSurface(); } - RenderScript rs = new RenderScript(sur, useDepth, forceSW); - return rs; + mRS = new RenderScript(sur, useDepth, forceSW); + return mRS; } public RenderScript createRenderScript(boolean useDepth) { diff --git a/graphics/java/android/renderscript/RenderScript.java b/graphics/java/android/renderscript/RenderScript.java index b7cd21b..f815f52 100644 --- a/graphics/java/android/renderscript/RenderScript.java +++ b/graphics/java/android/renderscript/RenderScript.java @@ -73,6 +73,8 @@ public class RenderScript { native void nContextBindProgramRaster(int pr); native void nContextAddDefineI32(String name, int value); native void nContextAddDefineF(String name, float value); + native void nContextPause(); + native void nContextResume(); native void nAssignName(int obj, byte[] name); native void nObjDestroy(int id); @@ -217,6 +219,14 @@ public class RenderScript { mDev = 0; } + void pause() { + nContextPause(); + } + + void resume() { + nContextResume(); + } + ////////////////////////////////////////////////////////////////////////////////// // File |