Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(135)

Unified Diff: gpu/command_buffer/client/share_group.h

Issue 846943002: Improve BindBufferBase/BindBufferRange and a few other commands. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: gpu/command_buffer/client/share_group.h
diff --git a/gpu/command_buffer/client/share_group.h b/gpu/command_buffer/client/share_group.h
index 09d960b02809f3c4dca2fd2f94d33e621a3fbb1e..c150004319042c8489ec4c550066815baf250876 100644
--- a/gpu/command_buffer/client/share_group.h
+++ b/gpu/command_buffer/client/share_group.h
@@ -20,6 +20,10 @@ class ProgramInfoManager;
typedef void (GLES2Implementation::*DeleteFn)(GLsizei n, const GLuint* ids);
typedef void (GLES2Implementation::*BindFn)(GLenum target, GLuint id);
+typedef void (GLES2Implementation::*BindIndexedFn)( \
+ GLenum target, GLuint index, GLuint id);
+typedef void (GLES2Implementation::*BindIndexedRangeFn)( \
+ GLenum target, GLuint index, GLuint id, GLintptr offset, GLsizeiptr size);
class ShareGroupContextData {
public:
@@ -61,6 +65,22 @@ class IdHandlerInterface {
GLenum target,
GLuint id,
BindFn bind_fn) = 0;
+ // This is for glBindBufferBase.
+ virtual bool MarkAsUsedForBind(
+ GLES2Implementation* gl_impl,
+ GLenum target,
+ GLuint index,
+ GLuint id,
+ BindIndexedFn bind_fn) = 0;
+ // This is for glBindBufferRange.
+ virtual bool MarkAsUsedForBind(
+ GLES2Implementation* gl_impl,
+ GLenum target,
+ GLuint index,
+ GLuint id,
+ GLintptr offset,
+ GLsizeiptr size,
+ BindIndexedRangeFn bind_fn) = 0;
// Called when a context in the share group is destructed.
virtual void FreeContext(GLES2Implementation* gl_impl) = 0;
« no previous file with comments | « gpu/command_buffer/client/gles2_implementation_impl_autogen.h ('k') | gpu/command_buffer/client/share_group.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698