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

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

Issue 659903002: Add subscribeUniform extension pipeline (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: V3 API Created 6 years, 1 month 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/gles2_implementation_impl_autogen.h
diff --git a/gpu/command_buffer/client/gles2_implementation_impl_autogen.h b/gpu/command_buffer/client/gles2_implementation_impl_autogen.h
index 32b134763ec186498bb4d463073150c124922db9..ab2adee01f7dd9cd1785f25ba3a3634e4b0c9b74 100644
--- a/gpu/command_buffer/client/gles2_implementation_impl_autogen.h
+++ b/gpu/command_buffer/client/gles2_implementation_impl_autogen.h
@@ -2024,6 +2024,120 @@ void GLES2Implementation::CopyTextureCHROMIUM(GLenum target,
CheckGLError();
}
+void GLES2Implementation::GenValuebuffersCHROMIUM(GLsizei n, GLuint* buffers) {
+ GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glGenValuebuffersCHROMIUM(" << n
+ << ", " << static_cast<const void*>(buffers) << ")");
+ if (n < 0) {
+ SetGLError(GL_INVALID_VALUE, "glGenValuebuffersCHROMIUM", "n < 0");
+ return;
+ }
+ GPU_CLIENT_SINGLE_THREAD_CHECK();
+ GetIdHandler(id_namespaces::kValuebuffers)->MakeIds(this, 0, n, buffers);
+ GenValuebuffersCHROMIUMHelper(n, buffers);
+ helper_->GenValuebuffersCHROMIUMImmediate(n, buffers);
+ if (share_group_->bind_generates_resource())
+ helper_->CommandBufferHelper::Flush();
+ GPU_CLIENT_LOG_CODE_BLOCK({
+ for (GLsizei i = 0; i < n; ++i) {
+ GPU_CLIENT_LOG(" " << i << ": " << buffers[i]);
+ }
+ });
+ CheckGLError();
+}
+
+void GLES2Implementation::DeleteValuebuffersCHROMIUM(
+ GLsizei n,
+ const GLuint* valuebuffers) {
+ GPU_CLIENT_SINGLE_THREAD_CHECK();
+ GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glDeleteValuebuffersCHROMIUM(" << n
+ << ", " << static_cast<const void*>(valuebuffers) << ")");
+ GPU_CLIENT_LOG_CODE_BLOCK({
+ for (GLsizei i = 0; i < n; ++i) {
+ GPU_CLIENT_LOG(" " << i << ": " << valuebuffers[i]);
+ }
+ });
+ GPU_CLIENT_DCHECK_CODE_BLOCK({
+ for (GLsizei i = 0; i < n; ++i) {
+ DCHECK(valuebuffers[i] != 0);
+ }
+ });
+ if (n < 0) {
+ SetGLError(GL_INVALID_VALUE, "glDeleteValuebuffersCHROMIUM", "n < 0");
+ return;
+ }
+ DeleteValuebuffersCHROMIUMHelper(n, valuebuffers);
+ CheckGLError();
+}
+
+GLboolean GLES2Implementation::IsValuebufferCHROMIUM(GLuint valuebuffer) {
+ GPU_CLIENT_SINGLE_THREAD_CHECK();
+ TRACE_EVENT0("gpu", "GLES2Implementation::IsValuebufferCHROMIUM");
+ GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glIsValuebufferCHROMIUM("
+ << valuebuffer << ")");
+ typedef cmds::IsValuebufferCHROMIUM::Result Result;
+ Result* result = GetResultAs<Result*>();
+ if (!result) {
+ return GL_FALSE;
+ }
+ *result = 0;
+ helper_->IsValuebufferCHROMIUM(valuebuffer, GetResultShmId(),
+ GetResultShmOffset());
+ WaitForCmd();
+ GLboolean result_value = *result != 0;
+ GPU_CLIENT_LOG("returned " << result_value);
+ CheckGLError();
+ return result_value;
+}
+
+void GLES2Implementation::BindValuebufferCHROMIUM(GLenum target,
+ GLuint valuebuffer) {
+ GPU_CLIENT_SINGLE_THREAD_CHECK();
+ GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glBindValuebufferCHROMIUM("
+ << GLES2Util::GetStringValueBufferTarget(target) << ", "
+ << valuebuffer << ")");
+ if (IsValuebufferReservedId(valuebuffer)) {
+ SetGLError(GL_INVALID_OPERATION, "BindValuebufferCHROMIUM",
+ "valuebuffer reserved id");
+ return;
+ }
+ if (BindValuebufferCHROMIUMHelper(target, valuebuffer)) {
+ helper_->BindValuebufferCHROMIUM(target, valuebuffer);
+ }
+ CheckGLError();
+}
+
+void GLES2Implementation::SubscribeValueCHROMIUM(GLenum target,
+ GLenum subscription) {
+ GPU_CLIENT_SINGLE_THREAD_CHECK();
+ GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glSubscribeValueCHROMIUM("
+ << GLES2Util::GetStringValueBufferTarget(target) << ", "
+ << GLES2Util::GetStringSubscriptionTarget(subscription)
+ << ")");
+ helper_->SubscribeValueCHROMIUM(target, subscription);
+ CheckGLError();
+}
+
+void GLES2Implementation::PopulateSubscribedValuesCHROMIUM(GLenum target) {
+ GPU_CLIENT_SINGLE_THREAD_CHECK();
+ GPU_CLIENT_LOG("[" << GetLogPrefix()
+ << "] glPopulateSubscribedValuesCHROMIUM("
+ << GLES2Util::GetStringValueBufferTarget(target) << ")");
+ helper_->PopulateSubscribedValuesCHROMIUM(target);
+ CheckGLError();
+}
+
+void GLES2Implementation::UniformValuebufferCHROMIUM(GLint location,
+ GLenum target,
+ GLenum subscription) {
+ GPU_CLIENT_SINGLE_THREAD_CHECK();
+ GPU_CLIENT_LOG(
+ "[" << GetLogPrefix() << "] glUniformValuebufferCHROMIUM(" << location
+ << ", " << GLES2Util::GetStringValueBufferTarget(target) << ", "
+ << GLES2Util::GetStringSubscriptionTarget(subscription) << ")");
+ helper_->UniformValuebufferCHROMIUM(location, target, subscription);
+ CheckGLError();
+}
+
void GLES2Implementation::BindTexImage2DCHROMIUM(GLenum target, GLint imageId) {
GPU_CLIENT_SINGLE_THREAD_CHECK();
GPU_CLIENT_LOG("[" << GetLogPrefix() << "] glBindTexImage2DCHROMIUM("

Powered by Google App Engine
This is Rietveld 408576698