summaryrefslogtreecommitdiffstats
path: root/gpu/command_buffer/service/gles2_cmd_decoder.h
diff options
context:
space:
mode:
authorsievers@chromium.org <sievers@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-28 22:04:42 +0000
committersievers@chromium.org <sievers@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-28 22:04:42 +0000
commitb0af4f572f1e082a876a1e87eb2933c5876e0ba0 (patch)
treedfa113ede64291cf4fd1604d992e64fb901fef79 /gpu/command_buffer/service/gles2_cmd_decoder.h
parenta09ef7e5fade0f4f62157aae616f3929b8cbba53 (diff)
downloadchromium_src-b0af4f572f1e082a876a1e87eb2933c5876e0ba0.zip
chromium_src-b0af4f572f1e082a876a1e87eb2933c5876e0ba0.tar.gz
chromium_src-b0af4f572f1e082a876a1e87eb2933c5876e0ba0.tar.bz2
External stream texture support.
This adds a GL_CHROMIUM_stream_texture extension with an abstract interface that can be used to allow a consumer to render from a stream of textures being produced externally. It adds the following functionality: * GLuint glCreateStreamTextureCHROMIUM(GLuint texture) This API takes a texture id and creates a StreamTexture object associated with the texture in the GPU process that can be implemented in a platform-specific way. The returned handle is supposed to identify the stream endpoint. Connecting this to a producer is outside the scope of this change. * GLvoid glDestroyStreamTextureCHROMIUM(GLuint texture) Deletes the StreamTexture object associated with the texture and marks the texture as not special anymore. * BindTexture() will invoke method StreamTexture::Update() if the target is GL_TEXTURE_EXTERNAL_OES and the texture is marked as 'stream texture'. TEST=added unit tests Review URL: http://codereview.chromium.org/7754033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103191 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu/command_buffer/service/gles2_cmd_decoder.h')
-rw-r--r--gpu/command_buffer/service/gles2_cmd_decoder.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder.h b/gpu/command_buffer/service/gles2_cmd_decoder.h
index 00fff76..118c27d 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder.h
+++ b/gpu/command_buffer/service/gles2_cmd_decoder.h
@@ -22,6 +22,7 @@ class GLSurface;
namespace gpu {
+class StreamTextureManager;
class SurfaceManager;
namespace gles2 {
@@ -111,6 +112,8 @@ class GLES2Decoder : public CommonDecoder {
virtual void SetSwapBuffersCallback(Callback0::Type* callback) = 0;
#endif
+ virtual void SetStreamTextureManager(StreamTextureManager* manager) = 0;
+
// Get the service texture ID corresponding to a client texture ID.
// If no such record is found then return false.
virtual bool GetServiceTextureId(uint32 client_texture_id,