summaryrefslogtreecommitdiffstats
path: root/gpu/GLES2
diff options
context:
space:
mode:
authorhubbe@chromium.org <hubbe@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-02 01:16:10 +0000
committerhubbe@chromium.org <hubbe@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-02 01:16:10 +0000
commitde43f08cb12255fd51a270258c52148b2d12e781 (patch)
tree39266a6059573f9da090beba622b9507fce49c2f /gpu/GLES2
parent3111489137ada10107ce254be6d1277ec4e16817 (diff)
downloadchromium_src-de43f08cb12255fd51a270258c52148b2d12e781.zip
chromium_src-de43f08cb12255fd51a270258c52148b2d12e781.tar.gz
chromium_src-de43f08cb12255fd51a270258c52148b2d12e781.tar.bz2
Implement client side PBOs for glReadPixel
Use PBOs in gl_helper swizzle bytes on gpu flip vertically on gpu remove gl_helper_thread Implements GLHelper::CropScaleReadbackAndCleanTexture() to be non-blocking in the client by using shared memory combined with a query (not requiring actual GL PBO support, which would not be available on Android). Review URL: https://chromiumcodereview.appspot.com/12892005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191737 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu/GLES2')
-rw-r--r--gpu/GLES2/gl2extchromium.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/gpu/GLES2/gl2extchromium.h b/gpu/GLES2/gl2extchromium.h
index dcb355a..4218406 100644
--- a/gpu/GLES2/gl2extchromium.h
+++ b/gpu/GLES2/gl2extchromium.h
@@ -70,7 +70,9 @@ typedef void (GL_APIENTRYP PFNGLCONSUMETEXTURECHROMIUMPROC) (
#define GL_CHROMIUM_pixel_transfer_buffer_object 1
#ifndef GL_PIXEL_UNPACK_TRANSFER_BUFFER_CHROMIUM
+// TODO(reveman): Get official numbers for this constants.
#define GL_PIXEL_UNPACK_TRANSFER_BUFFER_CHROMIUM 0x78EC
+#define GL_PIXEL_PACK_TRANSFER_BUFFER_CHROMIUM 0x78ED
#ifdef GL_GLEXT_PROTOTYPES
GL_APICALL void* GL_APIENTRY glMapBufferCHROMIUM(GLuint target,GLenum access);
@@ -82,7 +84,13 @@ typedef GLboolean (GL_APIENTRY PFNGLUNMAPBUFFERCHROMIUM) (GLuint target);
#endif /* GL_CHROMIUM_pixel_transfer_buffer_object */
#ifndef GL_PIXEL_UNPACK_TRANSFER_BUFFER_BINDING_CHROMIUM
+// TODO(reveman): Get official numbers for this constants.
#define GL_PIXEL_UNPACK_TRANSFER_BUFFER_BINDING_CHROMIUM 0x78EF
+#define GL_PIXEL_PACK_TRANSFER_BUFFER_BINDING_CHROMIUM 0x78EE
+#endif
+
+#ifndef GL_STREAM_READ
+#define GL_STREAM_READ 0x88E1
#endif
#endif /* GL_CHROMIUM_pixel_transfer_buffer_object */
@@ -576,4 +584,3 @@ typedef void (GL_APIENTRYP PFNGLWAITSYNCPOINTCHROMIUMPROC) (GLuint sync_point);
#endif
#endif // GPU_GLES2_GL2EXTCHROMIUM_H_
-