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

Unified Diff: gpu/command_buffer/build_gles2_cmd_buffer.py

Issue 10836185: Implement GL_EXT_debug_marker (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 4 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/build_gles2_cmd_buffer.py
diff --git a/gpu/command_buffer/build_gles2_cmd_buffer.py b/gpu/command_buffer/build_gles2_cmd_buffer.py
index 103431c5b834b6e03db243b7ecd9f8a4b0a46db6..d2b1fba1e949db6c9a1ed207714bc339913a7c8d 100755
--- a/gpu/command_buffer/build_gles2_cmd_buffer.py
+++ b/gpu/command_buffer/build_gles2_cmd_buffer.py
@@ -1714,6 +1714,21 @@ _FUNCTION_INFO = {
'needs_size': True,
'gl_test_func': 'DoBindUniformLocationCHROMIUM',
},
+ 'InsertEventMarkerEXT': {
+ 'type': 'GLcharN',
+ 'decoder_func': 'DoInsertEventMarkerEXT',
+ 'expectation': False,
+ },
+ 'PushGroupMarkerEXT': {
+ 'type': 'GLcharN',
+ 'decoder_func': 'DoPushGroupMarkerEXT',
+ 'expectation': False,
+ },
+ 'PopGroupMarkerEXT': {
+ 'decoder_func': 'DoPopGroupMarkerEXT',
+ 'expectation': False,
+ 'impl_func': False,
+ },
}
@@ -2227,7 +2242,7 @@ TEST_F(%(test_name)s, %(name)sInvalidArgs%(arg_index)d_%(value_index)d) {
if len(func.GetOriginalArgs()):
comma = " << "
file.Write(
- ' GPU_CLIENT_LOG("[" << this << "] gl%s("%s%s << ")");\n' %
+ ' GPU_CLIENT_LOG("[" << GetLogPrefix() << "] gl%s("%s%s << ")");\n' %
(func.original_name, comma, func.MakeLogArgString()))
def WriteClientGLReturnLog(self, func, file):
@@ -4276,6 +4291,49 @@ TEST_F(GLES2FormatTest, %(func_name)s) {
})
+class GLcharNHandler(CustomHandler):
+ """Handler for functions that pass a single string with an optional len."""
+
+ def __init__(self):
+ CustomHandler.__init__(self)
+
+ def InitFunction(self, func):
+ """Overrriden from TypeHandler."""
+ func.cmd_args = []
+ func.AddCmdArg(Argument('bucket_id', 'GLuint'))
+
+ def AddImmediateFunction(self, generator, func):
+ """Overrriden from TypeHandler."""
+ pass
+
+ def AddBucketFunction(self, generator, func):
+ """Overrriden from TypeHandler."""
+ pass
+
+ def WriteServiceImplementation(self, func, file):
+ """Overrriden from TypeHandler."""
+ file.Write("""error::Error GLES2DecoderImpl::Handle%(name)s(
+ uint32 immediate_data_size, const gles2::%(name)s& c) {
+ GLuint bucket_id = static_cast<GLuint>(c.%(bucket_id)s);
+ Bucket* bucket = GetBucket(bucket_id);
+ if (!bucket || bucket->size() == 0) {
+ return error::kInvalidArguments;
+ }
+ std::string str;
+ if (!bucket->GetAsString(&str)) {
+ return error::kInvalidArguments;
+ }
+ %(gl_func_name)s(0, str.c_str());
+ return error::kNoError;
+}
+
+""" % {
+ 'name': func.name,
+ 'gl_func_name': func.GetGLFunctionName(),
+ 'bucket_id': func.cmd_args[0].name,
+ })
+
+
class IsHandler(TypeHandler):
"""Handler for glIs____ type and glGetError functions."""
@@ -4444,7 +4502,8 @@ class STRnHandler(TypeHandler):
code_1 = """%(return_type)s %(func_name)s(%(args)s) {
GPU_CLIENT_SINGLE_THREAD_CHECK();
"""
- code_2 = """ GPU_CLIENT_LOG("[" << this << "] gl%(func_name)s" << "("
+ code_2 = """ GPU_CLIENT_LOG("[" << GetLogPrefix()
+ << "] gl%(func_name)s" << "("
<< %(arg0)s << ", "
<< %(arg1)s << ", "
<< static_cast<void*>(%(arg2)s) << ", "
@@ -5622,6 +5681,7 @@ class GLGenerator(object):
'GENn': GENnHandler(),
'GETn': GETnHandler(),
'GLchar': GLcharHandler(),
+ 'GLcharN': GLcharNHandler(),
'HandWritten': HandWrittenHandler(),
'Is': IsHandler(),
'Manual': ManualHandler(),
« no previous file with comments | « no previous file | gpu/command_buffer/client/gles2_c_lib_autogen.h » ('j') | gpu/command_buffer/client/gles2_implementation.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698