public abstract class GLCapture
extends java.lang.Object
Bitmap. The capture will happen
 asynchronously on the GL thread; delivery of the captured pixels will occur
 on a separate user thread.
 
 This class takes care of the setup and teardown of the offscreen textures and buffer objects; subclasses are responsible for implementing the rendering code to produce the scene to be captured.
| Modifier and Type | Class and Description | 
|---|---|
| static interface  | GLCapture.CaptureCallbackCallback for an offscreen capture. | 
| Modifier and Type | Field and Description | 
|---|---|
| protected int | height | 
| protected android.opengl.GLSurfaceView | view | 
| protected int | width | 
| protected int | x | 
| protected int | y | 
| Constructor and Description | 
|---|
| GLCapture(android.opengl.GLSurfaceView view)Creates a new instance. | 
| GLCapture(android.opengl.GLSurfaceView view,
         int x,
         int y,
         int width,
         int height)Creates a new instance. | 
| Modifier and Type | Method and Description | 
|---|---|
| void | capture(GLCapture.CaptureCallback callback)Performs an asynchronous capture. | 
| static void | compress(android.graphics.Bitmap bitmap,
        int quality,
        android.graphics.Bitmap.CompressFormat compressFmt,
        java.io.File target,
        boolean recycleOnExit)Compresses a bitmap to a target file. | 
| protected abstract void | draw()Subclasses should override to perform the GL rendering they want captured
 for the callback. | 
| protected void | readPixels(GLCapture.CaptureCallback callback) | 
protected final android.opengl.GLSurfaceView view
protected final int x
protected final int y
protected final int width
protected final int height
public GLCapture(android.opengl.GLSurfaceView view)
GLSurfaceView.view - A GLSurfaceView instance. The instance will be used
              to queue the offscreen capture on the GL context thread.public GLCapture(android.opengl.GLSurfaceView view,
                 int x,
                 int y,
                 int width,
                 int height)
view - A GLSurfaceView instance. The instance will be
                  used to queue the offscreen capture on the GL context
                  thread.x - The x-coordinate of the region of the frame buffer to
                  capturey - The y-coordinate of the region of the frame buffer to
                  capturewidth - The width of the region of the frame buffer to captureheight - The height of the region of the frame buffer to captureprotected abstract void draw()
public final void capture(GLCapture.CaptureCallback callback)
GLCapture.CaptureCallback.onCaptureStarted(GLCapture) when
 the capture begins and one of
 GLCapture.CaptureCallback.onCaptureComplete(GLCapture, Bitmap) or
 GLCapture.CaptureCallback.onCaptureError(GLCapture, Throwable) when the
 capture has either completed successfully or terminated due to an error.callback - The callback for the capture. May not be
                  null.protected void readPixels(GLCapture.CaptureCallback callback)
public static void compress(android.graphics.Bitmap bitmap,
                            int quality,
                            android.graphics.Bitmap.CompressFormat compressFmt,
                            java.io.File target,
                            boolean recycleOnExit)
                     throws java.io.IOException
bitmap - A bitmapquality - The quality, 0 for lowest quality,
                      100 for best qualitycompressFmt - The compression formattarget - The target filerecycleOnExit - true to recycle the bitmap before the
                      method returns, false otherwise.java.io.IOException - if there is an issue writing the bitmap to a file.