From cf701aa9fe3067f18569320d9a70eac25aaf7b20 Mon Sep 17 00:00:00 2001 From: Mathias Agopian Date: Sat, 28 Jan 2012 18:47:13 -0800 Subject: [PATCH] remove unused code Change-Id: If900fcc50f9ffc424e270cb6063b16a2d7bc04d3 --- opengl/libs/GLES2_dbg/generate_api_cpp.py | 219 -- opengl/libs/GLES2_dbg/generate_caller_cpp.py | 199 -- opengl/libs/GLES2_dbg/generate_debug_in.py | 80 - .../GLES2_dbg/generate_debugger_message_proto.py | 155 - opengl/libs/GLES2_dbg/gl2_api_annotated.in | 426 --- opengl/libs/GLES2_dbg/src/api.cpp | 3540 -------------------- opengl/libs/GLES2_dbg/src/api.h | 58 - opengl/libs/GLES2_dbg/src/caller.cpp | 778 ----- opengl/libs/GLES2_dbg/src/caller.h | 330 -- opengl/libs/GLES2_dbg/src/dbgcontext.cpp | 427 --- opengl/libs/GLES2_dbg/src/debugger_message.pb.cpp | 1455 -------- opengl/libs/GLES2_dbg/src/debugger_message.pb.h | 1187 ------- opengl/libs/GLES2_dbg/src/egl.cpp | 54 - opengl/libs/GLES2_dbg/src/header.h | 178 - opengl/libs/GLES2_dbg/src/server.cpp | 312 -- opengl/libs/GLES2_dbg/src/vertex.cpp | 214 -- opengl/libs/GLES2_dbg/test/Android.mk | 37 - opengl/libs/GLES2_dbg/test/test_main.cpp | 234 -- opengl/libs/GLES2_dbg/test/test_server.cpp | 245 -- opengl/libs/GLES2_dbg/test/test_socket.cpp | 468 --- 20 files changed, 10596 deletions(-) delete mode 100755 opengl/libs/GLES2_dbg/generate_api_cpp.py delete mode 100755 opengl/libs/GLES2_dbg/generate_caller_cpp.py delete mode 100755 opengl/libs/GLES2_dbg/generate_debug_in.py delete mode 100755 opengl/libs/GLES2_dbg/generate_debugger_message_proto.py delete mode 100644 opengl/libs/GLES2_dbg/gl2_api_annotated.in delete mode 100644 opengl/libs/GLES2_dbg/src/api.cpp delete mode 100644 opengl/libs/GLES2_dbg/src/api.h delete mode 100644 opengl/libs/GLES2_dbg/src/caller.cpp delete mode 100644 opengl/libs/GLES2_dbg/src/caller.h delete mode 100644 opengl/libs/GLES2_dbg/src/dbgcontext.cpp delete mode 100644 opengl/libs/GLES2_dbg/src/debugger_message.pb.cpp delete mode 100644 opengl/libs/GLES2_dbg/src/debugger_message.pb.h delete mode 100644 opengl/libs/GLES2_dbg/src/egl.cpp delete mode 100644 opengl/libs/GLES2_dbg/src/header.h delete mode 100644 opengl/libs/GLES2_dbg/src/server.cpp delete mode 100644 opengl/libs/GLES2_dbg/src/vertex.cpp delete mode 100644 opengl/libs/GLES2_dbg/test/Android.mk delete mode 100644 opengl/libs/GLES2_dbg/test/test_main.cpp delete mode 100644 opengl/libs/GLES2_dbg/test/test_server.cpp delete mode 100644 opengl/libs/GLES2_dbg/test/test_socket.cpp diff --git a/opengl/libs/GLES2_dbg/generate_api_cpp.py b/opengl/libs/GLES2_dbg/generate_api_cpp.py deleted file mode 100755 index 96cde57bc1..0000000000 --- a/opengl/libs/GLES2_dbg/generate_api_cpp.py +++ /dev/null @@ -1,219 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- - -# -# Copyright 2011, The Android Open Source Project -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -import os -import sys - -def RemoveAnnotation(line): - if line.find(":") >= 0: - annotation = line[line.find(":"): line.find(" ", line.find(":"))] - return line.replace(annotation, "*") - else: - return line - -def generate_api(lines): - externs = [] - i = 0 - # these have been hand written - skipFunctions = ["glDrawArrays", "glDrawElements"] - - # these have an EXTEND_Debug_* macro for getting data - extendFunctions = ["glCopyTexImage2D", "glCopyTexSubImage2D", "glReadPixels", -"glShaderSource", "glTexImage2D", "glTexSubImage2D"] - - # these also needs to be forwarded to DbgContext - contextFunctions = ["glUseProgram", "glEnableVertexAttribArray", "glDisableVertexAttribArray", -"glVertexAttribPointer", "glBindBuffer", "glBufferData", "glBufferSubData", "glDeleteBuffers",] - - for line in lines: - if line.find("API_ENTRY(") >= 0: # a function prototype - returnType = line[0: line.find(" API_ENTRY(")] - functionName = line[line.find("(") + 1: line.find(")")] #extract GL function name - parameterList = line[line.find(")(") + 2: line.find(") {")] - - #if line.find("*") >= 0: - # extern = "%s Debug_%s(%s);" % (returnType, functionName, parameterList) - # externs.append(extern) - # continue - - if functionName in skipFunctions: - sys.stderr.write("!\n! skipping function '%s'\n!\n" % (functionName)) - continue - - parameters = parameterList.split(',') - paramIndex = 0 - if line.find("*") >= 0 and (line.find("*") < line.find(":") or line.find("*") > line.rfind(":")): # unannotated pointer - if not functionName in extendFunctions: - # add function to list of functions that should be hand written, but generate code anyways - extern = "%s Debug_%s(%s);" % (returnType, functionName, RemoveAnnotation(parameterList)) - sys.stderr.write("%s should be hand written\n" % (extern)) - print "// FIXME: this function has pointers, it should be hand written" - externs.append(extern) - - print "%s Debug_%s(%s)\n{" % (returnType, functionName, RemoveAnnotation(parameterList)) - print " glesv2debugger::Message msg;" - - if parameterList == "void": - parameters = [] - arguments = "" - paramNames = [] - inout = "" - getData = "" - - callerMembers = "" - setCallerMembers = "" - setMsgParameters = "" - - for parameter in parameters: - const = parameter.find("const") - parameter = parameter.replace("const", "") - parameter = parameter.strip() - paramType = parameter.split(' ')[0] - paramName = parameter.split(' ')[1] - annotation = "" - arguments += paramName - if parameter.find(":") >= 0: # has annotation - assert inout == "" # only one parameter should be annotated - sys.stderr.write("%s is annotated: %s \n" % (functionName, paramType)) - inout = paramType.split(":")[2] - annotation = paramType.split(":")[1] - paramType = paramType.split(":")[0] - count = 1 - countArg = "" - if annotation.find("*") >= 0: # [1,n] * param - count = int(annotation.split("*")[0]) - countArg = annotation.split("*")[1] - assert countArg in paramNames - elif annotation in paramNames: - count = 1 - countArg = annotation - elif annotation == "GLstring": - annotation = "strlen(%s)" % (paramName) - else: - count = int(annotation) - - setMsgParameters += " msg.set_arg%d(ToInt(%s));\n" % (paramIndex, paramName) - if paramType.find("void") >= 0: - getData += " msg.mutable_data()->assign(reinterpret_cast(%s), %s * sizeof(char));" % (paramName, annotation) - else: - getData += " msg.mutable_data()->assign(reinterpret_cast(%s), %s * sizeof(%s));" % (paramName, annotation, paramType) - paramType += "*" - else: - if paramType == "GLfloat" or paramType == "GLclampf" or paramType.find("*") >= 0: - setMsgParameters += " msg.set_arg%d(ToInt(%s));\n" % (paramIndex, paramName) - else: - setMsgParameters += " msg.set_arg%d(%s);\n" % (paramIndex, paramName) - if paramIndex < len(parameters) - 1: - arguments += ', ' - if const >= 0: - paramType = "const " + paramType - paramNames.append(paramName) - paramIndex += 1 - callerMembers += " %s %s;\n" % (paramType, paramName) - setCallerMembers += " caller.%s = %s;\n" % (paramName, paramName) - - print " struct : public FunctionCall {" - print callerMembers - print " const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) {" - if inout in ["out", "inout"]: # get timing excluding output data copy - print " nsecs_t c0 = systemTime(timeMode);" - if returnType == "void": - print " _c->%s(%s);" % (functionName, arguments) - else: - print " const int * ret = reinterpret_cast(_c->%s(%s));" % (functionName, arguments) - print " msg.set_ret(ToInt(ret));" - if inout in ["out", "inout"]: - print " msg.set_time((systemTime(timeMode) - c0) * 1e-6f);" - print " " + getData - if functionName in extendFunctions: - print "\ -#ifdef EXTEND_AFTER_CALL_Debug_%s\n\ - EXTEND_AFTER_CALL_Debug_%s;\n\ -#endif" % (functionName, functionName) - if functionName in contextFunctions: - print " getDbgContextThreadSpecific()->%s(%s);" % (functionName, arguments) - if returnType == "void": - print " return 0;" - else: - print " return ret;" - print """ } - } caller;""" - print setCallerMembers - print setMsgParameters - - if line.find("*") >= 0 or line.find(":") >= 0: - print " // FIXME: check for pointer usage" - if inout in ["in", "inout"]: - print getData - if functionName in extendFunctions: - print "\ -#ifdef EXTEND_Debug_%s\n\ - EXTEND_Debug_%s;\n\ -#endif" % (functionName, functionName) - print " int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_%s);"\ - % (functionName) - if returnType != "void": - if returnType == "GLboolean": - print " return static_cast(reinterpret_cast(ret));" - else: - print " return reinterpret_cast<%s>(ret);" % (returnType) - print "}\n" - - - print "// FIXME: the following functions should be written by hand" - for extern in externs: - print extern - -if __name__ == "__main__": - print """\ -/* - ** Copyright 2011, The Android Open Source Project - ** - ** Licensed under the Apache License, Version 2.0 (the "License"); - ** you may not use this file except in compliance with the License. - ** You may obtain a copy of the License at - ** - ** http://www.apache.org/licenses/LICENSE-2.0 - ** - ** Unless required by applicable law or agreed to in writing, software - ** distributed under the License is distributed on an "AS IS" BASIS, - ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ** See the License for the specific language governing permissions and - ** limitations under the License. - */ - -// auto generated by generate_api_cpp.py - -#include - -#include "src/header.h" -#include "src/api.h" - -template static int ToInt(const T & t) -{ - COMPILE_TIME_ASSERT_FUNCTION_SCOPE(sizeof(T) == sizeof(int)); - return (int &)t; -} -""" - lines = open("gl2_api_annotated.in").readlines() - generate_api(lines) - #lines = open("gl2ext_api.in").readlines() - #generate_api(lines) - - diff --git a/opengl/libs/GLES2_dbg/generate_caller_cpp.py b/opengl/libs/GLES2_dbg/generate_caller_cpp.py deleted file mode 100755 index ee4208dd3d..0000000000 --- a/opengl/libs/GLES2_dbg/generate_caller_cpp.py +++ /dev/null @@ -1,199 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- - -# -# Copyright 2011, The Android Open Source Project -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -import os -import sys - -externs = [] - -def generate_caller(lines): - i = 0 - output = "" - skipFunctions = [] - - for line in lines: - if line.find("API_ENTRY(") >= 0: # a function prototype - returnType = line[0: line.find(" API_ENTRY(")] - functionName = line[line.find("(") + 1: line.find(")")] #extract GL function name - parameterList = line[line.find(")(") + 2: line.find(") {")] - - #if line.find("*") >= 0: - # extern = "%s Debug_%s(%s);" % (returnType, functionName, parameterList) - # externs.append(extern) - # continue - - if functionName in skipFunctions: - sys.stderr.write("!\n! skipping function '%s'\n!\n" % functionName) - continue - output += "\ - case glesv2debugger::Message_Function_%s:\n" % functionName - parameters = parameterList.split(',') - paramIndex = 0 - if line.find("*") >= 0 and (line.find("*") < line.find(":") or line.find("*") > line.rfind(":")): # unannotated pointer - # add function to list of functions that should be hand written, but generate code anyways - externs.append(functionName) - output += "\ - ret = GenerateCall_%s(dbg, cmd, msg, prevRet);\n\ - break;\n" % (functionName) - continue - elif line.find(":out") >= 0 or line.find(":inout") >= 0: - externs.append(functionName) - output += "\ - ret = GenerateCall_%s(dbg, cmd, msg, prevRet);\n\ - break; // annotated output pointers\n" % (functionName) - continue - - if parameterList == "void": - parameters = [] - arguments = "" - paramNames = [] - inout = "" - getData = "" - - callerMembers = "" - - for parameter in parameters: - const = parameter.find("const") - parameter = parameter.replace("const", "") - parameter = parameter.strip() - paramType = parameter.split(' ')[0] - paramName = parameter.split(' ')[1] - annotation = "" - if parameter.find(":") >= 0: # has annotation - assert inout == "" # only one parameter should be annotated - sys.stderr.write("%s is annotated: %s \n" % (functionName, paramType)) - inout = paramType.split(":")[2] - annotation = paramType.split(":")[1] - paramType = paramType.split(":")[0] - count = 1 - countArg = "" - if annotation.find("*") >= 0: # [1,n] * param - count = int(annotation.split("*")[0]) - countArg = annotation.split("*")[1] - assert countArg in paramNames - elif annotation in paramNames: - count = 1 - countArg = annotation - elif annotation == "GLstring": - annotation = "strlen(%s)" % (paramName) - else: - count = int(annotation) - - paramType += "*" - arguments += "reinterpret_cast<%s>(const_cast(cmd.data().data()))" % (paramType) - elif paramType == "GLboolean": - arguments += "GLboolean(cmd.arg%d())" % (paramIndex) - else: - arguments += "static_cast<%s>(cmd.arg%d())" % (paramType, paramIndex) - - if paramIndex < len(parameters) - 1: - arguments += ", " - if len(arguments) - arguments.rfind("\n") > 60 : - arguments += "\n\ - " - if const >= 0: - paramType = "const " + paramType - paramNames.append(paramName) - paramIndex += 1 - - if returnType == "void": - output += "\ - dbg->hooks->gl.%s(\n\ - %s);\n\ - break;\n" % (functionName, arguments) - else: - output += "\ - msg.set_ret(static_cast(dbg->hooks->gl.%s(\n\ - %s)));\n\ - if (cmd.has_ret())\n\ - ret = reinterpret_cast(msg.ret());\n\ - break;\n" % (functionName, arguments) - return output - -if __name__ == "__main__": - - lines = open("gl2_api_annotated.in").readlines() - output = generate_caller(lines) - - out = open("src/caller.cpp", "w") - out.write("""\ -/* - ** Copyright 2011, The Android Open Source Project - ** - ** Licensed under the Apache License, Version 2.0 (the "License"); - ** you may not use this file except in compliance with the License. - ** You may obtain a copy of the License at - ** - ** http://www.apache.org/licenses/LICENSE-2.0 - ** - ** Unless required by applicable law or agreed to in writing, software - ** distributed under the License is distributed on an "AS IS" BASIS, - ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ** See the License for the specific language governing permissions and - ** limitations under the License. - */ - -// auto generated by generate_caller_cpp.py -// implement declarations in caller.h - -#include "header.h" - -namespace android { - -""") - - for extern in externs: - out.write("\ -static const int * GenerateCall_%s(DbgContext * const dbg,\n\ - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet);\n" % (extern)) - print("\ -static const int * GenerateCall_%s(DbgContext * const dbg,\n\ - const glesv2debugger::Message & cmd,\n\ - glesv2debugger::Message & msg, const int * const prevRet)\n\ -{ assert(0); return prevRet; }\n" % (extern)) - - out.write( -""" -#include "caller.h" - -const int * GenerateCall(DbgContext * const dbg, const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - LOGD("GenerateCall function=%u", cmd.function()); - const int * ret = prevRet; // only some functions have return value - nsecs_t c0 = systemTime(timeMode); - switch (cmd.function()) {""") - - out.write(output) - - out.write("""\ - default: - assert(0); - } - msg.set_time((systemTime(timeMode) - c0) * 1e-6f); - msg.set_context_id(reinterpret_cast(dbg)); - msg.set_function(cmd.function()); - msg.set_type(glesv2debugger::Message_Type_AfterCall); - return ret; -} - -}; // name space android { -""") - - diff --git a/opengl/libs/GLES2_dbg/generate_debug_in.py b/opengl/libs/GLES2_dbg/generate_debug_in.py deleted file mode 100755 index 1280c6f4f7..0000000000 --- a/opengl/libs/GLES2_dbg/generate_debug_in.py +++ /dev/null @@ -1,80 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- - -# -# Copyright 2011, The Android Open Source Project -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -import os -import sys - -def append_functions(functions, lines): - i = 0 - for line in lines: - if line.find("API_ENTRY(") >= 0: # a function prototype - returnType = line[0: line.find(" API_ENTRY(")] - functionName = line[line.find("(") + 1: line.find(")")] #extract GL function name - parameterList = line[line.find(")(") + 2: line.find(") {")] - - functions.append(functionName) - #print functionName - continue - - parameters = parameterList.split(',') - paramIndex = 0 - if line.find("*") >= 0: - print "// FIXME: this function has pointers, it should be hand written" - externs.append("%s Tracing_%s(%s);" % (returnType, functionName, parameterList)) - print "%s Tracing_%s(%s)\n{" % (returnType, functionName, parameterList) - - if parameterList == "void": - parameters = [] - - arguments = "" - - for parameter in parameters: - parameter = parameter.replace("const", "") - parameter = parameter.strip() - paramType = parameter.split(' ')[0] - paramName = parameter.split(' ')[1] - - paramIndex += 1 - - return functions - - - -if __name__ == "__main__": - definedFunctions = [] - lines = open("gl2_api_annotated.in").readlines() - definedFunctions = append_functions(definedFunctions, lines) - - output = open("../debug.in", "w") - lines = open("../trace.in").readlines() - output.write("// the following functions are not defined in GLESv2_dbg\n") - for line in lines: - functionName = "" - if line.find("TRACE_GL(") >= 0: # a function prototype - functionName = line.split(',')[1].strip() - elif line.find("TRACE_GL_VOID(") >= 0: # a function prototype - functionName = line[line.find("(") + 1: line.find(",")] #extract GL function name - else: - continue - if functionName in definedFunctions: - #print functionName - continue - else: - output.write(line) - diff --git a/opengl/libs/GLES2_dbg/generate_debugger_message_proto.py b/opengl/libs/GLES2_dbg/generate_debugger_message_proto.py deleted file mode 100755 index 535b13e185..0000000000 --- a/opengl/libs/GLES2_dbg/generate_debugger_message_proto.py +++ /dev/null @@ -1,155 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- - -# -# Copyright 2011, The Android Open Source Project -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -import os - -def generate_egl_entries(output, lines, i): - for line in lines: - if line.find("EGL_ENTRY(") >= 0: - line = line.split(",")[1].strip() #extract EGL function name - output.write(" %s = %d;\n" % (line, i)) - i += 1 - return i - - -def generate_gl_entries(output,lines,i): - for line in lines: - if line.find("API_ENTRY(") >= 0: - line = line[line.find("(") + 1: line.find(")")] #extract GL function name - output.write(" %s = %d;\n" % (line, i)) - i += 1 - return i - - -if __name__ == "__main__": - output = open("debugger_message.proto",'w') - output.write("""\ -/* - * Copyright (C) 2011 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -// do not edit; auto generated by generate_debugger_message_proto.py - -package com.android.glesv2debugger; - -option optimize_for = LITE_RUNTIME; - -message Message -{ - required int32 context_id = 1; // GL context id - enum Function - { -""") - - i = 0; - - lines = open("gl2_api_annotated.in").readlines() - i = generate_gl_entries(output, lines, i) - output.write(" // end of GL functions\n") - - #lines = open("gl2ext_api.in").readlines() - #i = generate_gl_entries(output, lines, i) - #output.write(" // end of GL EXT functions\n") - - lines = open("../EGL/egl_entries.in").readlines() - i = generate_egl_entries(output, lines, i) - output.write(" // end of GL EXT functions\n") - - output.write(" ACK = %d;\n" % (i)) - i += 1 - - output.write(" NEG = %d;\n" % (i)) - i += 1 - - output.write(" CONTINUE = %d;\n" % (i)) - i += 1 - - output.write(" SKIP = %d;\n" % (i)) - i += 1 - - output.write(" SETPROP = %d;\n" % (i)) - i += 1 - - output.write(""" } - required Function function = 2 [default = NEG]; // type/function of message - enum Type - { - BeforeCall = 0; - AfterCall = 1; - AfterGeneratedCall = 2; - Response = 3; // currently used for misc messages - CompleteCall = 4; // BeforeCall and AfterCall merged - } - required Type type = 3; - required bool expect_response = 4; - optional int32 ret = 5; // return value from previous GL call - optional int32 arg0 = 6; // args to GL call - optional int32 arg1 = 7; - optional int32 arg2 = 8; - optional int32 arg3 = 9; - optional int32 arg4 = 16; - optional int32 arg5 = 17; - optional int32 arg6 = 18; - optional int32 arg7 = 19; // glDrawArrays/Elements sets this to active number of attributes - optional int32 arg8 = 20; - - optional bytes data = 10; // variable length data used for GL call - enum DataType - { - ReferencedImage = 0; // for image sourced from ReadPixels - NonreferencedImage = 1; // for image sourced from ReadPixels - }; - // most data types can be inferred from function - optional DataType data_type = 23; - // these are used for image data when they cannot be determined from args - optional int32 pixel_format = 24; - optional int32 pixel_type = 25; - optional int32 image_width = 26; - optional int32 image_height = 27; - - optional float time = 11; // duration of previous GL call (ms) - enum Prop - { - CaptureDraw = 0; // arg0 = number of glDrawArrays/Elements to glReadPixels - TimeMode = 1; // arg0 = SYSTEM_TIME_* in utils/Timers.h - ExpectResponse = 2; // arg0 = enum Function, arg1 = true/false - CaptureSwap = 3; // arg0 = number of eglSwapBuffers to glReadPixels - GLConstant = 4; // arg0 = GLenum, arg1 = constant; send GL impl. constants - }; - optional Prop prop = 21; // used with SETPROP, value in arg0 - optional float clock = 22; // wall clock in seconds -} -""") - - output.close() - - os.system("aprotoc --cpp_out=src --java_out=../../../../../development/tools/glesv2debugger/src debugger_message.proto") - os.system('mv -f "src/debugger_message.pb.cc" "src/debugger_message.pb.cpp"') diff --git a/opengl/libs/GLES2_dbg/gl2_api_annotated.in b/opengl/libs/GLES2_dbg/gl2_api_annotated.in deleted file mode 100644 index 227e2ebbe3..0000000000 --- a/opengl/libs/GLES2_dbg/gl2_api_annotated.in +++ /dev/null @@ -1,426 +0,0 @@ -void API_ENTRY(glActiveTexture)(GLenum texture) { - CALL_GL_API(glActiveTexture, texture); -} -void API_ENTRY(glAttachShader)(GLuint program, GLuint shader) { - CALL_GL_API(glAttachShader, program, shader); -} -void API_ENTRY(glBindAttribLocation)(GLuint program, GLuint index, const GLchar:GLstring:in name) { - CALL_GL_API(glBindAttribLocation, program, index, name); -} -void API_ENTRY(glBindBuffer)(GLenum target, GLuint buffer) { - CALL_GL_API(glBindBuffer, target, buffer); -} -void API_ENTRY(glBindFramebuffer)(GLenum target, GLuint framebuffer) { - CALL_GL_API(glBindFramebuffer, target, framebuffer); -} -void API_ENTRY(glBindRenderbuffer)(GLenum target, GLuint renderbuffer) { - CALL_GL_API(glBindRenderbuffer, target, renderbuffer); -} -void API_ENTRY(glBindTexture)(GLenum target, GLuint texture) { - CALL_GL_API(glBindTexture, target, texture); -} -void API_ENTRY(glBlendColor)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) { - CALL_GL_API(glBlendColor, red, green, blue, alpha); -} -void API_ENTRY(glBlendEquation)( GLenum mode ) { - CALL_GL_API(glBlendEquation, mode); -} -void API_ENTRY(glBlendEquationSeparate)(GLenum modeRGB, GLenum modeAlpha) { - CALL_GL_API(glBlendEquationSeparate, modeRGB, modeAlpha); -} -void API_ENTRY(glBlendFunc)(GLenum sfactor, GLenum dfactor) { - CALL_GL_API(glBlendFunc, sfactor, dfactor); -} -void API_ENTRY(glBlendFuncSeparate)(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) { - CALL_GL_API(glBlendFuncSeparate, srcRGB, dstRGB, srcAlpha, dstAlpha); -} -void API_ENTRY(glBufferData)(GLenum target, GLsizeiptr size, const GLvoid:size:in data, GLenum usage) { - CALL_GL_API(glBufferData, target, size, data, usage); -} -void API_ENTRY(glBufferSubData)(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid:size:in data) { - CALL_GL_API(glBufferSubData, target, offset, size, data); -} -GLenum API_ENTRY(glCheckFramebufferStatus)(GLenum target) { - CALL_GL_API_RETURN(glCheckFramebufferStatus, target); -} -void API_ENTRY(glClear)(GLbitfield mask) { - CALL_GL_API(glClear, mask); -} -void API_ENTRY(glClearColor)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) { - CALL_GL_API(glClearColor, red, green, blue, alpha); -} -void API_ENTRY(glClearDepthf)(GLclampf depth) { - CALL_GL_API(glClearDepthf, depth); -} -void API_ENTRY(glClearStencil)(GLint s) { - CALL_GL_API(glClearStencil, s); -} -void API_ENTRY(glColorMask)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) { - CALL_GL_API(glColorMask, red, green, blue, alpha); -} -void API_ENTRY(glCompileShader)(GLuint shader) { - CALL_GL_API(glCompileShader, shader); -} -void API_ENTRY(glCompressedTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data) { - CALL_GL_API(glCompressedTexImage2D, target, level, internalformat, width, height, border, imageSize, data); -} -void API_ENTRY(glCompressedTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data) { - CALL_GL_API(glCompressedTexSubImage2D, target, level, xoffset, yoffset, width, height, format, imageSize, data); -} -void API_ENTRY(glCopyTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border) { - CALL_GL_API(glCopyTexImage2D, target, level, internalformat, x, y, width, height, border); -} -void API_ENTRY(glCopyTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height) { - CALL_GL_API(glCopyTexSubImage2D, target, level, xoffset, yoffset, x, y, width, height); -} -GLuint API_ENTRY(glCreateProgram)(void) { - CALL_GL_API_RETURN(glCreateProgram); -} -GLuint API_ENTRY(glCreateShader)(GLenum type) { - CALL_GL_API_RETURN(glCreateShader, type); -} -void API_ENTRY(glCullFace)(GLenum mode) { - CALL_GL_API(glCullFace, mode); -} -void API_ENTRY(glDeleteBuffers)(GLsizei n, const GLuint:n:in buffers) { - CALL_GL_API(glDeleteBuffers, n, buffers); -} -void API_ENTRY(glDeleteFramebuffers)(GLsizei n, const GLuint:n:in framebuffers) { - CALL_GL_API(glDeleteFramebuffers, n, framebuffers); -} -void API_ENTRY(glDeleteProgram)(GLuint program) { - CALL_GL_API(glDeleteProgram, program); -} -void API_ENTRY(glDeleteRenderbuffers)(GLsizei n, const GLuint:n:in renderbuffers) { - CALL_GL_API(glDeleteRenderbuffers, n, renderbuffers); -} -void API_ENTRY(glDeleteShader)(GLuint shader) { - CALL_GL_API(glDeleteShader, shader); -} -void API_ENTRY(glDeleteTextures)(GLsizei n, const GLuint:n:in textures) { - CALL_GL_API(glDeleteTextures, n, textures); -} -void API_ENTRY(glDepthFunc)(GLenum func) { - CALL_GL_API(glDepthFunc, func); -} -void API_ENTRY(glDepthMask)(GLboolean flag) { - CALL_GL_API(glDepthMask, flag); -} -void API_ENTRY(glDepthRangef)(GLclampf zNear, GLclampf zFar) { - CALL_GL_API(glDepthRangef, zNear, zFar); -} -void API_ENTRY(glDetachShader)(GLuint program, GLuint shader) { - CALL_GL_API(glDetachShader, program, shader); -} -void API_ENTRY(glDisable)(GLenum cap) { - CALL_GL_API(glDisable, cap); -} -void API_ENTRY(glDisableVertexAttribArray)(GLuint index) { - CALL_GL_API(glDisableVertexAttribArray, index); -} -void API_ENTRY(glDrawArrays)(GLenum mode, GLint first, GLsizei count) { - CALL_GL_API(glDrawArrays, mode, first, count); -} -void API_ENTRY(glDrawElements)(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices) { - CALL_GL_API(glDrawElements, mode, count, type, indices); -} -void API_ENTRY(glEnable)(GLenum cap) { - CALL_GL_API(glEnable, cap); -} -void API_ENTRY(glEnableVertexAttribArray)(GLuint index) { - CALL_GL_API(glEnableVertexAttribArray, index); -} -void API_ENTRY(glFinish)(void) { - CALL_GL_API(glFinish); -} -void API_ENTRY(glFlush)(void) { - CALL_GL_API(glFlush); -} -void API_ENTRY(glFramebufferRenderbuffer)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) { - CALL_GL_API(glFramebufferRenderbuffer, target, attachment, renderbuffertarget, renderbuffer); -} -void API_ENTRY(glFramebufferTexture2D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) { - CALL_GL_API(glFramebufferTexture2D, target, attachment, textarget, texture, level); -} -void API_ENTRY(glFrontFace)(GLenum mode) { - CALL_GL_API(glFrontFace, mode); -} -void API_ENTRY(glGenBuffers)(GLsizei n, GLuint:n:out buffers) { - CALL_GL_API(glGenBuffers, n, buffers); -} -void API_ENTRY(glGenerateMipmap)(GLenum target) { - CALL_GL_API(glGenerateMipmap, target); -} -void API_ENTRY(glGenFramebuffers)(GLsizei n, GLuint:n:out framebuffers) { - CALL_GL_API(glGenFramebuffers, n, framebuffers); -} -void API_ENTRY(glGenRenderbuffers)(GLsizei n, GLuint:n:out renderbuffers) { - CALL_GL_API(glGenRenderbuffers, n, renderbuffers); -} -void API_ENTRY(glGenTextures)(GLsizei n, GLuint:n:out textures) { - CALL_GL_API(glGenTextures, n, textures); -} -void API_ENTRY(glGetActiveAttrib)(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar:GLstring:in name) { - CALL_GL_API(glGetActiveAttrib, program, index, bufsize, length, size, type, name); -} -void API_ENTRY(glGetActiveUniform)(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar:GLstring:in name) { - CALL_GL_API(glGetActiveUniform, program, index, bufsize, length, size, type, name); -} -void API_ENTRY(glGetAttachedShaders)(GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders) { - CALL_GL_API(glGetAttachedShaders, program, maxcount, count, shaders); -} -int API_ENTRY(glGetAttribLocation)(GLuint program, const GLchar:GLstring:in name) { - CALL_GL_API_RETURN(glGetAttribLocation, program, name); -} -void API_ENTRY(glGetBooleanv)(GLenum pname, GLboolean* params) { - CALL_GL_API(glGetBooleanv, pname, params); -} -void API_ENTRY(glGetBufferParameteriv)(GLenum target, GLenum pname, GLint* params) { - CALL_GL_API(glGetBufferParameteriv, target, pname, params); -} -GLenum API_ENTRY(glGetError)(void) { - CALL_GL_API_RETURN(glGetError); -} -void API_ENTRY(glGetFloatv)(GLenum pname, GLfloat* params) { - CALL_GL_API(glGetFloatv, pname, params); -} -void API_ENTRY(glGetFramebufferAttachmentParameteriv)(GLenum target, GLenum attachment, GLenum pname, GLint* params) { - CALL_GL_API(glGetFramebufferAttachmentParameteriv, target, attachment, pname, params); -} -void API_ENTRY(glGetIntegerv)(GLenum pname, GLint* params) { - CALL_GL_API(glGetIntegerv, pname, params); -} -void API_ENTRY(glGetProgramiv)(GLuint program, GLenum pname, GLint:1:out params) { - CALL_GL_API(glGetProgramiv, program, pname, params); -} -void API_ENTRY(glGetProgramInfoLog)(GLuint program, GLsizei bufsize, GLsizei* length, GLchar:GLstring:out infolog) { - CALL_GL_API(glGetProgramInfoLog, program, bufsize, length, infolog); -} -void API_ENTRY(glGetRenderbufferParameteriv)(GLenum target, GLenum pname, GLint* params) { - CALL_GL_API(glGetRenderbufferParameteriv, target, pname, params); -} -void API_ENTRY(glGetShaderiv)(GLuint shader, GLenum pname, GLint:1:out params) { - CALL_GL_API(glGetShaderiv, shader, pname, params); -} -void API_ENTRY(glGetShaderInfoLog)(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar:GLstring:out infolog) { - CALL_GL_API(glGetShaderInfoLog, shader, bufsize, length, infolog); -} -void API_ENTRY(glGetShaderPrecisionFormat)(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision) { - CALL_GL_API(glGetShaderPrecisionFormat, shadertype, precisiontype, range, precision); -} -void API_ENTRY(glGetShaderSource)(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar:GLstring:out source) { - CALL_GL_API(glGetShaderSource, shader, bufsize, length, source); -} -const GLubyte* API_ENTRY(glGetString)(GLenum name) { - CALL_GL_API_RETURN(glGetString, name); -} -void API_ENTRY(glGetTexParameterfv)(GLenum target, GLenum pname, GLfloat* params) { - CALL_GL_API(glGetTexParameterfv, target, pname, params); -} -void API_ENTRY(glGetTexParameteriv)(GLenum target, GLenum pname, GLint* params) { - CALL_GL_API(glGetTexParameteriv, target, pname, params); -} -void API_ENTRY(glGetUniformfv)(GLuint program, GLint location, GLfloat* params) { - CALL_GL_API(glGetUniformfv, program, location, params); -} -void API_ENTRY(glGetUniformiv)(GLuint program, GLint location, GLint* params) { - CALL_GL_API(glGetUniformiv, program, location, params); -} -int API_ENTRY(glGetUniformLocation)(GLuint program, const GLchar:GLstring:in name) { - CALL_GL_API_RETURN(glGetUniformLocation, program, name); -} -void API_ENTRY(glGetVertexAttribfv)(GLuint index, GLenum pname, GLfloat* params) { - CALL_GL_API(glGetVertexAttribfv, index, pname, params); -} -void API_ENTRY(glGetVertexAttribiv)(GLuint index, GLenum pname, GLint* params) { - CALL_GL_API(glGetVertexAttribiv, index, pname, params); -} -void API_ENTRY(glGetVertexAttribPointerv)(GLuint index, GLenum pname, GLvoid** pointer) { - CALL_GL_API(glGetVertexAttribPointerv, index, pname, pointer); -} -void API_ENTRY(glHint)(GLenum target, GLenum mode) { - CALL_GL_API(glHint, target, mode); -} -GLboolean API_ENTRY(glIsBuffer)(GLuint buffer) { - CALL_GL_API_RETURN(glIsBuffer, buffer); -} -GLboolean API_ENTRY(glIsEnabled)(GLenum cap) { - CALL_GL_API_RETURN(glIsEnabled, cap); -} -GLboolean API_ENTRY(glIsFramebuffer)(GLuint framebuffer) { - CALL_GL_API_RETURN(glIsFramebuffer, framebuffer); -} -GLboolean API_ENTRY(glIsProgram)(GLuint program) { - CALL_GL_API_RETURN(glIsProgram, program); -} -GLboolean API_ENTRY(glIsRenderbuffer)(GLuint renderbuffer) { - CALL_GL_API_RETURN(glIsRenderbuffer, renderbuffer); -} -GLboolean API_ENTRY(glIsShader)(GLuint shader) { - CALL_GL_API_RETURN(glIsShader, shader); -} -GLboolean API_ENTRY(glIsTexture)(GLuint texture) { - CALL_GL_API_RETURN(glIsTexture, texture); -} -void API_ENTRY(glLineWidth)(GLfloat width) { - CALL_GL_API(glLineWidth, width); -} -void API_ENTRY(glLinkProgram)(GLuint program) { - CALL_GL_API(glLinkProgram, program); -} -void API_ENTRY(glPixelStorei)(GLenum pname, GLint param) { - CALL_GL_API(glPixelStorei, pname, param); -} -void API_ENTRY(glPolygonOffset)(GLfloat factor, GLfloat units) { - CALL_GL_API(glPolygonOffset, factor, units); -} -void API_ENTRY(glReadPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels) { - CALL_GL_API(glReadPixels, x, y, width, height, format, type, pixels); -} -void API_ENTRY(glReleaseShaderCompiler)(void) { - CALL_GL_API(glReleaseShaderCompiler); -} -void API_ENTRY(glRenderbufferStorage)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height) { - CALL_GL_API(glRenderbufferStorage, target, internalformat, width, height); -} -void API_ENTRY(glSampleCoverage)(GLclampf value, GLboolean invert) { - CALL_GL_API(glSampleCoverage, value, invert); -} -void API_ENTRY(glScissor)(GLint x, GLint y, GLsizei width, GLsizei height) { - CALL_GL_API(glScissor, x, y, width, height); -} -void API_ENTRY(glShaderBinary)(GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length) { - CALL_GL_API(glShaderBinary, n, shaders, binaryformat, binary, length); -} -void API_ENTRY(glShaderSource)(GLuint shader, GLsizei count, const GLchar** string, const GLint* length) { - CALL_GL_API(glShaderSource, shader, count, string, length); -} -void API_ENTRY(glStencilFunc)(GLenum func, GLint ref, GLuint mask) { - CALL_GL_API(glStencilFunc, func, ref, mask); -} -void API_ENTRY(glStencilFuncSeparate)(GLenum face, GLenum func, GLint ref, GLuint mask) { - CALL_GL_API(glStencilFuncSeparate, face, func, ref, mask); -} -void API_ENTRY(glStencilMask)(GLuint mask) { - CALL_GL_API(glStencilMask, mask); -} -void API_ENTRY(glStencilMaskSeparate)(GLenum face, GLuint mask) { - CALL_GL_API(glStencilMaskSeparate, face, mask); -} -void API_ENTRY(glStencilOp)(GLenum fail, GLenum zfail, GLenum zpass) { - CALL_GL_API(glStencilOp, fail, zfail, zpass); -} -void API_ENTRY(glStencilOpSeparate)(GLenum face, GLenum fail, GLenum zfail, GLenum zpass) { - CALL_GL_API(glStencilOpSeparate, face, fail, zfail, zpass); -} -void API_ENTRY(glTexImage2D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels) { - CALL_GL_API(glTexImage2D, target, level, internalformat, width, height, border, format, type, pixels); -} -void API_ENTRY(glTexParameterf)(GLenum target, GLenum pname, GLfloat param) { - CALL_GL_API(glTexParameterf, target, pname, param); -} -void API_ENTRY(glTexParameterfv)(GLenum target, GLenum pname, const GLfloat* params) { - CALL_GL_API(glTexParameterfv, target, pname, params); -} -void API_ENTRY(glTexParameteri)(GLenum target, GLenum pname, GLint param) { - CALL_GL_API(glTexParameteri, target, pname, param); -} -void API_ENTRY(glTexParameteriv)(GLenum target, GLenum pname, const GLint* params) { - CALL_GL_API(glTexParameteriv, target, pname, params); -} -void API_ENTRY(glTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels) { - CALL_GL_API(glTexSubImage2D, target, level, xoffset, yoffset, width, height, format, type, pixels); -} -void API_ENTRY(glUniform1f)(GLint location, GLfloat x) { - CALL_GL_API(glUniform1f, location, x); -} -void API_ENTRY(glUniform1fv)(GLint location, GLsizei count, const GLfloat:1*count:in v) { - CALL_GL_API(glUniform1fv, location, count, v); -} -void API_ENTRY(glUniform1i)(GLint location, GLint x) { - CALL_GL_API(glUniform1i, location, x); -} -void API_ENTRY(glUniform1iv)(GLint location, GLsizei count, const GLint:1*count:in v) { - CALL_GL_API(glUniform1iv, location, count, v); -} -void API_ENTRY(glUniform2f)(GLint location, GLfloat x, GLfloat y) { - CALL_GL_API(glUniform2f, location, x, y); -} -void API_ENTRY(glUniform2fv)(GLint location, GLsizei count, const GLfloat:2*count:in v) { - CALL_GL_API(glUniform2fv, location, count, v); -} -void API_ENTRY(glUniform2i)(GLint location, GLint x, GLint y) { - CALL_GL_API(glUniform2i, location, x, y); -} -void API_ENTRY(glUniform2iv)(GLint location, GLsizei count, const GLint:2*count:in v) { - CALL_GL_API(glUniform2iv, location, count, v); -} -void API_ENTRY(glUniform3f)(GLint location, GLfloat x, GLfloat y, GLfloat z) { - CALL_GL_API(glUniform3f, location, x, y, z); -} -void API_ENTRY(glUniform3fv)(GLint location, GLsizei count, const GLfloat:3*count:in v) { - CALL_GL_API(glUniform3fv, location, count, v); -} -void API_ENTRY(glUniform3i)(GLint location, GLint x, GLint y, GLint z) { - CALL_GL_API(glUniform3i, location, x, y, z); -} -void API_ENTRY(glUniform3iv)(GLint location, GLsizei count, const GLint:3*count:in v) { - CALL_GL_API(glUniform3iv, location, count, v); -} -void API_ENTRY(glUniform4f)(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w) { - CALL_GL_API(glUniform4f, location, x, y, z, w); -} -void API_ENTRY(glUniform4fv)(GLint location, GLsizei count, const GLfloat:4*count:in v) { - CALL_GL_API(glUniform4fv, location, count, v); -} -void API_ENTRY(glUniform4i)(GLint location, GLint x, GLint y, GLint z, GLint w) { - CALL_GL_API(glUniform4i, location, x, y, z, w); -} -void API_ENTRY(glUniform4iv)(GLint location, GLsizei count, const GLint:4*count:in v) { - CALL_GL_API(glUniform4iv, location, count, v); -} -void API_ENTRY(glUniformMatrix2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat:4*count:in value) { - CALL_GL_API(glUniformMatrix2fv, location, count, transpose, value); -} -void API_ENTRY(glUniformMatrix3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat:9*count:in value) { - CALL_GL_API(glUniformMatrix3fv, location, count, transpose, value); -} -void API_ENTRY(glUniformMatrix4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat:16*count:in value) { - CALL_GL_API(glUniformMatrix4fv, location, count, transpose, value); -} -void API_ENTRY(glUseProgram)(GLuint program) { - CALL_GL_API(glUseProgram, program); -} -void API_ENTRY(glValidateProgram)(GLuint program) { - CALL_GL_API(glValidateProgram, program); -} -void API_ENTRY(glVertexAttrib1f)(GLuint indx, GLfloat x) { - CALL_GL_API(glVertexAttrib1f, indx, x); -} -void API_ENTRY(glVertexAttrib1fv)(GLuint indx, const GLfloat:1:in values) { - CALL_GL_API(glVertexAttrib1fv, indx, values); -} -void API_ENTRY(glVertexAttrib2f)(GLuint indx, GLfloat x, GLfloat y) { - CALL_GL_API(glVertexAttrib2f, indx, x, y); -} -void API_ENTRY(glVertexAttrib2fv)(GLuint indx, const GLfloat:2:in values) { - CALL_GL_API(glVertexAttrib2fv, indx, values); -} -void API_ENTRY(glVertexAttrib3f)(GLuint indx, GLfloat x, GLfloat y, GLfloat z) { - CALL_GL_API(glVertexAttrib3f, indx, x, y, z); -} -void API_ENTRY(glVertexAttrib3fv)(GLuint indx, const GLfloat:3:in values) { - CALL_GL_API(glVertexAttrib3fv, indx, values); -} -void API_ENTRY(glVertexAttrib4f)(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w) { - CALL_GL_API(glVertexAttrib4f, indx, x, y, z, w); -} -void API_ENTRY(glVertexAttrib4fv)(GLuint indx, const GLfloat:4:in values) { - CALL_GL_API(glVertexAttrib4fv, indx, values); -} -void API_ENTRY(glVertexAttribPointer)(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr) { - CALL_GL_API(glVertexAttribPointer, indx, size, type, normalized, stride, ptr); -} -void API_ENTRY(glViewport)(GLint x, GLint y, GLsizei width, GLsizei height) { - CALL_GL_API(glViewport, x, y, width, height); -} diff --git a/opengl/libs/GLES2_dbg/src/api.cpp b/opengl/libs/GLES2_dbg/src/api.cpp deleted file mode 100644 index c4835478d2..0000000000 --- a/opengl/libs/GLES2_dbg/src/api.cpp +++ /dev/null @@ -1,3540 +0,0 @@ -/* - ** Copyright 2011, The Android Open Source Project - ** - ** Licensed under the Apache License, Version 2.0 (the "License"); - ** you may not use this file except in compliance with the License. - ** You may obtain a copy of the License at - ** - ** http://www.apache.org/licenses/LICENSE-2.0 - ** - ** Unless required by applicable law or agreed to in writing, software - ** distributed under the License is distributed on an "AS IS" BASIS, - ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ** See the License for the specific language governing permissions and - ** limitations under the License. - */ - -// auto generated by generate_api_cpp.py - -#include - -#include "src/header.h" -#include "src/api.h" - -template static int ToInt(const T & t) -{ - COMPILE_TIME_ASSERT_FUNCTION_SCOPE(sizeof(T) == sizeof(int)); - return (int &)t; -} - -void Debug_glActiveTexture(GLenum texture) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum texture; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glActiveTexture(texture); - return 0; - } - } caller; - caller.texture = texture; - - msg.set_arg0(texture); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glActiveTexture); -} - -void Debug_glAttachShader(GLuint program, GLuint shader) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - GLuint shader; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glAttachShader(program, shader); - return 0; - } - } caller; - caller.program = program; - caller.shader = shader; - - msg.set_arg0(program); - msg.set_arg1(shader); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glAttachShader); -} - -void Debug_glBindAttribLocation(GLuint program, GLuint index, const GLchar* name) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - GLuint index; - const GLchar* name; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glBindAttribLocation(program, index, name); - return 0; - } - } caller; - caller.program = program; - caller.index = index; - caller.name = name; - - msg.set_arg0(program); - msg.set_arg1(index); - msg.set_arg2(ToInt(name)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(name), strlen(name) * sizeof(GLchar)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glBindAttribLocation); -} - -void Debug_glBindBuffer(GLenum target, GLuint buffer) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLuint buffer; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glBindBuffer(target, buffer); - getDbgContextThreadSpecific()->glBindBuffer(target, buffer); - return 0; - } - } caller; - caller.target = target; - caller.buffer = buffer; - - msg.set_arg0(target); - msg.set_arg1(buffer); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glBindBuffer); -} - -void Debug_glBindFramebuffer(GLenum target, GLuint framebuffer) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLuint framebuffer; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glBindFramebuffer(target, framebuffer); - return 0; - } - } caller; - caller.target = target; - caller.framebuffer = framebuffer; - - msg.set_arg0(target); - msg.set_arg1(framebuffer); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glBindFramebuffer); -} - -void Debug_glBindRenderbuffer(GLenum target, GLuint renderbuffer) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLuint renderbuffer; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glBindRenderbuffer(target, renderbuffer); - return 0; - } - } caller; - caller.target = target; - caller.renderbuffer = renderbuffer; - - msg.set_arg0(target); - msg.set_arg1(renderbuffer); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glBindRenderbuffer); -} - -void Debug_glBindTexture(GLenum target, GLuint texture) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLuint texture; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glBindTexture(target, texture); - return 0; - } - } caller; - caller.target = target; - caller.texture = texture; - - msg.set_arg0(target); - msg.set_arg1(texture); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glBindTexture); -} - -void Debug_glBlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLclampf red; - GLclampf green; - GLclampf blue; - GLclampf alpha; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glBlendColor(red, green, blue, alpha); - return 0; - } - } caller; - caller.red = red; - caller.green = green; - caller.blue = blue; - caller.alpha = alpha; - - msg.set_arg0(ToInt(red)); - msg.set_arg1(ToInt(green)); - msg.set_arg2(ToInt(blue)); - msg.set_arg3(ToInt(alpha)); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glBlendColor); -} - -void Debug_glBlendEquation( GLenum mode ) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum mode; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glBlendEquation(mode); - return 0; - } - } caller; - caller.mode = mode; - - msg.set_arg0(mode); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glBlendEquation); -} - -void Debug_glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum modeRGB; - GLenum modeAlpha; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glBlendEquationSeparate(modeRGB, modeAlpha); - return 0; - } - } caller; - caller.modeRGB = modeRGB; - caller.modeAlpha = modeAlpha; - - msg.set_arg0(modeRGB); - msg.set_arg1(modeAlpha); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glBlendEquationSeparate); -} - -void Debug_glBlendFunc(GLenum sfactor, GLenum dfactor) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum sfactor; - GLenum dfactor; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glBlendFunc(sfactor, dfactor); - return 0; - } - } caller; - caller.sfactor = sfactor; - caller.dfactor = dfactor; - - msg.set_arg0(sfactor); - msg.set_arg1(dfactor); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glBlendFunc); -} - -void Debug_glBlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum srcRGB; - GLenum dstRGB; - GLenum srcAlpha; - GLenum dstAlpha; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glBlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha); - return 0; - } - } caller; - caller.srcRGB = srcRGB; - caller.dstRGB = dstRGB; - caller.srcAlpha = srcAlpha; - caller.dstAlpha = dstAlpha; - - msg.set_arg0(srcRGB); - msg.set_arg1(dstRGB); - msg.set_arg2(srcAlpha); - msg.set_arg3(dstAlpha); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glBlendFuncSeparate); -} - -void Debug_glBufferData(GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLsizeiptr size; - const GLvoid* data; - GLenum usage; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glBufferData(target, size, data, usage); - getDbgContextThreadSpecific()->glBufferData(target, size, data, usage); - return 0; - } - } caller; - caller.target = target; - caller.size = size; - caller.data = data; - caller.usage = usage; - - msg.set_arg0(target); - msg.set_arg1(size); - msg.set_arg2(ToInt(data)); - msg.set_arg3(usage); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(data), size * sizeof(char)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glBufferData); -} - -void Debug_glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLintptr offset; - GLsizeiptr size; - const GLvoid* data; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glBufferSubData(target, offset, size, data); - getDbgContextThreadSpecific()->glBufferSubData(target, offset, size, data); - return 0; - } - } caller; - caller.target = target; - caller.offset = offset; - caller.size = size; - caller.data = data; - - msg.set_arg0(target); - msg.set_arg1(offset); - msg.set_arg2(size); - msg.set_arg3(ToInt(data)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(data), size * sizeof(char)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glBufferSubData); -} - -GLenum Debug_glCheckFramebufferStatus(GLenum target) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - const int * ret = reinterpret_cast(_c->glCheckFramebufferStatus(target)); - msg.set_ret(ToInt(ret)); - return ret; - } - } caller; - caller.target = target; - - msg.set_arg0(target); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glCheckFramebufferStatus); - return reinterpret_cast(ret); -} - -void Debug_glClear(GLbitfield mask) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLbitfield mask; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glClear(mask); - return 0; - } - } caller; - caller.mask = mask; - - msg.set_arg0(mask); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glClear); -} - -void Debug_glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLclampf red; - GLclampf green; - GLclampf blue; - GLclampf alpha; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glClearColor(red, green, blue, alpha); - return 0; - } - } caller; - caller.red = red; - caller.green = green; - caller.blue = blue; - caller.alpha = alpha; - - msg.set_arg0(ToInt(red)); - msg.set_arg1(ToInt(green)); - msg.set_arg2(ToInt(blue)); - msg.set_arg3(ToInt(alpha)); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glClearColor); -} - -void Debug_glClearDepthf(GLclampf depth) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLclampf depth; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glClearDepthf(depth); - return 0; - } - } caller; - caller.depth = depth; - - msg.set_arg0(ToInt(depth)); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glClearDepthf); -} - -void Debug_glClearStencil(GLint s) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint s; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glClearStencil(s); - return 0; - } - } caller; - caller.s = s; - - msg.set_arg0(s); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glClearStencil); -} - -void Debug_glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLboolean red; - GLboolean green; - GLboolean blue; - GLboolean alpha; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glColorMask(red, green, blue, alpha); - return 0; - } - } caller; - caller.red = red; - caller.green = green; - caller.blue = blue; - caller.alpha = alpha; - - msg.set_arg0(red); - msg.set_arg1(green); - msg.set_arg2(blue); - msg.set_arg3(alpha); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glColorMask); -} - -void Debug_glCompileShader(GLuint shader) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint shader; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glCompileShader(shader); - return 0; - } - } caller; - caller.shader = shader; - - msg.set_arg0(shader); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glCompileShader); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLint level; - GLenum internalformat; - GLsizei width; - GLsizei height; - GLint border; - GLsizei imageSize; - const GLvoid* data; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data); - return 0; - } - } caller; - caller.target = target; - caller.level = level; - caller.internalformat = internalformat; - caller.width = width; - caller.height = height; - caller.border = border; - caller.imageSize = imageSize; - caller.data = data; - - msg.set_arg0(target); - msg.set_arg1(level); - msg.set_arg2(internalformat); - msg.set_arg3(width); - msg.set_arg4(height); - msg.set_arg5(border); - msg.set_arg6(imageSize); - msg.set_arg7(ToInt(data)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glCompressedTexImage2D); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLint level; - GLint xoffset; - GLint yoffset; - GLsizei width; - GLsizei height; - GLenum format; - GLsizei imageSize; - const GLvoid* data; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data); - return 0; - } - } caller; - caller.target = target; - caller.level = level; - caller.xoffset = xoffset; - caller.yoffset = yoffset; - caller.width = width; - caller.height = height; - caller.format = format; - caller.imageSize = imageSize; - caller.data = data; - - msg.set_arg0(target); - msg.set_arg1(level); - msg.set_arg2(xoffset); - msg.set_arg3(yoffset); - msg.set_arg4(width); - msg.set_arg5(height); - msg.set_arg6(format); - msg.set_arg7(imageSize); - msg.set_arg8(ToInt(data)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glCompressedTexSubImage2D); -} - -void Debug_glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLint level; - GLenum internalformat; - GLint x; - GLint y; - GLsizei width; - GLsizei height; - GLint border; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glCopyTexImage2D(target, level, internalformat, x, y, width, height, border); -#ifdef EXTEND_AFTER_CALL_Debug_glCopyTexImage2D - EXTEND_AFTER_CALL_Debug_glCopyTexImage2D; -#endif - return 0; - } - } caller; - caller.target = target; - caller.level = level; - caller.internalformat = internalformat; - caller.x = x; - caller.y = y; - caller.width = width; - caller.height = height; - caller.border = border; - - msg.set_arg0(target); - msg.set_arg1(level); - msg.set_arg2(internalformat); - msg.set_arg3(x); - msg.set_arg4(y); - msg.set_arg5(width); - msg.set_arg6(height); - msg.set_arg7(border); - -#ifdef EXTEND_Debug_glCopyTexImage2D - EXTEND_Debug_glCopyTexImage2D; -#endif - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glCopyTexImage2D); -} - -void Debug_glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLint level; - GLint xoffset; - GLint yoffset; - GLint x; - GLint y; - GLsizei width; - GLsizei height; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height); -#ifdef EXTEND_AFTER_CALL_Debug_glCopyTexSubImage2D - EXTEND_AFTER_CALL_Debug_glCopyTexSubImage2D; -#endif - return 0; - } - } caller; - caller.target = target; - caller.level = level; - caller.xoffset = xoffset; - caller.yoffset = yoffset; - caller.x = x; - caller.y = y; - caller.width = width; - caller.height = height; - - msg.set_arg0(target); - msg.set_arg1(level); - msg.set_arg2(xoffset); - msg.set_arg3(yoffset); - msg.set_arg4(x); - msg.set_arg5(y); - msg.set_arg6(width); - msg.set_arg7(height); - -#ifdef EXTEND_Debug_glCopyTexSubImage2D - EXTEND_Debug_glCopyTexSubImage2D; -#endif - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glCopyTexSubImage2D); -} - -GLuint Debug_glCreateProgram(void) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - const int * ret = reinterpret_cast(_c->glCreateProgram()); - msg.set_ret(ToInt(ret)); - return ret; - } - } caller; - - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glCreateProgram); - return reinterpret_cast(ret); -} - -GLuint Debug_glCreateShader(GLenum type) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum type; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - const int * ret = reinterpret_cast(_c->glCreateShader(type)); - msg.set_ret(ToInt(ret)); - return ret; - } - } caller; - caller.type = type; - - msg.set_arg0(type); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glCreateShader); - return reinterpret_cast(ret); -} - -void Debug_glCullFace(GLenum mode) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum mode; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glCullFace(mode); - return 0; - } - } caller; - caller.mode = mode; - - msg.set_arg0(mode); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glCullFace); -} - -void Debug_glDeleteBuffers(GLsizei n, const GLuint* buffers) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLsizei n; - const GLuint* buffers; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glDeleteBuffers(n, buffers); - getDbgContextThreadSpecific()->glDeleteBuffers(n, buffers); - return 0; - } - } caller; - caller.n = n; - caller.buffers = buffers; - - msg.set_arg0(n); - msg.set_arg1(ToInt(buffers)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(buffers), n * sizeof(GLuint)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glDeleteBuffers); -} - -void Debug_glDeleteFramebuffers(GLsizei n, const GLuint* framebuffers) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLsizei n; - const GLuint* framebuffers; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glDeleteFramebuffers(n, framebuffers); - return 0; - } - } caller; - caller.n = n; - caller.framebuffers = framebuffers; - - msg.set_arg0(n); - msg.set_arg1(ToInt(framebuffers)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(framebuffers), n * sizeof(GLuint)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glDeleteFramebuffers); -} - -void Debug_glDeleteProgram(GLuint program) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glDeleteProgram(program); - return 0; - } - } caller; - caller.program = program; - - msg.set_arg0(program); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glDeleteProgram); -} - -void Debug_glDeleteRenderbuffers(GLsizei n, const GLuint* renderbuffers) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLsizei n; - const GLuint* renderbuffers; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glDeleteRenderbuffers(n, renderbuffers); - return 0; - } - } caller; - caller.n = n; - caller.renderbuffers = renderbuffers; - - msg.set_arg0(n); - msg.set_arg1(ToInt(renderbuffers)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(renderbuffers), n * sizeof(GLuint)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glDeleteRenderbuffers); -} - -void Debug_glDeleteShader(GLuint shader) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint shader; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glDeleteShader(shader); - return 0; - } - } caller; - caller.shader = shader; - - msg.set_arg0(shader); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glDeleteShader); -} - -void Debug_glDeleteTextures(GLsizei n, const GLuint* textures) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLsizei n; - const GLuint* textures; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glDeleteTextures(n, textures); - return 0; - } - } caller; - caller.n = n; - caller.textures = textures; - - msg.set_arg0(n); - msg.set_arg1(ToInt(textures)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(textures), n * sizeof(GLuint)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glDeleteTextures); -} - -void Debug_glDepthFunc(GLenum func) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum func; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glDepthFunc(func); - return 0; - } - } caller; - caller.func = func; - - msg.set_arg0(func); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glDepthFunc); -} - -void Debug_glDepthMask(GLboolean flag) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLboolean flag; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glDepthMask(flag); - return 0; - } - } caller; - caller.flag = flag; - - msg.set_arg0(flag); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glDepthMask); -} - -void Debug_glDepthRangef(GLclampf zNear, GLclampf zFar) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLclampf zNear; - GLclampf zFar; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glDepthRangef(zNear, zFar); - return 0; - } - } caller; - caller.zNear = zNear; - caller.zFar = zFar; - - msg.set_arg0(ToInt(zNear)); - msg.set_arg1(ToInt(zFar)); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glDepthRangef); -} - -void Debug_glDetachShader(GLuint program, GLuint shader) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - GLuint shader; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glDetachShader(program, shader); - return 0; - } - } caller; - caller.program = program; - caller.shader = shader; - - msg.set_arg0(program); - msg.set_arg1(shader); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glDetachShader); -} - -void Debug_glDisable(GLenum cap) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum cap; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glDisable(cap); - return 0; - } - } caller; - caller.cap = cap; - - msg.set_arg0(cap); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glDisable); -} - -void Debug_glDisableVertexAttribArray(GLuint index) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint index; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glDisableVertexAttribArray(index); - getDbgContextThreadSpecific()->glDisableVertexAttribArray(index); - return 0; - } - } caller; - caller.index = index; - - msg.set_arg0(index); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glDisableVertexAttribArray); -} - -void Debug_glEnable(GLenum cap) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum cap; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glEnable(cap); - return 0; - } - } caller; - caller.cap = cap; - - msg.set_arg0(cap); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glEnable); -} - -void Debug_glEnableVertexAttribArray(GLuint index) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint index; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glEnableVertexAttribArray(index); - getDbgContextThreadSpecific()->glEnableVertexAttribArray(index); - return 0; - } - } caller; - caller.index = index; - - msg.set_arg0(index); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glEnableVertexAttribArray); -} - -void Debug_glFinish(void) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glFinish(); - return 0; - } - } caller; - - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glFinish); -} - -void Debug_glFlush(void) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glFlush(); - return 0; - } - } caller; - - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glFlush); -} - -void Debug_glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLenum attachment; - GLenum renderbuffertarget; - GLuint renderbuffer; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glFramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer); - return 0; - } - } caller; - caller.target = target; - caller.attachment = attachment; - caller.renderbuffertarget = renderbuffertarget; - caller.renderbuffer = renderbuffer; - - msg.set_arg0(target); - msg.set_arg1(attachment); - msg.set_arg2(renderbuffertarget); - msg.set_arg3(renderbuffer); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glFramebufferRenderbuffer); -} - -void Debug_glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLenum attachment; - GLenum textarget; - GLuint texture; - GLint level; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glFramebufferTexture2D(target, attachment, textarget, texture, level); - return 0; - } - } caller; - caller.target = target; - caller.attachment = attachment; - caller.textarget = textarget; - caller.texture = texture; - caller.level = level; - - msg.set_arg0(target); - msg.set_arg1(attachment); - msg.set_arg2(textarget); - msg.set_arg3(texture); - msg.set_arg4(level); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glFramebufferTexture2D); -} - -void Debug_glFrontFace(GLenum mode) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum mode; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glFrontFace(mode); - return 0; - } - } caller; - caller.mode = mode; - - msg.set_arg0(mode); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glFrontFace); -} - -void Debug_glGenBuffers(GLsizei n, GLuint* buffers) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLsizei n; - GLuint* buffers; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - nsecs_t c0 = systemTime(timeMode); - _c->glGenBuffers(n, buffers); - msg.set_time((systemTime(timeMode) - c0) * 1e-6f); - msg.mutable_data()->assign(reinterpret_cast(buffers), n * sizeof(GLuint)); - return 0; - } - } caller; - caller.n = n; - caller.buffers = buffers; - - msg.set_arg0(n); - msg.set_arg1(ToInt(buffers)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGenBuffers); -} - -void Debug_glGenerateMipmap(GLenum target) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGenerateMipmap(target); - return 0; - } - } caller; - caller.target = target; - - msg.set_arg0(target); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGenerateMipmap); -} - -void Debug_glGenFramebuffers(GLsizei n, GLuint* framebuffers) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLsizei n; - GLuint* framebuffers; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - nsecs_t c0 = systemTime(timeMode); - _c->glGenFramebuffers(n, framebuffers); - msg.set_time((systemTime(timeMode) - c0) * 1e-6f); - msg.mutable_data()->assign(reinterpret_cast(framebuffers), n * sizeof(GLuint)); - return 0; - } - } caller; - caller.n = n; - caller.framebuffers = framebuffers; - - msg.set_arg0(n); - msg.set_arg1(ToInt(framebuffers)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGenFramebuffers); -} - -void Debug_glGenRenderbuffers(GLsizei n, GLuint* renderbuffers) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLsizei n; - GLuint* renderbuffers; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - nsecs_t c0 = systemTime(timeMode); - _c->glGenRenderbuffers(n, renderbuffers); - msg.set_time((systemTime(timeMode) - c0) * 1e-6f); - msg.mutable_data()->assign(reinterpret_cast(renderbuffers), n * sizeof(GLuint)); - return 0; - } - } caller; - caller.n = n; - caller.renderbuffers = renderbuffers; - - msg.set_arg0(n); - msg.set_arg1(ToInt(renderbuffers)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGenRenderbuffers); -} - -void Debug_glGenTextures(GLsizei n, GLuint* textures) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLsizei n; - GLuint* textures; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - nsecs_t c0 = systemTime(timeMode); - _c->glGenTextures(n, textures); - msg.set_time((systemTime(timeMode) - c0) * 1e-6f); - msg.mutable_data()->assign(reinterpret_cast(textures), n * sizeof(GLuint)); - return 0; - } - } caller; - caller.n = n; - caller.textures = textures; - - msg.set_arg0(n); - msg.set_arg1(ToInt(textures)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGenTextures); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - GLuint index; - GLsizei bufsize; - GLsizei* length; - GLint* size; - GLenum* type; - GLchar* name; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetActiveAttrib(program, index, bufsize, length, size, type, name); - return 0; - } - } caller; - caller.program = program; - caller.index = index; - caller.bufsize = bufsize; - caller.length = length; - caller.size = size; - caller.type = type; - caller.name = name; - - msg.set_arg0(program); - msg.set_arg1(index); - msg.set_arg2(bufsize); - msg.set_arg3(ToInt(length)); - msg.set_arg4(ToInt(size)); - msg.set_arg5(ToInt(type)); - msg.set_arg6(ToInt(name)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(name), strlen(name) * sizeof(GLchar)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetActiveAttrib); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetActiveUniform(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - GLuint index; - GLsizei bufsize; - GLsizei* length; - GLint* size; - GLenum* type; - GLchar* name; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetActiveUniform(program, index, bufsize, length, size, type, name); - return 0; - } - } caller; - caller.program = program; - caller.index = index; - caller.bufsize = bufsize; - caller.length = length; - caller.size = size; - caller.type = type; - caller.name = name; - - msg.set_arg0(program); - msg.set_arg1(index); - msg.set_arg2(bufsize); - msg.set_arg3(ToInt(length)); - msg.set_arg4(ToInt(size)); - msg.set_arg5(ToInt(type)); - msg.set_arg6(ToInt(name)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(name), strlen(name) * sizeof(GLchar)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetActiveUniform); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetAttachedShaders(GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - GLsizei maxcount; - GLsizei* count; - GLuint* shaders; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetAttachedShaders(program, maxcount, count, shaders); - return 0; - } - } caller; - caller.program = program; - caller.maxcount = maxcount; - caller.count = count; - caller.shaders = shaders; - - msg.set_arg0(program); - msg.set_arg1(maxcount); - msg.set_arg2(ToInt(count)); - msg.set_arg3(ToInt(shaders)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetAttachedShaders); -} - -int Debug_glGetAttribLocation(GLuint program, const GLchar* name) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - const GLchar* name; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - const int * ret = reinterpret_cast(_c->glGetAttribLocation(program, name)); - msg.set_ret(ToInt(ret)); - return ret; - } - } caller; - caller.program = program; - caller.name = name; - - msg.set_arg0(program); - msg.set_arg1(ToInt(name)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(name), strlen(name) * sizeof(GLchar)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetAttribLocation); - return reinterpret_cast(ret); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetBooleanv(GLenum pname, GLboolean* params) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum pname; - GLboolean* params; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetBooleanv(pname, params); - return 0; - } - } caller; - caller.pname = pname; - caller.params = params; - - msg.set_arg0(pname); - msg.set_arg1(ToInt(params)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetBooleanv); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetBufferParameteriv(GLenum target, GLenum pname, GLint* params) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLenum pname; - GLint* params; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetBufferParameteriv(target, pname, params); - return 0; - } - } caller; - caller.target = target; - caller.pname = pname; - caller.params = params; - - msg.set_arg0(target); - msg.set_arg1(pname); - msg.set_arg2(ToInt(params)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetBufferParameteriv); -} - -GLenum Debug_glGetError(void) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - const int * ret = reinterpret_cast(_c->glGetError()); - msg.set_ret(ToInt(ret)); - return ret; - } - } caller; - - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetError); - return reinterpret_cast(ret); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetFloatv(GLenum pname, GLfloat* params) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum pname; - GLfloat* params; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetFloatv(pname, params); - return 0; - } - } caller; - caller.pname = pname; - caller.params = params; - - msg.set_arg0(pname); - msg.set_arg1(ToInt(params)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetFloatv); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint* params) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLenum attachment; - GLenum pname; - GLint* params; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetFramebufferAttachmentParameteriv(target, attachment, pname, params); - return 0; - } - } caller; - caller.target = target; - caller.attachment = attachment; - caller.pname = pname; - caller.params = params; - - msg.set_arg0(target); - msg.set_arg1(attachment); - msg.set_arg2(pname); - msg.set_arg3(ToInt(params)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetFramebufferAttachmentParameteriv); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetIntegerv(GLenum pname, GLint* params) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum pname; - GLint* params; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetIntegerv(pname, params); - return 0; - } - } caller; - caller.pname = pname; - caller.params = params; - - msg.set_arg0(pname); - msg.set_arg1(ToInt(params)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetIntegerv); -} - -void Debug_glGetProgramiv(GLuint program, GLenum pname, GLint* params) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - GLenum pname; - GLint* params; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - nsecs_t c0 = systemTime(timeMode); - _c->glGetProgramiv(program, pname, params); - msg.set_time((systemTime(timeMode) - c0) * 1e-6f); - msg.mutable_data()->assign(reinterpret_cast(params), 1 * sizeof(GLint)); - return 0; - } - } caller; - caller.program = program; - caller.pname = pname; - caller.params = params; - - msg.set_arg0(program); - msg.set_arg1(pname); - msg.set_arg2(ToInt(params)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetProgramiv); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetProgramInfoLog(GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - GLsizei bufsize; - GLsizei* length; - GLchar* infolog; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - nsecs_t c0 = systemTime(timeMode); - _c->glGetProgramInfoLog(program, bufsize, length, infolog); - msg.set_time((systemTime(timeMode) - c0) * 1e-6f); - msg.mutable_data()->assign(reinterpret_cast(infolog), strlen(infolog) * sizeof(GLchar)); - return 0; - } - } caller; - caller.program = program; - caller.bufsize = bufsize; - caller.length = length; - caller.infolog = infolog; - - msg.set_arg0(program); - msg.set_arg1(bufsize); - msg.set_arg2(ToInt(length)); - msg.set_arg3(ToInt(infolog)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetProgramInfoLog); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint* params) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLenum pname; - GLint* params; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetRenderbufferParameteriv(target, pname, params); - return 0; - } - } caller; - caller.target = target; - caller.pname = pname; - caller.params = params; - - msg.set_arg0(target); - msg.set_arg1(pname); - msg.set_arg2(ToInt(params)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetRenderbufferParameteriv); -} - -void Debug_glGetShaderiv(GLuint shader, GLenum pname, GLint* params) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint shader; - GLenum pname; - GLint* params; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - nsecs_t c0 = systemTime(timeMode); - _c->glGetShaderiv(shader, pname, params); - msg.set_time((systemTime(timeMode) - c0) * 1e-6f); - msg.mutable_data()->assign(reinterpret_cast(params), 1 * sizeof(GLint)); - return 0; - } - } caller; - caller.shader = shader; - caller.pname = pname; - caller.params = params; - - msg.set_arg0(shader); - msg.set_arg1(pname); - msg.set_arg2(ToInt(params)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetShaderiv); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetShaderInfoLog(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint shader; - GLsizei bufsize; - GLsizei* length; - GLchar* infolog; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - nsecs_t c0 = systemTime(timeMode); - _c->glGetShaderInfoLog(shader, bufsize, length, infolog); - msg.set_time((systemTime(timeMode) - c0) * 1e-6f); - msg.mutable_data()->assign(reinterpret_cast(infolog), strlen(infolog) * sizeof(GLchar)); - return 0; - } - } caller; - caller.shader = shader; - caller.bufsize = bufsize; - caller.length = length; - caller.infolog = infolog; - - msg.set_arg0(shader); - msg.set_arg1(bufsize); - msg.set_arg2(ToInt(length)); - msg.set_arg3(ToInt(infolog)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetShaderInfoLog); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum shadertype; - GLenum precisiontype; - GLint* range; - GLint* precision; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetShaderPrecisionFormat(shadertype, precisiontype, range, precision); - return 0; - } - } caller; - caller.shadertype = shadertype; - caller.precisiontype = precisiontype; - caller.range = range; - caller.precision = precision; - - msg.set_arg0(shadertype); - msg.set_arg1(precisiontype); - msg.set_arg2(ToInt(range)); - msg.set_arg3(ToInt(precision)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetShaderPrecisionFormat); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetShaderSource(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint shader; - GLsizei bufsize; - GLsizei* length; - GLchar* source; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - nsecs_t c0 = systemTime(timeMode); - _c->glGetShaderSource(shader, bufsize, length, source); - msg.set_time((systemTime(timeMode) - c0) * 1e-6f); - msg.mutable_data()->assign(reinterpret_cast(source), strlen(source) * sizeof(GLchar)); - return 0; - } - } caller; - caller.shader = shader; - caller.bufsize = bufsize; - caller.length = length; - caller.source = source; - - msg.set_arg0(shader); - msg.set_arg1(bufsize); - msg.set_arg2(ToInt(length)); - msg.set_arg3(ToInt(source)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetShaderSource); -} - -// FIXME: this function has pointers, it should be hand written -const GLubyte* Debug_glGetString(GLenum name) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum name; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - const int * ret = reinterpret_cast(_c->glGetString(name)); - msg.set_ret(ToInt(ret)); - return ret; - } - } caller; - caller.name = name; - - msg.set_arg0(name); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetString); - return reinterpret_cast(ret); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetTexParameterfv(GLenum target, GLenum pname, GLfloat* params) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLenum pname; - GLfloat* params; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetTexParameterfv(target, pname, params); - return 0; - } - } caller; - caller.target = target; - caller.pname = pname; - caller.params = params; - - msg.set_arg0(target); - msg.set_arg1(pname); - msg.set_arg2(ToInt(params)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetTexParameterfv); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetTexParameteriv(GLenum target, GLenum pname, GLint* params) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLenum pname; - GLint* params; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetTexParameteriv(target, pname, params); - return 0; - } - } caller; - caller.target = target; - caller.pname = pname; - caller.params = params; - - msg.set_arg0(target); - msg.set_arg1(pname); - msg.set_arg2(ToInt(params)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetTexParameteriv); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetUniformfv(GLuint program, GLint location, GLfloat* params) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - GLint location; - GLfloat* params; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetUniformfv(program, location, params); - return 0; - } - } caller; - caller.program = program; - caller.location = location; - caller.params = params; - - msg.set_arg0(program); - msg.set_arg1(location); - msg.set_arg2(ToInt(params)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetUniformfv); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetUniformiv(GLuint program, GLint location, GLint* params) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - GLint location; - GLint* params; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetUniformiv(program, location, params); - return 0; - } - } caller; - caller.program = program; - caller.location = location; - caller.params = params; - - msg.set_arg0(program); - msg.set_arg1(location); - msg.set_arg2(ToInt(params)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetUniformiv); -} - -int Debug_glGetUniformLocation(GLuint program, const GLchar* name) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - const GLchar* name; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - const int * ret = reinterpret_cast(_c->glGetUniformLocation(program, name)); - msg.set_ret(ToInt(ret)); - return ret; - } - } caller; - caller.program = program; - caller.name = name; - - msg.set_arg0(program); - msg.set_arg1(ToInt(name)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(name), strlen(name) * sizeof(GLchar)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetUniformLocation); - return reinterpret_cast(ret); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat* params) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint index; - GLenum pname; - GLfloat* params; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetVertexAttribfv(index, pname, params); - return 0; - } - } caller; - caller.index = index; - caller.pname = pname; - caller.params = params; - - msg.set_arg0(index); - msg.set_arg1(pname); - msg.set_arg2(ToInt(params)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetVertexAttribfv); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetVertexAttribiv(GLuint index, GLenum pname, GLint* params) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint index; - GLenum pname; - GLint* params; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetVertexAttribiv(index, pname, params); - return 0; - } - } caller; - caller.index = index; - caller.pname = pname; - caller.params = params; - - msg.set_arg0(index); - msg.set_arg1(pname); - msg.set_arg2(ToInt(params)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetVertexAttribiv); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid** pointer) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint index; - GLenum pname; - GLvoid** pointer; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glGetVertexAttribPointerv(index, pname, pointer); - return 0; - } - } caller; - caller.index = index; - caller.pname = pname; - caller.pointer = pointer; - - msg.set_arg0(index); - msg.set_arg1(pname); - msg.set_arg2(ToInt(pointer)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glGetVertexAttribPointerv); -} - -void Debug_glHint(GLenum target, GLenum mode) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLenum mode; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glHint(target, mode); - return 0; - } - } caller; - caller.target = target; - caller.mode = mode; - - msg.set_arg0(target); - msg.set_arg1(mode); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glHint); -} - -GLboolean Debug_glIsBuffer(GLuint buffer) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint buffer; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - const int * ret = reinterpret_cast(_c->glIsBuffer(buffer)); - msg.set_ret(ToInt(ret)); - return ret; - } - } caller; - caller.buffer = buffer; - - msg.set_arg0(buffer); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glIsBuffer); - return static_cast(reinterpret_cast(ret)); -} - -GLboolean Debug_glIsEnabled(GLenum cap) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum cap; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - const int * ret = reinterpret_cast(_c->glIsEnabled(cap)); - msg.set_ret(ToInt(ret)); - return ret; - } - } caller; - caller.cap = cap; - - msg.set_arg0(cap); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glIsEnabled); - return static_cast(reinterpret_cast(ret)); -} - -GLboolean Debug_glIsFramebuffer(GLuint framebuffer) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint framebuffer; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - const int * ret = reinterpret_cast(_c->glIsFramebuffer(framebuffer)); - msg.set_ret(ToInt(ret)); - return ret; - } - } caller; - caller.framebuffer = framebuffer; - - msg.set_arg0(framebuffer); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glIsFramebuffer); - return static_cast(reinterpret_cast(ret)); -} - -GLboolean Debug_glIsProgram(GLuint program) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - const int * ret = reinterpret_cast(_c->glIsProgram(program)); - msg.set_ret(ToInt(ret)); - return ret; - } - } caller; - caller.program = program; - - msg.set_arg0(program); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glIsProgram); - return static_cast(reinterpret_cast(ret)); -} - -GLboolean Debug_glIsRenderbuffer(GLuint renderbuffer) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint renderbuffer; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - const int * ret = reinterpret_cast(_c->glIsRenderbuffer(renderbuffer)); - msg.set_ret(ToInt(ret)); - return ret; - } - } caller; - caller.renderbuffer = renderbuffer; - - msg.set_arg0(renderbuffer); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glIsRenderbuffer); - return static_cast(reinterpret_cast(ret)); -} - -GLboolean Debug_glIsShader(GLuint shader) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint shader; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - const int * ret = reinterpret_cast(_c->glIsShader(shader)); - msg.set_ret(ToInt(ret)); - return ret; - } - } caller; - caller.shader = shader; - - msg.set_arg0(shader); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glIsShader); - return static_cast(reinterpret_cast(ret)); -} - -GLboolean Debug_glIsTexture(GLuint texture) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint texture; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - const int * ret = reinterpret_cast(_c->glIsTexture(texture)); - msg.set_ret(ToInt(ret)); - return ret; - } - } caller; - caller.texture = texture; - - msg.set_arg0(texture); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glIsTexture); - return static_cast(reinterpret_cast(ret)); -} - -void Debug_glLineWidth(GLfloat width) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLfloat width; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glLineWidth(width); - return 0; - } - } caller; - caller.width = width; - - msg.set_arg0(ToInt(width)); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glLineWidth); -} - -void Debug_glLinkProgram(GLuint program) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glLinkProgram(program); - return 0; - } - } caller; - caller.program = program; - - msg.set_arg0(program); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glLinkProgram); -} - -void Debug_glPixelStorei(GLenum pname, GLint param) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum pname; - GLint param; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glPixelStorei(pname, param); - return 0; - } - } caller; - caller.pname = pname; - caller.param = param; - - msg.set_arg0(pname); - msg.set_arg1(param); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glPixelStorei); -} - -void Debug_glPolygonOffset(GLfloat factor, GLfloat units) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLfloat factor; - GLfloat units; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glPolygonOffset(factor, units); - return 0; - } - } caller; - caller.factor = factor; - caller.units = units; - - msg.set_arg0(ToInt(factor)); - msg.set_arg1(ToInt(units)); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glPolygonOffset); -} - -void Debug_glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint x; - GLint y; - GLsizei width; - GLsizei height; - GLenum format; - GLenum type; - GLvoid* pixels; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glReadPixels(x, y, width, height, format, type, pixels); -#ifdef EXTEND_AFTER_CALL_Debug_glReadPixels - EXTEND_AFTER_CALL_Debug_glReadPixels; -#endif - return 0; - } - } caller; - caller.x = x; - caller.y = y; - caller.width = width; - caller.height = height; - caller.format = format; - caller.type = type; - caller.pixels = pixels; - - msg.set_arg0(x); - msg.set_arg1(y); - msg.set_arg2(width); - msg.set_arg3(height); - msg.set_arg4(format); - msg.set_arg5(type); - msg.set_arg6(ToInt(pixels)); - - // FIXME: check for pointer usage -#ifdef EXTEND_Debug_glReadPixels - EXTEND_Debug_glReadPixels; -#endif - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glReadPixels); -} - -void Debug_glReleaseShaderCompiler(void) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glReleaseShaderCompiler(); - return 0; - } - } caller; - - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glReleaseShaderCompiler); -} - -void Debug_glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLenum internalformat; - GLsizei width; - GLsizei height; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glRenderbufferStorage(target, internalformat, width, height); - return 0; - } - } caller; - caller.target = target; - caller.internalformat = internalformat; - caller.width = width; - caller.height = height; - - msg.set_arg0(target); - msg.set_arg1(internalformat); - msg.set_arg2(width); - msg.set_arg3(height); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glRenderbufferStorage); -} - -void Debug_glSampleCoverage(GLclampf value, GLboolean invert) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLclampf value; - GLboolean invert; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glSampleCoverage(value, invert); - return 0; - } - } caller; - caller.value = value; - caller.invert = invert; - - msg.set_arg0(ToInt(value)); - msg.set_arg1(invert); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glSampleCoverage); -} - -void Debug_glScissor(GLint x, GLint y, GLsizei width, GLsizei height) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint x; - GLint y; - GLsizei width; - GLsizei height; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glScissor(x, y, width, height); - return 0; - } - } caller; - caller.x = x; - caller.y = y; - caller.width = width; - caller.height = height; - - msg.set_arg0(x); - msg.set_arg1(y); - msg.set_arg2(width); - msg.set_arg3(height); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glScissor); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glShaderBinary(GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLsizei n; - const GLuint* shaders; - GLenum binaryformat; - const GLvoid* binary; - GLsizei length; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glShaderBinary(n, shaders, binaryformat, binary, length); - return 0; - } - } caller; - caller.n = n; - caller.shaders = shaders; - caller.binaryformat = binaryformat; - caller.binary = binary; - caller.length = length; - - msg.set_arg0(n); - msg.set_arg1(ToInt(shaders)); - msg.set_arg2(binaryformat); - msg.set_arg3(ToInt(binary)); - msg.set_arg4(length); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glShaderBinary); -} - -void Debug_glShaderSource(GLuint shader, GLsizei count, const GLchar** string, const GLint* length) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint shader; - GLsizei count; - const GLchar** string; - const GLint* length; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glShaderSource(shader, count, string, length); -#ifdef EXTEND_AFTER_CALL_Debug_glShaderSource - EXTEND_AFTER_CALL_Debug_glShaderSource; -#endif - return 0; - } - } caller; - caller.shader = shader; - caller.count = count; - caller.string = string; - caller.length = length; - - msg.set_arg0(shader); - msg.set_arg1(count); - msg.set_arg2(ToInt(string)); - msg.set_arg3(ToInt(length)); - - // FIXME: check for pointer usage -#ifdef EXTEND_Debug_glShaderSource - EXTEND_Debug_glShaderSource; -#endif - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glShaderSource); -} - -void Debug_glStencilFunc(GLenum func, GLint ref, GLuint mask) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum func; - GLint ref; - GLuint mask; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glStencilFunc(func, ref, mask); - return 0; - } - } caller; - caller.func = func; - caller.ref = ref; - caller.mask = mask; - - msg.set_arg0(func); - msg.set_arg1(ref); - msg.set_arg2(mask); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glStencilFunc); -} - -void Debug_glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum face; - GLenum func; - GLint ref; - GLuint mask; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glStencilFuncSeparate(face, func, ref, mask); - return 0; - } - } caller; - caller.face = face; - caller.func = func; - caller.ref = ref; - caller.mask = mask; - - msg.set_arg0(face); - msg.set_arg1(func); - msg.set_arg2(ref); - msg.set_arg3(mask); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glStencilFuncSeparate); -} - -void Debug_glStencilMask(GLuint mask) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint mask; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glStencilMask(mask); - return 0; - } - } caller; - caller.mask = mask; - - msg.set_arg0(mask); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glStencilMask); -} - -void Debug_glStencilMaskSeparate(GLenum face, GLuint mask) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum face; - GLuint mask; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glStencilMaskSeparate(face, mask); - return 0; - } - } caller; - caller.face = face; - caller.mask = mask; - - msg.set_arg0(face); - msg.set_arg1(mask); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glStencilMaskSeparate); -} - -void Debug_glStencilOp(GLenum fail, GLenum zfail, GLenum zpass) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum fail; - GLenum zfail; - GLenum zpass; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glStencilOp(fail, zfail, zpass); - return 0; - } - } caller; - caller.fail = fail; - caller.zfail = zfail; - caller.zpass = zpass; - - msg.set_arg0(fail); - msg.set_arg1(zfail); - msg.set_arg2(zpass); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glStencilOp); -} - -void Debug_glStencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum face; - GLenum fail; - GLenum zfail; - GLenum zpass; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glStencilOpSeparate(face, fail, zfail, zpass); - return 0; - } - } caller; - caller.face = face; - caller.fail = fail; - caller.zfail = zfail; - caller.zpass = zpass; - - msg.set_arg0(face); - msg.set_arg1(fail); - msg.set_arg2(zfail); - msg.set_arg3(zpass); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glStencilOpSeparate); -} - -void Debug_glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLint level; - GLint internalformat; - GLsizei width; - GLsizei height; - GLint border; - GLenum format; - GLenum type; - const GLvoid* pixels; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels); -#ifdef EXTEND_AFTER_CALL_Debug_glTexImage2D - EXTEND_AFTER_CALL_Debug_glTexImage2D; -#endif - return 0; - } - } caller; - caller.target = target; - caller.level = level; - caller.internalformat = internalformat; - caller.width = width; - caller.height = height; - caller.border = border; - caller.format = format; - caller.type = type; - caller.pixels = pixels; - - msg.set_arg0(target); - msg.set_arg1(level); - msg.set_arg2(internalformat); - msg.set_arg3(width); - msg.set_arg4(height); - msg.set_arg5(border); - msg.set_arg6(format); - msg.set_arg7(type); - msg.set_arg8(ToInt(pixels)); - - // FIXME: check for pointer usage -#ifdef EXTEND_Debug_glTexImage2D - EXTEND_Debug_glTexImage2D; -#endif - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glTexImage2D); -} - -void Debug_glTexParameterf(GLenum target, GLenum pname, GLfloat param) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLenum pname; - GLfloat param; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glTexParameterf(target, pname, param); - return 0; - } - } caller; - caller.target = target; - caller.pname = pname; - caller.param = param; - - msg.set_arg0(target); - msg.set_arg1(pname); - msg.set_arg2(ToInt(param)); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glTexParameterf); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glTexParameterfv(GLenum target, GLenum pname, const GLfloat* params) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLenum pname; - const GLfloat* params; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glTexParameterfv(target, pname, params); - return 0; - } - } caller; - caller.target = target; - caller.pname = pname; - caller.params = params; - - msg.set_arg0(target); - msg.set_arg1(pname); - msg.set_arg2(ToInt(params)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glTexParameterfv); -} - -void Debug_glTexParameteri(GLenum target, GLenum pname, GLint param) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLenum pname; - GLint param; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glTexParameteri(target, pname, param); - return 0; - } - } caller; - caller.target = target; - caller.pname = pname; - caller.param = param; - - msg.set_arg0(target); - msg.set_arg1(pname); - msg.set_arg2(param); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glTexParameteri); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glTexParameteriv(GLenum target, GLenum pname, const GLint* params) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLenum pname; - const GLint* params; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glTexParameteriv(target, pname, params); - return 0; - } - } caller; - caller.target = target; - caller.pname = pname; - caller.params = params; - - msg.set_arg0(target); - msg.set_arg1(pname); - msg.set_arg2(ToInt(params)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glTexParameteriv); -} - -void Debug_glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLenum target; - GLint level; - GLint xoffset; - GLint yoffset; - GLsizei width; - GLsizei height; - GLenum format; - GLenum type; - const GLvoid* pixels; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels); -#ifdef EXTEND_AFTER_CALL_Debug_glTexSubImage2D - EXTEND_AFTER_CALL_Debug_glTexSubImage2D; -#endif - return 0; - } - } caller; - caller.target = target; - caller.level = level; - caller.xoffset = xoffset; - caller.yoffset = yoffset; - caller.width = width; - caller.height = height; - caller.format = format; - caller.type = type; - caller.pixels = pixels; - - msg.set_arg0(target); - msg.set_arg1(level); - msg.set_arg2(xoffset); - msg.set_arg3(yoffset); - msg.set_arg4(width); - msg.set_arg5(height); - msg.set_arg6(format); - msg.set_arg7(type); - msg.set_arg8(ToInt(pixels)); - - // FIXME: check for pointer usage -#ifdef EXTEND_Debug_glTexSubImage2D - EXTEND_Debug_glTexSubImage2D; -#endif - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glTexSubImage2D); -} - -void Debug_glUniform1f(GLint location, GLfloat x) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLfloat x; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniform1f(location, x); - return 0; - } - } caller; - caller.location = location; - caller.x = x; - - msg.set_arg0(location); - msg.set_arg1(ToInt(x)); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniform1f); -} - -void Debug_glUniform1fv(GLint location, GLsizei count, const GLfloat* v) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLsizei count; - const GLfloat* v; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniform1fv(location, count, v); - return 0; - } - } caller; - caller.location = location; - caller.count = count; - caller.v = v; - - msg.set_arg0(location); - msg.set_arg1(count); - msg.set_arg2(ToInt(v)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(v), 1*count * sizeof(GLfloat)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniform1fv); -} - -void Debug_glUniform1i(GLint location, GLint x) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLint x; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniform1i(location, x); - return 0; - } - } caller; - caller.location = location; - caller.x = x; - - msg.set_arg0(location); - msg.set_arg1(x); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniform1i); -} - -void Debug_glUniform1iv(GLint location, GLsizei count, const GLint* v) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLsizei count; - const GLint* v; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniform1iv(location, count, v); - return 0; - } - } caller; - caller.location = location; - caller.count = count; - caller.v = v; - - msg.set_arg0(location); - msg.set_arg1(count); - msg.set_arg2(ToInt(v)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(v), 1*count * sizeof(GLint)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniform1iv); -} - -void Debug_glUniform2f(GLint location, GLfloat x, GLfloat y) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLfloat x; - GLfloat y; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniform2f(location, x, y); - return 0; - } - } caller; - caller.location = location; - caller.x = x; - caller.y = y; - - msg.set_arg0(location); - msg.set_arg1(ToInt(x)); - msg.set_arg2(ToInt(y)); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniform2f); -} - -void Debug_glUniform2fv(GLint location, GLsizei count, const GLfloat* v) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLsizei count; - const GLfloat* v; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniform2fv(location, count, v); - return 0; - } - } caller; - caller.location = location; - caller.count = count; - caller.v = v; - - msg.set_arg0(location); - msg.set_arg1(count); - msg.set_arg2(ToInt(v)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(v), 2*count * sizeof(GLfloat)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniform2fv); -} - -void Debug_glUniform2i(GLint location, GLint x, GLint y) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLint x; - GLint y; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniform2i(location, x, y); - return 0; - } - } caller; - caller.location = location; - caller.x = x; - caller.y = y; - - msg.set_arg0(location); - msg.set_arg1(x); - msg.set_arg2(y); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniform2i); -} - -void Debug_glUniform2iv(GLint location, GLsizei count, const GLint* v) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLsizei count; - const GLint* v; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniform2iv(location, count, v); - return 0; - } - } caller; - caller.location = location; - caller.count = count; - caller.v = v; - - msg.set_arg0(location); - msg.set_arg1(count); - msg.set_arg2(ToInt(v)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(v), 2*count * sizeof(GLint)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniform2iv); -} - -void Debug_glUniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLfloat x; - GLfloat y; - GLfloat z; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniform3f(location, x, y, z); - return 0; - } - } caller; - caller.location = location; - caller.x = x; - caller.y = y; - caller.z = z; - - msg.set_arg0(location); - msg.set_arg1(ToInt(x)); - msg.set_arg2(ToInt(y)); - msg.set_arg3(ToInt(z)); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniform3f); -} - -void Debug_glUniform3fv(GLint location, GLsizei count, const GLfloat* v) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLsizei count; - const GLfloat* v; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniform3fv(location, count, v); - return 0; - } - } caller; - caller.location = location; - caller.count = count; - caller.v = v; - - msg.set_arg0(location); - msg.set_arg1(count); - msg.set_arg2(ToInt(v)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(v), 3*count * sizeof(GLfloat)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniform3fv); -} - -void Debug_glUniform3i(GLint location, GLint x, GLint y, GLint z) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLint x; - GLint y; - GLint z; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniform3i(location, x, y, z); - return 0; - } - } caller; - caller.location = location; - caller.x = x; - caller.y = y; - caller.z = z; - - msg.set_arg0(location); - msg.set_arg1(x); - msg.set_arg2(y); - msg.set_arg3(z); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniform3i); -} - -void Debug_glUniform3iv(GLint location, GLsizei count, const GLint* v) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLsizei count; - const GLint* v; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniform3iv(location, count, v); - return 0; - } - } caller; - caller.location = location; - caller.count = count; - caller.v = v; - - msg.set_arg0(location); - msg.set_arg1(count); - msg.set_arg2(ToInt(v)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(v), 3*count * sizeof(GLint)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniform3iv); -} - -void Debug_glUniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLfloat x; - GLfloat y; - GLfloat z; - GLfloat w; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniform4f(location, x, y, z, w); - return 0; - } - } caller; - caller.location = location; - caller.x = x; - caller.y = y; - caller.z = z; - caller.w = w; - - msg.set_arg0(location); - msg.set_arg1(ToInt(x)); - msg.set_arg2(ToInt(y)); - msg.set_arg3(ToInt(z)); - msg.set_arg4(ToInt(w)); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniform4f); -} - -void Debug_glUniform4fv(GLint location, GLsizei count, const GLfloat* v) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLsizei count; - const GLfloat* v; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniform4fv(location, count, v); - return 0; - } - } caller; - caller.location = location; - caller.count = count; - caller.v = v; - - msg.set_arg0(location); - msg.set_arg1(count); - msg.set_arg2(ToInt(v)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(v), 4*count * sizeof(GLfloat)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniform4fv); -} - -void Debug_glUniform4i(GLint location, GLint x, GLint y, GLint z, GLint w) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLint x; - GLint y; - GLint z; - GLint w; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniform4i(location, x, y, z, w); - return 0; - } - } caller; - caller.location = location; - caller.x = x; - caller.y = y; - caller.z = z; - caller.w = w; - - msg.set_arg0(location); - msg.set_arg1(x); - msg.set_arg2(y); - msg.set_arg3(z); - msg.set_arg4(w); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniform4i); -} - -void Debug_glUniform4iv(GLint location, GLsizei count, const GLint* v) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLsizei count; - const GLint* v; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniform4iv(location, count, v); - return 0; - } - } caller; - caller.location = location; - caller.count = count; - caller.v = v; - - msg.set_arg0(location); - msg.set_arg1(count); - msg.set_arg2(ToInt(v)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(v), 4*count * sizeof(GLint)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniform4iv); -} - -void Debug_glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLsizei count; - GLboolean transpose; - const GLfloat* value; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniformMatrix2fv(location, count, transpose, value); - return 0; - } - } caller; - caller.location = location; - caller.count = count; - caller.transpose = transpose; - caller.value = value; - - msg.set_arg0(location); - msg.set_arg1(count); - msg.set_arg2(transpose); - msg.set_arg3(ToInt(value)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(value), 4*count * sizeof(GLfloat)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniformMatrix2fv); -} - -void Debug_glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLsizei count; - GLboolean transpose; - const GLfloat* value; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniformMatrix3fv(location, count, transpose, value); - return 0; - } - } caller; - caller.location = location; - caller.count = count; - caller.transpose = transpose; - caller.value = value; - - msg.set_arg0(location); - msg.set_arg1(count); - msg.set_arg2(transpose); - msg.set_arg3(ToInt(value)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(value), 9*count * sizeof(GLfloat)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniformMatrix3fv); -} - -void Debug_glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint location; - GLsizei count; - GLboolean transpose; - const GLfloat* value; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUniformMatrix4fv(location, count, transpose, value); - return 0; - } - } caller; - caller.location = location; - caller.count = count; - caller.transpose = transpose; - caller.value = value; - - msg.set_arg0(location); - msg.set_arg1(count); - msg.set_arg2(transpose); - msg.set_arg3(ToInt(value)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(value), 16*count * sizeof(GLfloat)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUniformMatrix4fv); -} - -void Debug_glUseProgram(GLuint program) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glUseProgram(program); - getDbgContextThreadSpecific()->glUseProgram(program); - return 0; - } - } caller; - caller.program = program; - - msg.set_arg0(program); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glUseProgram); -} - -void Debug_glValidateProgram(GLuint program) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint program; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glValidateProgram(program); - return 0; - } - } caller; - caller.program = program; - - msg.set_arg0(program); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glValidateProgram); -} - -void Debug_glVertexAttrib1f(GLuint indx, GLfloat x) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint indx; - GLfloat x; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glVertexAttrib1f(indx, x); - return 0; - } - } caller; - caller.indx = indx; - caller.x = x; - - msg.set_arg0(indx); - msg.set_arg1(ToInt(x)); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glVertexAttrib1f); -} - -void Debug_glVertexAttrib1fv(GLuint indx, const GLfloat* values) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint indx; - const GLfloat* values; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glVertexAttrib1fv(indx, values); - return 0; - } - } caller; - caller.indx = indx; - caller.values = values; - - msg.set_arg0(indx); - msg.set_arg1(ToInt(values)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(values), 1 * sizeof(GLfloat)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glVertexAttrib1fv); -} - -void Debug_glVertexAttrib2f(GLuint indx, GLfloat x, GLfloat y) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint indx; - GLfloat x; - GLfloat y; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glVertexAttrib2f(indx, x, y); - return 0; - } - } caller; - caller.indx = indx; - caller.x = x; - caller.y = y; - - msg.set_arg0(indx); - msg.set_arg1(ToInt(x)); - msg.set_arg2(ToInt(y)); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glVertexAttrib2f); -} - -void Debug_glVertexAttrib2fv(GLuint indx, const GLfloat* values) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint indx; - const GLfloat* values; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glVertexAttrib2fv(indx, values); - return 0; - } - } caller; - caller.indx = indx; - caller.values = values; - - msg.set_arg0(indx); - msg.set_arg1(ToInt(values)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(values), 2 * sizeof(GLfloat)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glVertexAttrib2fv); -} - -void Debug_glVertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint indx; - GLfloat x; - GLfloat y; - GLfloat z; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glVertexAttrib3f(indx, x, y, z); - return 0; - } - } caller; - caller.indx = indx; - caller.x = x; - caller.y = y; - caller.z = z; - - msg.set_arg0(indx); - msg.set_arg1(ToInt(x)); - msg.set_arg2(ToInt(y)); - msg.set_arg3(ToInt(z)); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glVertexAttrib3f); -} - -void Debug_glVertexAttrib3fv(GLuint indx, const GLfloat* values) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint indx; - const GLfloat* values; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glVertexAttrib3fv(indx, values); - return 0; - } - } caller; - caller.indx = indx; - caller.values = values; - - msg.set_arg0(indx); - msg.set_arg1(ToInt(values)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(values), 3 * sizeof(GLfloat)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glVertexAttrib3fv); -} - -void Debug_glVertexAttrib4f(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint indx; - GLfloat x; - GLfloat y; - GLfloat z; - GLfloat w; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glVertexAttrib4f(indx, x, y, z, w); - return 0; - } - } caller; - caller.indx = indx; - caller.x = x; - caller.y = y; - caller.z = z; - caller.w = w; - - msg.set_arg0(indx); - msg.set_arg1(ToInt(x)); - msg.set_arg2(ToInt(y)); - msg.set_arg3(ToInt(z)); - msg.set_arg4(ToInt(w)); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glVertexAttrib4f); -} - -void Debug_glVertexAttrib4fv(GLuint indx, const GLfloat* values) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint indx; - const GLfloat* values; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glVertexAttrib4fv(indx, values); - return 0; - } - } caller; - caller.indx = indx; - caller.values = values; - - msg.set_arg0(indx); - msg.set_arg1(ToInt(values)); - - // FIXME: check for pointer usage - msg.mutable_data()->assign(reinterpret_cast(values), 4 * sizeof(GLfloat)); - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glVertexAttrib4fv); -} - -// FIXME: this function has pointers, it should be hand written -void Debug_glVertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLuint indx; - GLint size; - GLenum type; - GLboolean normalized; - GLsizei stride; - const GLvoid* ptr; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glVertexAttribPointer(indx, size, type, normalized, stride, ptr); - getDbgContextThreadSpecific()->glVertexAttribPointer(indx, size, type, normalized, stride, ptr); - return 0; - } - } caller; - caller.indx = indx; - caller.size = size; - caller.type = type; - caller.normalized = normalized; - caller.stride = stride; - caller.ptr = ptr; - - msg.set_arg0(indx); - msg.set_arg1(size); - msg.set_arg2(type); - msg.set_arg3(normalized); - msg.set_arg4(stride); - msg.set_arg5(ToInt(ptr)); - - // FIXME: check for pointer usage - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glVertexAttribPointer); -} - -void Debug_glViewport(GLint x, GLint y, GLsizei width, GLsizei height) -{ - glesv2debugger::Message msg; - struct : public FunctionCall { - GLint x; - GLint y; - GLsizei width; - GLsizei height; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - _c->glViewport(x, y, width, height); - return 0; - } - } caller; - caller.x = x; - caller.y = y; - caller.width = width; - caller.height = height; - - msg.set_arg0(x); - msg.set_arg1(y); - msg.set_arg2(width); - msg.set_arg3(height); - - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_glViewport); -} - -// FIXME: the following functions should be written by hand -void Debug_glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data); -void Debug_glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data); -void Debug_glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name); -void Debug_glGetActiveUniform(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name); -void Debug_glGetAttachedShaders(GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders); -void Debug_glGetBooleanv(GLenum pname, GLboolean* params); -void Debug_glGetBufferParameteriv(GLenum target, GLenum pname, GLint* params); -void Debug_glGetFloatv(GLenum pname, GLfloat* params); -void Debug_glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint* params); -void Debug_glGetIntegerv(GLenum pname, GLint* params); -void Debug_glGetProgramInfoLog(GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog); -void Debug_glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint* params); -void Debug_glGetShaderInfoLog(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog); -void Debug_glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision); -void Debug_glGetShaderSource(GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source); -const GLubyte* Debug_glGetString(GLenum name); -void Debug_glGetTexParameterfv(GLenum target, GLenum pname, GLfloat* params); -void Debug_glGetTexParameteriv(GLenum target, GLenum pname, GLint* params); -void Debug_glGetUniformfv(GLuint program, GLint location, GLfloat* params); -void Debug_glGetUniformiv(GLuint program, GLint location, GLint* params); -void Debug_glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat* params); -void Debug_glGetVertexAttribiv(GLuint index, GLenum pname, GLint* params); -void Debug_glGetVertexAttribPointerv(GLuint index, GLenum pname, GLvoid** pointer); -void Debug_glShaderBinary(GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length); -void Debug_glTexParameterfv(GLenum target, GLenum pname, const GLfloat* params); -void Debug_glTexParameteriv(GLenum target, GLenum pname, const GLint* params); -void Debug_glVertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr); diff --git a/opengl/libs/GLES2_dbg/src/api.h b/opengl/libs/GLES2_dbg/src/api.h deleted file mode 100644 index 0b227bc66c..0000000000 --- a/opengl/libs/GLES2_dbg/src/api.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - ** Copyright 2011, The Android Open Source Project - ** - ** Licensed under the Apache License, Version 2.0 (the "License"); - ** you may not use this file except in compliance with the License. - ** You may obtain a copy of the License at - ** - ** http://www.apache.org/licenses/LICENSE-2.0 - ** - ** Unless required by applicable law or agreed to in writing, software - ** distributed under the License is distributed on an "AS IS" BASIS, - ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ** See the License for the specific language governing permissions and - ** limitations under the License. - */ - -#define EXTEND_Debug_glCopyTexImage2D \ - DbgContext * const dbg = getDbgContextThreadSpecific(); \ - void * readData = dbg->GetReadPixelsBuffer(4 * width * height); \ - /* pick easy format for client to convert */ \ - dbg->hooks->gl.glReadPixels(x, y, width, height, GL_RGBA, GL_UNSIGNED_BYTE, readData); \ - dbg->CompressReadPixelBuffer(msg.mutable_data()); \ - msg.set_data_type(msg.ReferencedImage); \ - msg.set_pixel_format(GL_RGBA); \ - msg.set_pixel_type(GL_UNSIGNED_BYTE); - -#define EXTEND_Debug_glCopyTexSubImage2D EXTEND_Debug_glCopyTexImage2D - -#define EXTEND_AFTER_CALL_Debug_glReadPixels \ - { \ - DbgContext * const dbg = getDbgContextThreadSpecific(); \ - if (dbg->IsReadPixelBuffer(pixels)) { \ - dbg->CompressReadPixelBuffer(msg.mutable_data()); \ - msg.set_data_type(msg.ReferencedImage); \ - } else { \ - const unsigned int size = width * height * GetBytesPerPixel(format, type); \ - dbg->Compress(pixels, size, msg.mutable_data()); \ - msg.set_data_type(msg.NonreferencedImage); \ - } \ - } - -#define EXTEND_Debug_glShaderSource \ - std::string * const data = msg.mutable_data(); \ - for (unsigned i = 0; i < count; i++) \ - if (!length || length[i] < 0) \ - data->append(string[i]); \ - else \ - data->append(string[i], length[i]); - -#define EXTEND_Debug_glTexImage2D \ - if (pixels) { \ - DbgContext * const dbg = getDbgContextThreadSpecific(); \ - const unsigned size = GetBytesPerPixel(format, type) * width * height; \ - assert(0 < size); \ - dbg->Compress(pixels, size, msg.mutable_data()); \ - } - -#define EXTEND_Debug_glTexSubImage2D EXTEND_Debug_glTexImage2D diff --git a/opengl/libs/GLES2_dbg/src/caller.cpp b/opengl/libs/GLES2_dbg/src/caller.cpp deleted file mode 100644 index 70d23d67ca..0000000000 --- a/opengl/libs/GLES2_dbg/src/caller.cpp +++ /dev/null @@ -1,778 +0,0 @@ -/* - ** Copyright 2011, The Android Open Source Project - ** - ** Licensed under the Apache License, Version 2.0 (the "License"); - ** you may not use this file except in compliance with the License. - ** You may obtain a copy of the License at - ** - ** http://www.apache.org/licenses/LICENSE-2.0 - ** - ** Unless required by applicable law or agreed to in writing, software - ** distributed under the License is distributed on an "AS IS" BASIS, - ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ** See the License for the specific language governing permissions and - ** limitations under the License. - */ - -// auto generated by generate_caller_cpp.py -// implement declarations in caller.h - -#include "header.h" - -namespace android { - -static const int * GenerateCall_glCompressedTexImage2D(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glCompressedTexSubImage2D(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glDrawElements(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGenBuffers(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGenFramebuffers(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGenRenderbuffers(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGenTextures(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetActiveAttrib(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetActiveUniform(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetAttachedShaders(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetBooleanv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetBufferParameteriv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetFloatv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetFramebufferAttachmentParameteriv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetIntegerv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetProgramiv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetProgramInfoLog(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetRenderbufferParameteriv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetShaderiv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetShaderInfoLog(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetShaderPrecisionFormat(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetShaderSource(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetString(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetTexParameterfv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetTexParameteriv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetUniformfv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetUniformiv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetVertexAttribfv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetVertexAttribiv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glGetVertexAttribPointerv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glReadPixels(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glShaderBinary(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glShaderSource(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glTexImage2D(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glTexParameterfv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glTexParameteriv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glTexSubImage2D(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); -static const int * GenerateCall_glVertexAttribPointer(DbgContext * const dbg, - const glesv2debugger::Message & cmd, glesv2debugger::Message & msg, const int * const prevRet); - -#include "caller.h" - -const int * GenerateCall(DbgContext * const dbg, const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - ALOGD("GenerateCall function=%u", cmd.function()); - const int * ret = prevRet; // only some functions have return value - nsecs_t c0 = systemTime(timeMode); - switch (cmd.function()) { case glesv2debugger::Message_Function_glActiveTexture: - dbg->hooks->gl.glActiveTexture( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glAttachShader: - dbg->hooks->gl.glAttachShader( - static_cast(cmd.arg0()), static_cast(cmd.arg1()) - ); - break; - case glesv2debugger::Message_Function_glBindAttribLocation: - dbg->hooks->gl.glBindAttribLocation( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glBindBuffer: - dbg->hooks->gl.glBindBuffer( - static_cast(cmd.arg0()), static_cast(cmd.arg1()) - ); - break; - case glesv2debugger::Message_Function_glBindFramebuffer: - dbg->hooks->gl.glBindFramebuffer( - static_cast(cmd.arg0()), static_cast(cmd.arg1()) - ); - break; - case glesv2debugger::Message_Function_glBindRenderbuffer: - dbg->hooks->gl.glBindRenderbuffer( - static_cast(cmd.arg0()), static_cast(cmd.arg1()) - ); - break; - case glesv2debugger::Message_Function_glBindTexture: - dbg->hooks->gl.glBindTexture( - static_cast(cmd.arg0()), static_cast(cmd.arg1()) - ); - break; - case glesv2debugger::Message_Function_glBlendColor: - dbg->hooks->gl.glBlendColor( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()) - ); - break; - case glesv2debugger::Message_Function_glBlendEquation: - dbg->hooks->gl.glBlendEquation( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glBlendEquationSeparate: - dbg->hooks->gl.glBlendEquationSeparate( - static_cast(cmd.arg0()), static_cast(cmd.arg1()) - ); - break; - case glesv2debugger::Message_Function_glBlendFunc: - dbg->hooks->gl.glBlendFunc( - static_cast(cmd.arg0()), static_cast(cmd.arg1()) - ); - break; - case glesv2debugger::Message_Function_glBlendFuncSeparate: - dbg->hooks->gl.glBlendFuncSeparate( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()) - ); - break; - case glesv2debugger::Message_Function_glBufferData: - dbg->hooks->gl.glBufferData( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - reinterpret_cast(const_cast(cmd.data().data())), - static_cast(cmd.arg3())); - break; - case glesv2debugger::Message_Function_glBufferSubData: - dbg->hooks->gl.glBufferSubData( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glCheckFramebufferStatus: - msg.set_ret(static_cast(dbg->hooks->gl.glCheckFramebufferStatus( - static_cast(cmd.arg0())))); - if (cmd.has_ret()) - ret = reinterpret_cast(msg.ret()); - break; - case glesv2debugger::Message_Function_glClear: - dbg->hooks->gl.glClear( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glClearColor: - dbg->hooks->gl.glClearColor( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()) - ); - break; - case glesv2debugger::Message_Function_glClearDepthf: - dbg->hooks->gl.glClearDepthf( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glClearStencil: - dbg->hooks->gl.glClearStencil( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glColorMask: - dbg->hooks->gl.glColorMask( - GLboolean(cmd.arg0()), GLboolean(cmd.arg1()), GLboolean(cmd.arg2()), - GLboolean(cmd.arg3())); - break; - case glesv2debugger::Message_Function_glCompileShader: - dbg->hooks->gl.glCompileShader( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glCompressedTexImage2D: - ret = GenerateCall_glCompressedTexImage2D(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glCompressedTexSubImage2D: - ret = GenerateCall_glCompressedTexSubImage2D(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glCopyTexImage2D: - dbg->hooks->gl.glCopyTexImage2D( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()), - static_cast(cmd.arg4()), static_cast(cmd.arg5()), - static_cast(cmd.arg6()), static_cast(cmd.arg7()) - ); - break; - case glesv2debugger::Message_Function_glCopyTexSubImage2D: - dbg->hooks->gl.glCopyTexSubImage2D( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()), - static_cast(cmd.arg4()), static_cast(cmd.arg5()), - static_cast(cmd.arg6()), static_cast(cmd.arg7()) - ); - break; - case glesv2debugger::Message_Function_glCreateProgram: - msg.set_ret(static_cast(dbg->hooks->gl.glCreateProgram( - ))); - if (cmd.has_ret()) - ret = reinterpret_cast(msg.ret()); - break; - case glesv2debugger::Message_Function_glCreateShader: - msg.set_ret(static_cast(dbg->hooks->gl.glCreateShader( - static_cast(cmd.arg0())))); - if (cmd.has_ret()) - ret = reinterpret_cast(msg.ret()); - break; - case glesv2debugger::Message_Function_glCullFace: - dbg->hooks->gl.glCullFace( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glDeleteBuffers: - dbg->hooks->gl.glDeleteBuffers( - static_cast(cmd.arg0()), reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glDeleteFramebuffers: - dbg->hooks->gl.glDeleteFramebuffers( - static_cast(cmd.arg0()), reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glDeleteProgram: - dbg->hooks->gl.glDeleteProgram( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glDeleteRenderbuffers: - dbg->hooks->gl.glDeleteRenderbuffers( - static_cast(cmd.arg0()), reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glDeleteShader: - dbg->hooks->gl.glDeleteShader( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glDeleteTextures: - dbg->hooks->gl.glDeleteTextures( - static_cast(cmd.arg0()), reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glDepthFunc: - dbg->hooks->gl.glDepthFunc( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glDepthMask: - dbg->hooks->gl.glDepthMask( - GLboolean(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glDepthRangef: - dbg->hooks->gl.glDepthRangef( - static_cast(cmd.arg0()), static_cast(cmd.arg1()) - ); - break; - case glesv2debugger::Message_Function_glDetachShader: - dbg->hooks->gl.glDetachShader( - static_cast(cmd.arg0()), static_cast(cmd.arg1()) - ); - break; - case glesv2debugger::Message_Function_glDisable: - dbg->hooks->gl.glDisable( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glDisableVertexAttribArray: - dbg->hooks->gl.glDisableVertexAttribArray( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glDrawArrays: - dbg->hooks->gl.glDrawArrays( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2())); - break; - case glesv2debugger::Message_Function_glDrawElements: - ret = GenerateCall_glDrawElements(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glEnable: - dbg->hooks->gl.glEnable( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glEnableVertexAttribArray: - dbg->hooks->gl.glEnableVertexAttribArray( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glFinish: - dbg->hooks->gl.glFinish( - ); - break; - case glesv2debugger::Message_Function_glFlush: - dbg->hooks->gl.glFlush( - ); - break; - case glesv2debugger::Message_Function_glFramebufferRenderbuffer: - dbg->hooks->gl.glFramebufferRenderbuffer( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()) - ); - break; - case glesv2debugger::Message_Function_glFramebufferTexture2D: - dbg->hooks->gl.glFramebufferTexture2D( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()), - static_cast(cmd.arg4())); - break; - case glesv2debugger::Message_Function_glFrontFace: - dbg->hooks->gl.glFrontFace( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glGenBuffers: - ret = GenerateCall_glGenBuffers(dbg, cmd, msg, prevRet); - break; // annotated output pointers - case glesv2debugger::Message_Function_glGenerateMipmap: - dbg->hooks->gl.glGenerateMipmap( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glGenFramebuffers: - ret = GenerateCall_glGenFramebuffers(dbg, cmd, msg, prevRet); - break; // annotated output pointers - case glesv2debugger::Message_Function_glGenRenderbuffers: - ret = GenerateCall_glGenRenderbuffers(dbg, cmd, msg, prevRet); - break; // annotated output pointers - case glesv2debugger::Message_Function_glGenTextures: - ret = GenerateCall_glGenTextures(dbg, cmd, msg, prevRet); - break; // annotated output pointers - case glesv2debugger::Message_Function_glGetActiveAttrib: - ret = GenerateCall_glGetActiveAttrib(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetActiveUniform: - ret = GenerateCall_glGetActiveUniform(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetAttachedShaders: - ret = GenerateCall_glGetAttachedShaders(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetAttribLocation: - msg.set_ret(static_cast(dbg->hooks->gl.glGetAttribLocation( - static_cast(cmd.arg0()), reinterpret_cast(const_cast(cmd.data().data())) - ))); - if (cmd.has_ret()) - ret = reinterpret_cast(msg.ret()); - break; - case glesv2debugger::Message_Function_glGetBooleanv: - ret = GenerateCall_glGetBooleanv(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetBufferParameteriv: - ret = GenerateCall_glGetBufferParameteriv(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetError: - msg.set_ret(static_cast(dbg->hooks->gl.glGetError( - ))); - if (cmd.has_ret()) - ret = reinterpret_cast(msg.ret()); - break; - case glesv2debugger::Message_Function_glGetFloatv: - ret = GenerateCall_glGetFloatv(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetFramebufferAttachmentParameteriv: - ret = GenerateCall_glGetFramebufferAttachmentParameteriv(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetIntegerv: - ret = GenerateCall_glGetIntegerv(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetProgramiv: - ret = GenerateCall_glGetProgramiv(dbg, cmd, msg, prevRet); - break; // annotated output pointers - case glesv2debugger::Message_Function_glGetProgramInfoLog: - ret = GenerateCall_glGetProgramInfoLog(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetRenderbufferParameteriv: - ret = GenerateCall_glGetRenderbufferParameteriv(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetShaderiv: - ret = GenerateCall_glGetShaderiv(dbg, cmd, msg, prevRet); - break; // annotated output pointers - case glesv2debugger::Message_Function_glGetShaderInfoLog: - ret = GenerateCall_glGetShaderInfoLog(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetShaderPrecisionFormat: - ret = GenerateCall_glGetShaderPrecisionFormat(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetShaderSource: - ret = GenerateCall_glGetShaderSource(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetString: - ret = GenerateCall_glGetString(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetTexParameterfv: - ret = GenerateCall_glGetTexParameterfv(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetTexParameteriv: - ret = GenerateCall_glGetTexParameteriv(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetUniformfv: - ret = GenerateCall_glGetUniformfv(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetUniformiv: - ret = GenerateCall_glGetUniformiv(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetUniformLocation: - msg.set_ret(static_cast(dbg->hooks->gl.glGetUniformLocation( - static_cast(cmd.arg0()), reinterpret_cast(const_cast(cmd.data().data())) - ))); - if (cmd.has_ret()) - ret = reinterpret_cast(msg.ret()); - break; - case glesv2debugger::Message_Function_glGetVertexAttribfv: - ret = GenerateCall_glGetVertexAttribfv(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetVertexAttribiv: - ret = GenerateCall_glGetVertexAttribiv(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glGetVertexAttribPointerv: - ret = GenerateCall_glGetVertexAttribPointerv(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glHint: - dbg->hooks->gl.glHint( - static_cast(cmd.arg0()), static_cast(cmd.arg1()) - ); - break; - case glesv2debugger::Message_Function_glIsBuffer: - msg.set_ret(static_cast(dbg->hooks->gl.glIsBuffer( - static_cast(cmd.arg0())))); - if (cmd.has_ret()) - ret = reinterpret_cast(msg.ret()); - break; - case glesv2debugger::Message_Function_glIsEnabled: - msg.set_ret(static_cast(dbg->hooks->gl.glIsEnabled( - static_cast(cmd.arg0())))); - if (cmd.has_ret()) - ret = reinterpret_cast(msg.ret()); - break; - case glesv2debugger::Message_Function_glIsFramebuffer: - msg.set_ret(static_cast(dbg->hooks->gl.glIsFramebuffer( - static_cast(cmd.arg0())))); - if (cmd.has_ret()) - ret = reinterpret_cast(msg.ret()); - break; - case glesv2debugger::Message_Function_glIsProgram: - msg.set_ret(static_cast(dbg->hooks->gl.glIsProgram( - static_cast(cmd.arg0())))); - if (cmd.has_ret()) - ret = reinterpret_cast(msg.ret()); - break; - case glesv2debugger::Message_Function_glIsRenderbuffer: - msg.set_ret(static_cast(dbg->hooks->gl.glIsRenderbuffer( - static_cast(cmd.arg0())))); - if (cmd.has_ret()) - ret = reinterpret_cast(msg.ret()); - break; - case glesv2debugger::Message_Function_glIsShader: - msg.set_ret(static_cast(dbg->hooks->gl.glIsShader( - static_cast(cmd.arg0())))); - if (cmd.has_ret()) - ret = reinterpret_cast(msg.ret()); - break; - case glesv2debugger::Message_Function_glIsTexture: - msg.set_ret(static_cast(dbg->hooks->gl.glIsTexture( - static_cast(cmd.arg0())))); - if (cmd.has_ret()) - ret = reinterpret_cast(msg.ret()); - break; - case glesv2debugger::Message_Function_glLineWidth: - dbg->hooks->gl.glLineWidth( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glLinkProgram: - dbg->hooks->gl.glLinkProgram( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glPixelStorei: - dbg->hooks->gl.glPixelStorei( - static_cast(cmd.arg0()), static_cast(cmd.arg1()) - ); - break; - case glesv2debugger::Message_Function_glPolygonOffset: - dbg->hooks->gl.glPolygonOffset( - static_cast(cmd.arg0()), static_cast(cmd.arg1()) - ); - break; - case glesv2debugger::Message_Function_glReadPixels: - ret = GenerateCall_glReadPixels(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glReleaseShaderCompiler: - dbg->hooks->gl.glReleaseShaderCompiler( - ); - break; - case glesv2debugger::Message_Function_glRenderbufferStorage: - dbg->hooks->gl.glRenderbufferStorage( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()) - ); - break; - case glesv2debugger::Message_Function_glSampleCoverage: - dbg->hooks->gl.glSampleCoverage( - static_cast(cmd.arg0()), GLboolean(cmd.arg1())); - break; - case glesv2debugger::Message_Function_glScissor: - dbg->hooks->gl.glScissor( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()) - ); - break; - case glesv2debugger::Message_Function_glShaderBinary: - ret = GenerateCall_glShaderBinary(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glShaderSource: - ret = GenerateCall_glShaderSource(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glStencilFunc: - dbg->hooks->gl.glStencilFunc( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2())); - break; - case glesv2debugger::Message_Function_glStencilFuncSeparate: - dbg->hooks->gl.glStencilFuncSeparate( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()) - ); - break; - case glesv2debugger::Message_Function_glStencilMask: - dbg->hooks->gl.glStencilMask( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glStencilMaskSeparate: - dbg->hooks->gl.glStencilMaskSeparate( - static_cast(cmd.arg0()), static_cast(cmd.arg1()) - ); - break; - case glesv2debugger::Message_Function_glStencilOp: - dbg->hooks->gl.glStencilOp( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2())); - break; - case glesv2debugger::Message_Function_glStencilOpSeparate: - dbg->hooks->gl.glStencilOpSeparate( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()) - ); - break; - case glesv2debugger::Message_Function_glTexImage2D: - ret = GenerateCall_glTexImage2D(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glTexParameterf: - dbg->hooks->gl.glTexParameterf( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2())); - break; - case glesv2debugger::Message_Function_glTexParameterfv: - ret = GenerateCall_glTexParameterfv(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glTexParameteri: - dbg->hooks->gl.glTexParameteri( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2())); - break; - case glesv2debugger::Message_Function_glTexParameteriv: - ret = GenerateCall_glTexParameteriv(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glTexSubImage2D: - ret = GenerateCall_glTexSubImage2D(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glUniform1f: - dbg->hooks->gl.glUniform1f( - static_cast(cmd.arg0()), static_cast(cmd.arg1()) - ); - break; - case glesv2debugger::Message_Function_glUniform1fv: - dbg->hooks->gl.glUniform1fv( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glUniform1i: - dbg->hooks->gl.glUniform1i( - static_cast(cmd.arg0()), static_cast(cmd.arg1()) - ); - break; - case glesv2debugger::Message_Function_glUniform1iv: - dbg->hooks->gl.glUniform1iv( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glUniform2f: - dbg->hooks->gl.glUniform2f( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2())); - break; - case glesv2debugger::Message_Function_glUniform2fv: - dbg->hooks->gl.glUniform2fv( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glUniform2i: - dbg->hooks->gl.glUniform2i( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2())); - break; - case glesv2debugger::Message_Function_glUniform2iv: - dbg->hooks->gl.glUniform2iv( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glUniform3f: - dbg->hooks->gl.glUniform3f( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()) - ); - break; - case glesv2debugger::Message_Function_glUniform3fv: - dbg->hooks->gl.glUniform3fv( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glUniform3i: - dbg->hooks->gl.glUniform3i( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()) - ); - break; - case glesv2debugger::Message_Function_glUniform3iv: - dbg->hooks->gl.glUniform3iv( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glUniform4f: - dbg->hooks->gl.glUniform4f( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()), - static_cast(cmd.arg4())); - break; - case glesv2debugger::Message_Function_glUniform4fv: - dbg->hooks->gl.glUniform4fv( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glUniform4i: - dbg->hooks->gl.glUniform4i( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()), - static_cast(cmd.arg4())); - break; - case glesv2debugger::Message_Function_glUniform4iv: - dbg->hooks->gl.glUniform4iv( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glUniformMatrix2fv: - dbg->hooks->gl.glUniformMatrix2fv( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - GLboolean(cmd.arg2()), reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glUniformMatrix3fv: - dbg->hooks->gl.glUniformMatrix3fv( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - GLboolean(cmd.arg2()), reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glUniformMatrix4fv: - dbg->hooks->gl.glUniformMatrix4fv( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - GLboolean(cmd.arg2()), reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glUseProgram: - dbg->hooks->gl.glUseProgram( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glValidateProgram: - dbg->hooks->gl.glValidateProgram( - static_cast(cmd.arg0())); - break; - case glesv2debugger::Message_Function_glVertexAttrib1f: - dbg->hooks->gl.glVertexAttrib1f( - static_cast(cmd.arg0()), static_cast(cmd.arg1()) - ); - break; - case glesv2debugger::Message_Function_glVertexAttrib1fv: - dbg->hooks->gl.glVertexAttrib1fv( - static_cast(cmd.arg0()), reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glVertexAttrib2f: - dbg->hooks->gl.glVertexAttrib2f( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2())); - break; - case glesv2debugger::Message_Function_glVertexAttrib2fv: - dbg->hooks->gl.glVertexAttrib2fv( - static_cast(cmd.arg0()), reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glVertexAttrib3f: - dbg->hooks->gl.glVertexAttrib3f( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()) - ); - break; - case glesv2debugger::Message_Function_glVertexAttrib3fv: - dbg->hooks->gl.glVertexAttrib3fv( - static_cast(cmd.arg0()), reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glVertexAttrib4f: - dbg->hooks->gl.glVertexAttrib4f( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()), - static_cast(cmd.arg4())); - break; - case glesv2debugger::Message_Function_glVertexAttrib4fv: - dbg->hooks->gl.glVertexAttrib4fv( - static_cast(cmd.arg0()), reinterpret_cast(const_cast(cmd.data().data())) - ); - break; - case glesv2debugger::Message_Function_glVertexAttribPointer: - ret = GenerateCall_glVertexAttribPointer(dbg, cmd, msg, prevRet); - break; - case glesv2debugger::Message_Function_glViewport: - dbg->hooks->gl.glViewport( - static_cast(cmd.arg0()), static_cast(cmd.arg1()), - static_cast(cmd.arg2()), static_cast(cmd.arg3()) - ); - break; - default: - assert(0); - } - msg.set_time((systemTime(timeMode) - c0) * 1e-6f); - msg.set_context_id(reinterpret_cast(dbg)); - msg.set_function(cmd.function()); - msg.set_type(glesv2debugger::Message_Type_AfterGeneratedCall); - return ret; -} - -}; // name space android { diff --git a/opengl/libs/GLES2_dbg/src/caller.h b/opengl/libs/GLES2_dbg/src/caller.h deleted file mode 100644 index e8111b3292..0000000000 --- a/opengl/libs/GLES2_dbg/src/caller.h +++ /dev/null @@ -1,330 +0,0 @@ -/* - ** Copyright 2011, The Android Open Source Project - ** - ** Licensed under the Apache License, Version 2.0 (the "License") - ** you may not use this file except in compliance with the License. - ** You may obtain a copy of the License at - ** - ** http://www.apache.org/licenses/LICENSE-2.0 - ** - ** Unless required by applicable law or agreed to in writing, software - ** distributed under the License is distributed on an "AS IS" BASIS, - ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ** See the License for the specific language governing permissions and - ** limitations under the License. - */ - -static const int * GenerateCall_glCompressedTexImage2D(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glCompressedTexSubImage2D(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glDrawElements(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGenBuffers(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGenFramebuffers(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGenRenderbuffers(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGenTextures(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetActiveAttrib(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetActiveUniform(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetAttachedShaders(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetBooleanv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetBufferParameteriv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetFloatv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetFramebufferAttachmentParameteriv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetIntegerv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetProgramiv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - GLint params = -1; - dbg->hooks->gl.glGetProgramiv(cmd.arg0(), cmd.arg1(), ¶ms); - msg.mutable_data()->append(reinterpret_cast(¶ms), sizeof(params)); - return prevRet; -} - -static const int * GenerateCall_glGetProgramInfoLog(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - const GLsizei bufSize = static_cast(dbg->GetBufferSize()); - GLsizei length = -1; - dbg->hooks->gl.glGetProgramInfoLog(cmd.arg0(), bufSize, &length, dbg->GetBuffer()); - msg.mutable_data()->append(dbg->GetBuffer(), length); - return prevRet; -} - -static const int * GenerateCall_glGetRenderbufferParameteriv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetShaderiv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - GLint params = -1; - dbg->hooks->gl.glGetShaderiv(cmd.arg0(), cmd.arg1(), ¶ms); - msg.mutable_data()->append(reinterpret_cast(¶ms), sizeof(params)); - return prevRet; -} - -static const int * GenerateCall_glGetShaderInfoLog(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - const GLsizei bufSize = static_cast(dbg->GetBufferSize()); - GLsizei length = -1; - dbg->hooks->gl.glGetShaderInfoLog(cmd.arg0(), bufSize, &length, dbg->GetBuffer()); - msg.mutable_data()->append(dbg->GetBuffer(), length); - return prevRet; -} - -static const int * GenerateCall_glGetShaderPrecisionFormat(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetShaderSource(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetString(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetTexParameterfv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetTexParameteriv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetUniformfv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetUniformiv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetVertexAttribfv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetVertexAttribiv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glGetVertexAttribPointerv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glReadPixels(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glShaderBinary(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glShaderSource(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - const char * string = cmd.data().data(); - dbg->hooks->gl.glShaderSource(cmd.arg0(), 1, &string, NULL); - return prevRet; -} - -static const int * GenerateCall_glTexImage2D(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glTexParameterfv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glTexParameteriv(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glTexSubImage2D(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} - -static const int * GenerateCall_glVertexAttribPointer(DbgContext * const dbg, - const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet) -{ - assert(0); - return prevRet; -} diff --git a/opengl/libs/GLES2_dbg/src/dbgcontext.cpp b/opengl/libs/GLES2_dbg/src/dbgcontext.cpp deleted file mode 100644 index 7bbaa18bc6..0000000000 --- a/opengl/libs/GLES2_dbg/src/dbgcontext.cpp +++ /dev/null @@ -1,427 +0,0 @@ -/* - ** Copyright 2011, The Android Open Source Project - ** - ** Licensed under the Apache License, Version 2.0 (the "License"); - ** you may not use this file except in compliance with the License. - ** You may obtain a copy of the License at - ** - ** http://www.apache.org/licenses/LICENSE-2.0 - ** - ** Unless required by applicable law or agreed to in writing, software - ** distributed under the License is distributed on an "AS IS" BASIS, - ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ** See the License for the specific language governing permissions and - ** limitations under the License. - */ - -#include "header.h" - -extern "C" { -#include "liblzf/lzf.h" -} - -namespace android { - -static pthread_key_t dbgEGLThreadLocalStorageKey = -1; -static pthread_mutex_t gThreadLocalStorageKeyMutex = PTHREAD_MUTEX_INITIALIZER; - -DbgContext * getDbgContextThreadSpecific() { - return (DbgContext*)pthread_getspecific(dbgEGLThreadLocalStorageKey); -} - -DbgContext::DbgContext(const unsigned version, const gl_hooks_t * const hooks, - const unsigned MAX_VERTEX_ATTRIBS) - : lzf_buf(NULL), lzf_readIndex(0), lzf_refSize(0), lzf_refBufSize(0) - , version(version), hooks(hooks) - , MAX_VERTEX_ATTRIBS(MAX_VERTEX_ATTRIBS) - , readBytesPerPixel(4) - , captureSwap(0), captureDraw(0) - , vertexAttribs(new VertexAttrib[MAX_VERTEX_ATTRIBS]) - , hasNonVBOAttribs(false), indexBuffers(NULL), indexBuffer(NULL) - , program(0), maxAttrib(0) -{ - lzf_ref[0] = lzf_ref[1] = NULL; - for (unsigned i = 0; i < MAX_VERTEX_ATTRIBS; i++) - vertexAttribs[i] = VertexAttrib(); - memset(&expectResponse, 0, sizeof(expectResponse)); -} - -DbgContext::~DbgContext() -{ - delete vertexAttribs; - free(lzf_buf); - free(lzf_ref[0]); - free(lzf_ref[1]); -} - -DbgContext* CreateDbgContext(const unsigned version, const gl_hooks_t * const hooks) -{ - pthread_mutex_lock(&gThreadLocalStorageKeyMutex); - if (dbgEGLThreadLocalStorageKey == -1) - pthread_key_create(&dbgEGLThreadLocalStorageKey, NULL); - pthread_mutex_unlock(&gThreadLocalStorageKeyMutex); - - assert(version < 2); - assert(GL_NO_ERROR == hooks->gl.glGetError()); - GLint MAX_VERTEX_ATTRIBS = 0; - hooks->gl.glGetIntegerv(GL_MAX_VERTEX_ATTRIBS, &MAX_VERTEX_ATTRIBS); - DbgContext* dbg = new DbgContext(version, hooks, MAX_VERTEX_ATTRIBS); - glesv2debugger::Message msg, cmd; - msg.set_context_id(reinterpret_cast(dbg)); - msg.set_expect_response(false); - msg.set_type(msg.Response); - msg.set_function(msg.SETPROP); - msg.set_prop(msg.GLConstant); - msg.set_arg0(GL_MAX_VERTEX_ATTRIBS); - msg.set_arg1(MAX_VERTEX_ATTRIBS); - Send(msg, cmd); - - GLint MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0; - hooks->gl.glGetIntegerv(GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS, &MAX_COMBINED_TEXTURE_IMAGE_UNITS); - msg.set_arg0(GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS); - msg.set_arg1(MAX_COMBINED_TEXTURE_IMAGE_UNITS); - Send(msg, cmd); - - pthread_setspecific(dbgEGLThreadLocalStorageKey, dbg); - return dbg; -} - -void dbgReleaseThread() { - delete getDbgContextThreadSpecific(); -} - -unsigned GetBytesPerPixel(const GLenum format, const GLenum type) -{ - switch (type) { - case GL_UNSIGNED_SHORT_5_6_5: - case GL_UNSIGNED_SHORT_4_4_4_4: - case GL_UNSIGNED_SHORT_5_5_5_1: - return 2; - case GL_UNSIGNED_BYTE: - break; - default: - ALOGE("GetBytesPerPixel: unknown type %x", type); - } - - switch (format) { - case GL_ALPHA: - case GL_LUMINANCE: - return 1; - case GL_LUMINANCE_ALPHA: - return 2; - case GL_RGB: - return 3; - case GL_RGBA: - case 0x80E1: // GL_BGRA_EXT - return 4; - default: - ALOGE("GetBytesPerPixel: unknown format %x", format); - } - - return 1; // in doubt... -} - -void DbgContext::Fetch(const unsigned index, std::string * const data) const -{ - // VBO data is already on client, just send user pointer data - for (unsigned i = 0; i < maxAttrib; i++) { - if (!vertexAttribs[i].enabled) - continue; - if (vertexAttribs[i].buffer > 0) - continue; - const char * ptr = (const char *)vertexAttribs[i].ptr; - ptr += index * vertexAttribs[i].stride; - data->append(ptr, vertexAttribs[i].elemSize); - } -} - -void DbgContext::Compress(const void * in_data, unsigned int in_len, - std::string * const outStr) -{ - if (!lzf_buf) - lzf_buf = (char *)malloc(LZF_CHUNK_SIZE); - assert(lzf_buf); - const uint32_t totalDecompSize = in_len; - outStr->append((const char *)&totalDecompSize, sizeof(totalDecompSize)); - for (unsigned int i = 0; i < in_len; i += LZF_CHUNK_SIZE) { - uint32_t chunkSize = LZF_CHUNK_SIZE; - if (i + LZF_CHUNK_SIZE > in_len) - chunkSize = in_len - i; - const uint32_t compSize = lzf_compress((const char *)in_data + i, chunkSize, - lzf_buf, LZF_CHUNK_SIZE); - outStr->append((const char *)&chunkSize, sizeof(chunkSize)); - outStr->append((const char *)&compSize, sizeof(compSize)); - if (compSize > 0) - outStr->append(lzf_buf, compSize); - else // compressed chunk bigger than LZF_CHUNK_SIZE (and uncompressed) - outStr->append((const char *)in_data + i, chunkSize); - } -} - -unsigned char * DbgContext::Decompress(const void * in, const unsigned int inLen, - unsigned int * const outLen) -{ - assert(inLen > 4 * 3); - if (inLen < 4 * 3) - return NULL; - *outLen = *(uint32_t *)in; - unsigned char * const out = (unsigned char *)malloc(*outLen); - unsigned int outPos = 0; - const unsigned char * const end = (const unsigned char *)in + inLen; - for (const unsigned char * inData = (const unsigned char *)in + 4; inData < end; ) { - const uint32_t chunkOut = *(uint32_t *)inData; - inData += 4; - const uint32_t chunkIn = *(uint32_t *)inData; - inData += 4; - if (chunkIn > 0) { - assert(inData + chunkIn <= end); - assert(outPos + chunkOut <= *outLen); - outPos += lzf_decompress(inData, chunkIn, out + outPos, chunkOut); - inData += chunkIn; - } else { - assert(inData + chunkOut <= end); - assert(outPos + chunkOut <= *outLen); - memcpy(out + outPos, inData, chunkOut); - inData += chunkOut; - outPos += chunkOut; - } - } - return out; -} - -void * DbgContext::GetReadPixelsBuffer(const unsigned size) -{ - if (lzf_refBufSize < size + 8) { - lzf_refBufSize = size + 8; - lzf_ref[0] = (unsigned *)realloc(lzf_ref[0], lzf_refBufSize); - assert(lzf_ref[0]); - memset(lzf_ref[0], 0, lzf_refBufSize); - lzf_ref[1] = (unsigned *)realloc(lzf_ref[1], lzf_refBufSize); - assert(lzf_ref[1]); - memset(lzf_ref[1], 0, lzf_refBufSize); - } - if (lzf_refSize != size) // need to clear unused ref to maintain consistency - { // since ref and src are swapped each time - memset((char *)lzf_ref[0] + lzf_refSize, 0, lzf_refBufSize - lzf_refSize); - memset((char *)lzf_ref[1] + lzf_refSize, 0, lzf_refBufSize - lzf_refSize); - } - lzf_refSize = size; - lzf_readIndex ^= 1; - return lzf_ref[lzf_readIndex]; -} - -void DbgContext::CompressReadPixelBuffer(std::string * const outStr) -{ - assert(lzf_ref[0] && lzf_ref[1]); - unsigned * const ref = lzf_ref[lzf_readIndex ^ 1]; - unsigned * const src = lzf_ref[lzf_readIndex]; - for (unsigned i = 0; i < lzf_refSize / sizeof(*ref) + 1; i++) - ref[i] ^= src[i]; - Compress(ref, lzf_refSize, outStr); -} - -char * DbgContext::GetBuffer() -{ - if (!lzf_buf) - lzf_buf = (char *)malloc(LZF_CHUNK_SIZE); - assert(lzf_buf); - return lzf_buf; -} - -unsigned int DbgContext::GetBufferSize() -{ - if (!lzf_buf) - lzf_buf = (char *)malloc(LZF_CHUNK_SIZE); - assert(lzf_buf); - if (lzf_buf) - return LZF_CHUNK_SIZE; - else - return 0; -} - -void DbgContext::glUseProgram(GLuint program) -{ - while (GLenum error = hooks->gl.glGetError()) - ALOGD("DbgContext::glUseProgram(%u): before glGetError() = 0x%.4X", - program, error); - this->program = program; - maxAttrib = 0; - if (program == 0) - return; - GLint activeAttributes = 0; - hooks->gl.glGetProgramiv(program, GL_ACTIVE_ATTRIBUTES, &activeAttributes); - maxAttrib = 0; - GLint maxNameLen = -1; - hooks->gl.glGetProgramiv(program, GL_ACTIVE_ATTRIBUTE_MAX_LENGTH, &maxNameLen); - char * name = new char [maxNameLen + 1]; - name[maxNameLen] = 0; - // find total number of attribute slots used - for (unsigned i = 0; i < activeAttributes; i++) { - GLint size = -1; - GLenum type = -1; - hooks->gl.glGetActiveAttrib(program, i, maxNameLen + 1, NULL, &size, &type, name); - GLint slot = hooks->gl.glGetAttribLocation(program, name); - assert(slot >= 0); - switch (type) { - case GL_FLOAT: - case GL_FLOAT_VEC2: - case GL_FLOAT_VEC3: - case GL_FLOAT_VEC4: - slot += size; - break; - case GL_FLOAT_MAT2: - slot += size * 2; - break; - case GL_FLOAT_MAT3: - slot += size * 3; - break; - case GL_FLOAT_MAT4: - slot += size * 4; - break; - default: - assert(0); - } - if (slot > maxAttrib) - maxAttrib = slot; - } - delete name; - while (GLenum error = hooks->gl.glGetError()) - ALOGD("DbgContext::glUseProgram(%u): after glGetError() = 0x%.4X", - program, error); -} - -static bool HasNonVBOAttribs(const DbgContext * const ctx) -{ - bool need = false; - for (unsigned i = 0; !need && i < ctx->maxAttrib; i++) - if (ctx->vertexAttribs[i].enabled && ctx->vertexAttribs[i].buffer == 0) - need = true; - return need; -} - -void DbgContext::glVertexAttribPointer(GLuint indx, GLint size, GLenum type, - GLboolean normalized, GLsizei stride, const GLvoid* ptr) -{ - assert(GL_NO_ERROR == hooks->gl.glGetError()); - assert(indx < MAX_VERTEX_ATTRIBS); - vertexAttribs[indx].size = size; - vertexAttribs[indx].type = type; - vertexAttribs[indx].normalized = normalized; - switch (type) { - case GL_FLOAT: - vertexAttribs[indx].elemSize = sizeof(GLfloat) * size; - break; - case GL_INT: - case GL_UNSIGNED_INT: - vertexAttribs[indx].elemSize = sizeof(GLint) * size; - break; - case GL_SHORT: - case GL_UNSIGNED_SHORT: - vertexAttribs[indx].elemSize = sizeof(GLshort) * size; - break; - case GL_BYTE: - case GL_UNSIGNED_BYTE: - vertexAttribs[indx].elemSize = sizeof(GLbyte) * size; - break; - default: - assert(0); - } - if (0 == stride) - stride = vertexAttribs[indx].elemSize; - vertexAttribs[indx].stride = stride; - vertexAttribs[indx].ptr = ptr; - hooks->gl.glGetVertexAttribiv(indx, GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING, - (GLint *)&vertexAttribs[indx].buffer); - hasNonVBOAttribs = HasNonVBOAttribs(this); -} - -void DbgContext::glEnableVertexAttribArray(GLuint index) -{ - if (index >= MAX_VERTEX_ATTRIBS) - return; - vertexAttribs[index].enabled = true; - hasNonVBOAttribs = HasNonVBOAttribs(this); -} - -void DbgContext::glDisableVertexAttribArray(GLuint index) -{ - if (index >= MAX_VERTEX_ATTRIBS) - return; - vertexAttribs[index].enabled = false; - hasNonVBOAttribs = HasNonVBOAttribs(this); -} - -void DbgContext::glBindBuffer(GLenum target, GLuint buffer) -{ - if (GL_ELEMENT_ARRAY_BUFFER != target) - return; - if (0 == buffer) { - indexBuffer = NULL; - return; - } - VBO * b = indexBuffers; - indexBuffer = NULL; - while (b) { - if (b->name == buffer) { - assert(GL_ELEMENT_ARRAY_BUFFER == b->target); - indexBuffer = b; - break; - } - b = b->next; - } - if (!indexBuffer) - indexBuffer = indexBuffers = new VBO(buffer, target, indexBuffers); -} - -void DbgContext::glBufferData(GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage) -{ - if (GL_ELEMENT_ARRAY_BUFFER != target) - return; - assert(indexBuffer); - assert(size >= 0); - indexBuffer->size = size; - indexBuffer->data = realloc(indexBuffer->data, size); - memcpy(indexBuffer->data, data, size); -} - -void DbgContext::glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data) -{ - if (GL_ELEMENT_ARRAY_BUFFER != target) - return; - assert(indexBuffer); - assert(size >= 0); - assert(offset >= 0); - assert(offset + size <= indexBuffer->size); - memcpy((char *)indexBuffer->data + offset, data, size); -} - -void DbgContext::glDeleteBuffers(GLsizei n, const GLuint *buffers) -{ - for (unsigned i = 0; i < n; i++) { - for (unsigned j = 0; j < MAX_VERTEX_ATTRIBS; j++) - if (buffers[i] == vertexAttribs[j].buffer) { - vertexAttribs[j].buffer = 0; - vertexAttribs[j].enabled = false; - } - VBO * b = indexBuffers, * previous = NULL; - while (b) { - if (b->name == buffers[i]) { - assert(GL_ELEMENT_ARRAY_BUFFER == b->target); - if (indexBuffer == b) - indexBuffer = NULL; - if (previous) - previous->next = b->next; - else - indexBuffers = b->next; - free(b->data); - delete b; - break; - } - previous = b; - b = b->next; - } - } - hasNonVBOAttribs = HasNonVBOAttribs(this); -} - -}; // namespace android diff --git a/opengl/libs/GLES2_dbg/src/debugger_message.pb.cpp b/opengl/libs/GLES2_dbg/src/debugger_message.pb.cpp deleted file mode 100644 index 50f70f7dff..0000000000 --- a/opengl/libs/GLES2_dbg/src/debugger_message.pb.cpp +++ /dev/null @@ -1,1455 +0,0 @@ -// Generated by the protocol buffer compiler. DO NOT EDIT! - -#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION -#include "debugger_message.pb.h" -#include -#include -#include -// @@protoc_insertion_point(includes) - -namespace com { -namespace android { -namespace glesv2debugger { - -void protobuf_ShutdownFile_debugger_5fmessage_2eproto() { - delete Message::default_instance_; -} - -void protobuf_AddDesc_debugger_5fmessage_2eproto() { - static bool already_here = false; - if (already_here) return; - already_here = true; - GOOGLE_PROTOBUF_VERIFY_VERSION; - - Message::default_instance_ = new Message(); - Message::default_instance_->InitAsDefaultInstance(); - ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_debugger_5fmessage_2eproto); -} - -// Force AddDescriptors() to be called at static initialization time. -struct StaticDescriptorInitializer_debugger_5fmessage_2eproto { - StaticDescriptorInitializer_debugger_5fmessage_2eproto() { - protobuf_AddDesc_debugger_5fmessage_2eproto(); - } -} static_descriptor_initializer_debugger_5fmessage_2eproto_; - - -// =================================================================== - -bool Message_Function_IsValid(int value) { - switch(value) { - case 0: - case 1: - case 2: - case 3: - case 4: - case 5: - case 6: - case 7: - case 8: - case 9: - case 10: - case 11: - case 12: - case 13: - case 14: - case 15: - case 16: - case 17: - case 18: - case 19: - case 20: - case 21: - case 22: - case 23: - case 24: - case 25: - case 26: - case 27: - case 28: - case 29: - case 30: - case 31: - case 32: - case 33: - case 34: - case 35: - case 36: - case 37: - case 38: - case 39: - case 40: - case 41: - case 42: - case 43: - case 44: - case 45: - case 46: - case 47: - case 48: - case 49: - case 50: - case 51: - case 52: - case 53: - case 54: - case 55: - case 56: - case 57: - case 58: - case 59: - case 60: - case 61: - case 62: - case 63: - case 64: - case 65: - case 66: - case 67: - case 68: - case 69: - case 70: - case 71: - case 72: - case 73: - case 74: - case 75: - case 76: - case 77: - case 78: - case 79: - case 80: - case 81: - case 82: - case 83: - case 84: - case 85: - case 86: - case 87: - case 88: - case 89: - case 90: - case 91: - case 92: - case 93: - case 94: - case 95: - case 96: - case 97: - case 98: - case 99: - case 100: - case 101: - case 102: - case 103: - case 104: - case 105: - case 106: - case 107: - case 108: - case 109: - case 110: - case 111: - case 112: - case 113: - case 114: - case 115: - case 116: - case 117: - case 118: - case 119: - case 120: - case 121: - case 122: - case 123: - case 124: - case 125: - case 126: - case 127: - case 128: - case 129: - case 130: - case 131: - case 132: - case 133: - case 134: - case 135: - case 136: - case 137: - case 138: - case 139: - case 140: - case 141: - case 142: - case 143: - case 144: - case 145: - case 146: - case 147: - case 148: - case 149: - case 150: - case 151: - case 152: - case 153: - case 154: - case 155: - case 156: - case 157: - case 158: - case 159: - case 160: - case 161: - case 162: - case 163: - case 164: - case 165: - case 166: - case 167: - case 168: - case 169: - case 170: - case 171: - case 172: - case 173: - case 174: - case 175: - case 176: - case 177: - case 178: - case 179: - case 180: - case 181: - case 182: - case 183: - case 184: - case 185: - case 186: - case 187: - case 188: - case 189: - case 190: - return true; - default: - return false; - } -} - -#ifndef _MSC_VER -const Message_Function Message::glActiveTexture; -const Message_Function Message::glAttachShader; -const Message_Function Message::glBindAttribLocation; -const Message_Function Message::glBindBuffer; -const Message_Function Message::glBindFramebuffer; -const Message_Function Message::glBindRenderbuffer; -const Message_Function Message::glBindTexture; -const Message_Function Message::glBlendColor; -const Message_Function Message::glBlendEquation; -const Message_Function Message::glBlendEquationSeparate; -const Message_Function Message::glBlendFunc; -const Message_Function Message::glBlendFuncSeparate; -const Message_Function Message::glBufferData; -const Message_Function Message::glBufferSubData; -const Message_Function Message::glCheckFramebufferStatus; -const Message_Function Message::glClear; -const Message_Function Message::glClearColor; -const Message_Function Message::glClearDepthf; -const Message_Function Message::glClearStencil; -const Message_Function Message::glColorMask; -const Message_Function Message::glCompileShader; -const Message_Function Message::glCompressedTexImage2D; -const Message_Function Message::glCompressedTexSubImage2D; -const Message_Function Message::glCopyTexImage2D; -const Message_Function Message::glCopyTexSubImage2D; -const Message_Function Message::glCreateProgram; -const Message_Function Message::glCreateShader; -const Message_Function Message::glCullFace; -const Message_Function Message::glDeleteBuffers; -const Message_Function Message::glDeleteFramebuffers; -const Message_Function Message::glDeleteProgram; -const Message_Function Message::glDeleteRenderbuffers; -const Message_Function Message::glDeleteShader; -const Message_Function Message::glDeleteTextures; -const Message_Function Message::glDepthFunc; -const Message_Function Message::glDepthMask; -const Message_Function Message::glDepthRangef; -const Message_Function Message::glDetachShader; -const Message_Function Message::glDisable; -const Message_Function Message::glDisableVertexAttribArray; -const Message_Function Message::glDrawArrays; -const Message_Function Message::glDrawElements; -const Message_Function Message::glEnable; -const Message_Function Message::glEnableVertexAttribArray; -const Message_Function Message::glFinish; -const Message_Function Message::glFlush; -const Message_Function Message::glFramebufferRenderbuffer; -const Message_Function Message::glFramebufferTexture2D; -const Message_Function Message::glFrontFace; -const Message_Function Message::glGenBuffers; -const Message_Function Message::glGenerateMipmap; -const Message_Function Message::glGenFramebuffers; -const Message_Function Message::glGenRenderbuffers; -const Message_Function Message::glGenTextures; -const Message_Function Message::glGetActiveAttrib; -const Message_Function Message::glGetActiveUniform; -const Message_Function Message::glGetAttachedShaders; -const Message_Function Message::glGetAttribLocation; -const Message_Function Message::glGetBooleanv; -const Message_Function Message::glGetBufferParameteriv; -const Message_Function Message::glGetError; -const Message_Function Message::glGetFloatv; -const Message_Function Message::glGetFramebufferAttachmentParameteriv; -const Message_Function Message::glGetIntegerv; -const Message_Function Message::glGetProgramiv; -const Message_Function Message::glGetProgramInfoLog; -const Message_Function Message::glGetRenderbufferParameteriv; -const Message_Function Message::glGetShaderiv; -const Message_Function Message::glGetShaderInfoLog; -const Message_Function Message::glGetShaderPrecisionFormat; -const Message_Function Message::glGetShaderSource; -const Message_Function Message::glGetString; -const Message_Function Message::glGetTexParameterfv; -const Message_Function Message::glGetTexParameteriv; -const Message_Function Message::glGetUniformfv; -const Message_Function Message::glGetUniformiv; -const Message_Function Message::glGetUniformLocation; -const Message_Function Message::glGetVertexAttribfv; -const Message_Function Message::glGetVertexAttribiv; -const Message_Function Message::glGetVertexAttribPointerv; -const Message_Function Message::glHint; -const Message_Function Message::glIsBuffer; -const Message_Function Message::glIsEnabled; -const Message_Function Message::glIsFramebuffer; -const Message_Function Message::glIsProgram; -const Message_Function Message::glIsRenderbuffer; -const Message_Function Message::glIsShader; -const Message_Function Message::glIsTexture; -const Message_Function Message::glLineWidth; -const Message_Function Message::glLinkProgram; -const Message_Function Message::glPixelStorei; -const Message_Function Message::glPolygonOffset; -const Message_Function Message::glReadPixels; -const Message_Function Message::glReleaseShaderCompiler; -const Message_Function Message::glRenderbufferStorage; -const Message_Function Message::glSampleCoverage; -const Message_Function Message::glScissor; -const Message_Function Message::glShaderBinary; -const Message_Function Message::glShaderSource; -const Message_Function Message::glStencilFunc; -const Message_Function Message::glStencilFuncSeparate; -const Message_Function Message::glStencilMask; -const Message_Function Message::glStencilMaskSeparate; -const Message_Function Message::glStencilOp; -const Message_Function Message::glStencilOpSeparate; -const Message_Function Message::glTexImage2D; -const Message_Function Message::glTexParameterf; -const Message_Function Message::glTexParameterfv; -const Message_Function Message::glTexParameteri; -const Message_Function Message::glTexParameteriv; -const Message_Function Message::glTexSubImage2D; -const Message_Function Message::glUniform1f; -const Message_Function Message::glUniform1fv; -const Message_Function Message::glUniform1i; -const Message_Function Message::glUniform1iv; -const Message_Function Message::glUniform2f; -const Message_Function Message::glUniform2fv; -const Message_Function Message::glUniform2i; -const Message_Function Message::glUniform2iv; -const Message_Function Message::glUniform3f; -const Message_Function Message::glUniform3fv; -const Message_Function Message::glUniform3i; -const Message_Function Message::glUniform3iv; -const Message_Function Message::glUniform4f; -const Message_Function Message::glUniform4fv; -const Message_Function Message::glUniform4i; -const Message_Function Message::glUniform4iv; -const Message_Function Message::glUniformMatrix2fv; -const Message_Function Message::glUniformMatrix3fv; -const Message_Function Message::glUniformMatrix4fv; -const Message_Function Message::glUseProgram; -const Message_Function Message::glValidateProgram; -const Message_Function Message::glVertexAttrib1f; -const Message_Function Message::glVertexAttrib1fv; -const Message_Function Message::glVertexAttrib2f; -const Message_Function Message::glVertexAttrib2fv; -const Message_Function Message::glVertexAttrib3f; -const Message_Function Message::glVertexAttrib3fv; -const Message_Function Message::glVertexAttrib4f; -const Message_Function Message::glVertexAttrib4fv; -const Message_Function Message::glVertexAttribPointer; -const Message_Function Message::glViewport; -const Message_Function Message::eglGetDisplay; -const Message_Function Message::eglInitialize; -const Message_Function Message::eglTerminate; -const Message_Function Message::eglGetConfigs; -const Message_Function Message::eglChooseConfig; -const Message_Function Message::eglGetConfigAttrib; -const Message_Function Message::eglCreateWindowSurface; -const Message_Function Message::eglCreatePixmapSurface; -const Message_Function Message::eglCreatePbufferSurface; -const Message_Function Message::eglDestroySurface; -const Message_Function Message::eglQuerySurface; -const Message_Function Message::eglCreateContext; -const Message_Function Message::eglDestroyContext; -const Message_Function Message::eglMakeCurrent; -const Message_Function Message::eglGetCurrentContext; -const Message_Function Message::eglGetCurrentSurface; -const Message_Function Message::eglGetCurrentDisplay; -const Message_Function Message::eglQueryContext; -const Message_Function Message::eglWaitGL; -const Message_Function Message::eglWaitNative; -const Message_Function Message::eglSwapBuffers; -const Message_Function Message::eglCopyBuffers; -const Message_Function Message::eglGetError; -const Message_Function Message::eglQueryString; -const Message_Function Message::eglGetProcAddress; -const Message_Function Message::eglSurfaceAttrib; -const Message_Function Message::eglBindTexImage; -const Message_Function Message::eglReleaseTexImage; -const Message_Function Message::eglSwapInterval; -const Message_Function Message::eglBindAPI; -const Message_Function Message::eglQueryAPI; -const Message_Function Message::eglWaitClient; -const Message_Function Message::eglReleaseThread; -const Message_Function Message::eglCreatePbufferFromClientBuffer; -const Message_Function Message::eglLockSurfaceKHR; -const Message_Function Message::eglUnlockSurfaceKHR; -const Message_Function Message::eglCreateImageKHR; -const Message_Function Message::eglDestroyImageKHR; -const Message_Function Message::eglCreateSyncKHR; -const Message_Function Message::eglDestroySyncKHR; -const Message_Function Message::eglClientWaitSyncKHR; -const Message_Function Message::eglGetSyncAttribKHR; -const Message_Function Message::eglSetSwapRectangleANDROID; -const Message_Function Message::eglGetRenderBufferANDROID; -const Message_Function Message::ACK; -const Message_Function Message::NEG; -const Message_Function Message::CONTINUE; -const Message_Function Message::SKIP; -const Message_Function Message::SETPROP; -const Message_Function Message::Function_MIN; -const Message_Function Message::Function_MAX; -const int Message::Function_ARRAYSIZE; -#endif // _MSC_VER -bool Message_Type_IsValid(int value) { - switch(value) { - case 0: - case 1: - case 2: - case 3: - case 4: - return true; - default: - return false; - } -} - -#ifndef _MSC_VER -const Message_Type Message::BeforeCall; -const Message_Type Message::AfterCall; -const Message_Type Message::AfterGeneratedCall; -const Message_Type Message::Response; -const Message_Type Message::CompleteCall; -const Message_Type Message::Type_MIN; -const Message_Type Message::Type_MAX; -const int Message::Type_ARRAYSIZE; -#endif // _MSC_VER -bool Message_DataType_IsValid(int value) { - switch(value) { - case 0: - case 1: - return true; - default: - return false; - } -} - -#ifndef _MSC_VER -const Message_DataType Message::ReferencedImage; -const Message_DataType Message::NonreferencedImage; -const Message_DataType Message::DataType_MIN; -const Message_DataType Message::DataType_MAX; -const int Message::DataType_ARRAYSIZE; -#endif // _MSC_VER -bool Message_Prop_IsValid(int value) { - switch(value) { - case 0: - case 1: - case 2: - case 3: - case 4: - return true; - default: - return false; - } -} - -#ifndef _MSC_VER -const Message_Prop Message::CaptureDraw; -const Message_Prop Message::TimeMode; -const Message_Prop Message::ExpectResponse; -const Message_Prop Message::CaptureSwap; -const Message_Prop Message::GLConstant; -const Message_Prop Message::Prop_MIN; -const Message_Prop Message::Prop_MAX; -const int Message::Prop_ARRAYSIZE; -#endif // _MSC_VER -const ::std::string Message::_default_data_; -#ifndef _MSC_VER -const int Message::kContextIdFieldNumber; -const int Message::kFunctionFieldNumber; -const int Message::kTypeFieldNumber; -const int Message::kExpectResponseFieldNumber; -const int Message::kRetFieldNumber; -const int Message::kArg0FieldNumber; -const int Message::kArg1FieldNumber; -const int Message::kArg2FieldNumber; -const int Message::kArg3FieldNumber; -const int Message::kArg4FieldNumber; -const int Message::kArg5FieldNumber; -const int Message::kArg6FieldNumber; -const int Message::kArg7FieldNumber; -const int Message::kArg8FieldNumber; -const int Message::kDataFieldNumber; -const int Message::kDataTypeFieldNumber; -const int Message::kPixelFormatFieldNumber; -const int Message::kPixelTypeFieldNumber; -const int Message::kImageWidthFieldNumber; -const int Message::kImageHeightFieldNumber; -const int Message::kTimeFieldNumber; -const int Message::kPropFieldNumber; -const int Message::kClockFieldNumber; -#endif // !_MSC_VER - -Message::Message() - : ::google::protobuf::MessageLite() { - SharedCtor(); -} - -void Message::InitAsDefaultInstance() { -} - -Message::Message(const Message& from) - : ::google::protobuf::MessageLite() { - SharedCtor(); - MergeFrom(from); -} - -void Message::SharedCtor() { - _cached_size_ = 0; - context_id_ = 0; - function_ = 187; - type_ = 0; - expect_response_ = false; - ret_ = 0; - arg0_ = 0; - arg1_ = 0; - arg2_ = 0; - arg3_ = 0; - arg4_ = 0; - arg5_ = 0; - arg6_ = 0; - arg7_ = 0; - arg8_ = 0; - data_ = const_cast< ::std::string*>(&_default_data_); - data_type_ = 0; - pixel_format_ = 0; - pixel_type_ = 0; - image_width_ = 0; - image_height_ = 0; - time_ = 0; - prop_ = 0; - clock_ = 0; - ::memset(_has_bits_, 0, sizeof(_has_bits_)); -} - -Message::~Message() { - SharedDtor(); -} - -void Message::SharedDtor() { - if (data_ != &_default_data_) { - delete data_; - } - if (this != default_instance_) { - } -} - -void Message::SetCachedSize(int size) const { - GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); - _cached_size_ = size; - GOOGLE_SAFE_CONCURRENT_WRITES_END(); -} -const Message& Message::default_instance() { - if (default_instance_ == NULL) protobuf_AddDesc_debugger_5fmessage_2eproto(); return *default_instance_; -} - -Message* Message::default_instance_ = NULL; - -Message* Message::New() const { - return new Message; -} - -void Message::Clear() { - if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { - context_id_ = 0; - function_ = 187; - type_ = 0; - expect_response_ = false; - ret_ = 0; - arg0_ = 0; - arg1_ = 0; - arg2_ = 0; - } - if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) { - arg3_ = 0; - arg4_ = 0; - arg5_ = 0; - arg6_ = 0; - arg7_ = 0; - arg8_ = 0; - if (_has_bit(14)) { - if (data_ != &_default_data_) { - data_->clear(); - } - } - data_type_ = 0; - } - if (_has_bits_[16 / 32] & (0xffu << (16 % 32))) { - pixel_format_ = 0; - pixel_type_ = 0; - image_width_ = 0; - image_height_ = 0; - time_ = 0; - prop_ = 0; - clock_ = 0; - } - ::memset(_has_bits_, 0, sizeof(_has_bits_)); -} - -bool Message::MergePartialFromCodedStream( - ::google::protobuf::io::CodedInputStream* input) { -#define DO_(EXPRESSION) if (!(EXPRESSION)) return false - ::google::protobuf::uint32 tag; - while ((tag = input->ReadTag()) != 0) { - switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { - // required int32 context_id = 1; - case 1: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>( - input, &context_id_))); - _set_bit(0); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(16)) goto parse_function; - break; - } - - // required .com.android.glesv2debugger.Message.Function function = 2 [default = NEG]; - case 2: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_function: - int value; - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( - input, &value))); - if (::com::android::glesv2debugger::Message_Function_IsValid(value)) { - set_function(static_cast< ::com::android::glesv2debugger::Message_Function >(value)); - } - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(24)) goto parse_type; - break; - } - - // required .com.android.glesv2debugger.Message.Type type = 3; - case 3: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_type: - int value; - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( - input, &value))); - if (::com::android::glesv2debugger::Message_Type_IsValid(value)) { - set_type(static_cast< ::com::android::glesv2debugger::Message_Type >(value)); - } - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(32)) goto parse_expect_response; - break; - } - - // required bool expect_response = 4; - case 4: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_expect_response: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>( - input, &expect_response_))); - _set_bit(3); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(40)) goto parse_ret; - break; - } - - // optional int32 ret = 5; - case 5: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_ret: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>( - input, &ret_))); - _set_bit(4); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(48)) goto parse_arg0; - break; - } - - // optional int32 arg0 = 6; - case 6: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_arg0: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>( - input, &arg0_))); - _set_bit(5); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(56)) goto parse_arg1; - break; - } - - // optional int32 arg1 = 7; - case 7: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_arg1: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>( - input, &arg1_))); - _set_bit(6); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(64)) goto parse_arg2; - break; - } - - // optional int32 arg2 = 8; - case 8: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_arg2: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>( - input, &arg2_))); - _set_bit(7); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(72)) goto parse_arg3; - break; - } - - // optional int32 arg3 = 9; - case 9: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_arg3: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>( - input, &arg3_))); - _set_bit(8); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(82)) goto parse_data; - break; - } - - // optional bytes data = 10; - case 10: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { - parse_data: - DO_(::google::protobuf::internal::WireFormatLite::ReadBytes( - input, this->mutable_data())); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(93)) goto parse_time; - break; - } - - // optional float time = 11; - case 11: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) { - parse_time: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>( - input, &time_))); - _set_bit(20); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(128)) goto parse_arg4; - break; - } - - // optional int32 arg4 = 16; - case 16: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_arg4: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>( - input, &arg4_))); - _set_bit(9); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(136)) goto parse_arg5; - break; - } - - // optional int32 arg5 = 17; - case 17: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_arg5: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>( - input, &arg5_))); - _set_bit(10); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(144)) goto parse_arg6; - break; - } - - // optional int32 arg6 = 18; - case 18: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_arg6: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>( - input, &arg6_))); - _set_bit(11); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(152)) goto parse_arg7; - break; - } - - // optional int32 arg7 = 19; - case 19: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_arg7: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>( - input, &arg7_))); - _set_bit(12); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(160)) goto parse_arg8; - break; - } - - // optional int32 arg8 = 20; - case 20: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_arg8: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>( - input, &arg8_))); - _set_bit(13); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(168)) goto parse_prop; - break; - } - - // optional .com.android.glesv2debugger.Message.Prop prop = 21; - case 21: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_prop: - int value; - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( - input, &value))); - if (::com::android::glesv2debugger::Message_Prop_IsValid(value)) { - set_prop(static_cast< ::com::android::glesv2debugger::Message_Prop >(value)); - } - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(181)) goto parse_clock; - break; - } - - // optional float clock = 22; - case 22: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) { - parse_clock: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>( - input, &clock_))); - _set_bit(22); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(184)) goto parse_data_type; - break; - } - - // optional .com.android.glesv2debugger.Message.DataType data_type = 23; - case 23: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_data_type: - int value; - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( - input, &value))); - if (::com::android::glesv2debugger::Message_DataType_IsValid(value)) { - set_data_type(static_cast< ::com::android::glesv2debugger::Message_DataType >(value)); - } - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(192)) goto parse_pixel_format; - break; - } - - // optional int32 pixel_format = 24; - case 24: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_pixel_format: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>( - input, &pixel_format_))); - _set_bit(16); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(200)) goto parse_pixel_type; - break; - } - - // optional int32 pixel_type = 25; - case 25: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_pixel_type: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>( - input, &pixel_type_))); - _set_bit(17); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(208)) goto parse_image_width; - break; - } - - // optional int32 image_width = 26; - case 26: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_image_width: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>( - input, &image_width_))); - _set_bit(18); - } else { - goto handle_uninterpreted; - } - if (input->ExpectTag(216)) goto parse_image_height; - break; - } - - // optional int32 image_height = 27; - case 27: { - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { - parse_image_height: - DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< - ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>( - input, &image_height_))); - _set_bit(19); - } else { - goto handle_uninterpreted; - } - if (input->ExpectAtEnd()) return true; - break; - } - - default: { - handle_uninterpreted: - if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == - ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { - return true; - } - DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); - break; - } - } - } - return true; -#undef DO_ -} - -void Message::SerializeWithCachedSizes( - ::google::protobuf::io::CodedOutputStream* output) const { - // required int32 context_id = 1; - if (_has_bit(0)) { - ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->context_id(), output); - } - - // required .com.android.glesv2debugger.Message.Function function = 2 [default = NEG]; - if (_has_bit(1)) { - ::google::protobuf::internal::WireFormatLite::WriteEnum( - 2, this->function(), output); - } - - // required .com.android.glesv2debugger.Message.Type type = 3; - if (_has_bit(2)) { - ::google::protobuf::internal::WireFormatLite::WriteEnum( - 3, this->type(), output); - } - - // required bool expect_response = 4; - if (_has_bit(3)) { - ::google::protobuf::internal::WireFormatLite::WriteBool(4, this->expect_response(), output); - } - - // optional int32 ret = 5; - if (_has_bit(4)) { - ::google::protobuf::internal::WireFormatLite::WriteInt32(5, this->ret(), output); - } - - // optional int32 arg0 = 6; - if (_has_bit(5)) { - ::google::protobuf::internal::WireFormatLite::WriteInt32(6, this->arg0(), output); - } - - // optional int32 arg1 = 7; - if (_has_bit(6)) { - ::google::protobuf::internal::WireFormatLite::WriteInt32(7, this->arg1(), output); - } - - // optional int32 arg2 = 8; - if (_has_bit(7)) { - ::google::protobuf::internal::WireFormatLite::WriteInt32(8, this->arg2(), output); - } - - // optional int32 arg3 = 9; - if (_has_bit(8)) { - ::google::protobuf::internal::WireFormatLite::WriteInt32(9, this->arg3(), output); - } - - // optional bytes data = 10; - if (_has_bit(14)) { - ::google::protobuf::internal::WireFormatLite::WriteBytes( - 10, this->data(), output); - } - - // optional float time = 11; - if (_has_bit(20)) { - ::google::protobuf::internal::WireFormatLite::WriteFloat(11, this->time(), output); - } - - // optional int32 arg4 = 16; - if (_has_bit(9)) { - ::google::protobuf::internal::WireFormatLite::WriteInt32(16, this->arg4(), output); - } - - // optional int32 arg5 = 17; - if (_has_bit(10)) { - ::google::protobuf::internal::WireFormatLite::WriteInt32(17, this->arg5(), output); - } - - // optional int32 arg6 = 18; - if (_has_bit(11)) { - ::google::protobuf::internal::WireFormatLite::WriteInt32(18, this->arg6(), output); - } - - // optional int32 arg7 = 19; - if (_has_bit(12)) { - ::google::protobuf::internal::WireFormatLite::WriteInt32(19, this->arg7(), output); - } - - // optional int32 arg8 = 20; - if (_has_bit(13)) { - ::google::protobuf::internal::WireFormatLite::WriteInt32(20, this->arg8(), output); - } - - // optional .com.android.glesv2debugger.Message.Prop prop = 21; - if (_has_bit(21)) { - ::google::protobuf::internal::WireFormatLite::WriteEnum( - 21, this->prop(), output); - } - - // optional float clock = 22; - if (_has_bit(22)) { - ::google::protobuf::internal::WireFormatLite::WriteFloat(22, this->clock(), output); - } - - // optional .com.android.glesv2debugger.Message.DataType data_type = 23; - if (_has_bit(15)) { - ::google::protobuf::internal::WireFormatLite::WriteEnum( - 23, this->data_type(), output); - } - - // optional int32 pixel_format = 24; - if (_has_bit(16)) { - ::google::protobuf::internal::WireFormatLite::WriteInt32(24, this->pixel_format(), output); - } - - // optional int32 pixel_type = 25; - if (_has_bit(17)) { - ::google::protobuf::internal::WireFormatLite::WriteInt32(25, this->pixel_type(), output); - } - - // optional int32 image_width = 26; - if (_has_bit(18)) { - ::google::protobuf::internal::WireFormatLite::WriteInt32(26, this->image_width(), output); - } - - // optional int32 image_height = 27; - if (_has_bit(19)) { - ::google::protobuf::internal::WireFormatLite::WriteInt32(27, this->image_height(), output); - } - -} - -int Message::ByteSize() const { - int total_size = 0; - - if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { - // required int32 context_id = 1; - if (has_context_id()) { - total_size += 1 + - ::google::protobuf::internal::WireFormatLite::Int32Size( - this->context_id()); - } - - // required .com.android.glesv2debugger.Message.Function function = 2 [default = NEG]; - if (has_function()) { - total_size += 1 + - ::google::protobuf::internal::WireFormatLite::EnumSize(this->function()); - } - - // required .com.android.glesv2debugger.Message.Type type = 3; - if (has_type()) { - total_size += 1 + - ::google::protobuf::internal::WireFormatLite::EnumSize(this->type()); - } - - // required bool expect_response = 4; - if (has_expect_response()) { - total_size += 1 + 1; - } - - // optional int32 ret = 5; - if (has_ret()) { - total_size += 1 + - ::google::protobuf::internal::WireFormatLite::Int32Size( - this->ret()); - } - - // optional int32 arg0 = 6; - if (has_arg0()) { - total_size += 1 + - ::google::protobuf::internal::WireFormatLite::Int32Size( - this->arg0()); - } - - // optional int32 arg1 = 7; - if (has_arg1()) { - total_size += 1 + - ::google::protobuf::internal::WireFormatLite::Int32Size( - this->arg1()); - } - - // optional int32 arg2 = 8; - if (has_arg2()) { - total_size += 1 + - ::google::protobuf::internal::WireFormatLite::Int32Size( - this->arg2()); - } - - } - if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) { - // optional int32 arg3 = 9; - if (has_arg3()) { - total_size += 1 + - ::google::protobuf::internal::WireFormatLite::Int32Size( - this->arg3()); - } - - // optional int32 arg4 = 16; - if (has_arg4()) { - total_size += 2 + - ::google::protobuf::internal::WireFormatLite::Int32Size( - this->arg4()); - } - - // optional int32 arg5 = 17; - if (has_arg5()) { - total_size += 2 + - ::google::protobuf::internal::WireFormatLite::Int32Size( - this->arg5()); - } - - // optional int32 arg6 = 18; - if (has_arg6()) { - total_size += 2 + - ::google::protobuf::internal::WireFormatLite::Int32Size( - this->arg6()); - } - - // optional int32 arg7 = 19; - if (has_arg7()) { - total_size += 2 + - ::google::protobuf::internal::WireFormatLite::Int32Size( - this->arg7()); - } - - // optional int32 arg8 = 20; - if (has_arg8()) { - total_size += 2 + - ::google::protobuf::internal::WireFormatLite::Int32Size( - this->arg8()); - } - - // optional bytes data = 10; - if (has_data()) { - total_size += 1 + - ::google::protobuf::internal::WireFormatLite::BytesSize( - this->data()); - } - - // optional .com.android.glesv2debugger.Message.DataType data_type = 23; - if (has_data_type()) { - total_size += 2 + - ::google::protobuf::internal::WireFormatLite::EnumSize(this->data_type()); - } - - } - if (_has_bits_[16 / 32] & (0xffu << (16 % 32))) { - // optional int32 pixel_format = 24; - if (has_pixel_format()) { - total_size += 2 + - ::google::protobuf::internal::WireFormatLite::Int32Size( - this->pixel_format()); - } - - // optional int32 pixel_type = 25; - if (has_pixel_type()) { - total_size += 2 + - ::google::protobuf::internal::WireFormatLite::Int32Size( - this->pixel_type()); - } - - // optional int32 image_width = 26; - if (has_image_width()) { - total_size += 2 + - ::google::protobuf::internal::WireFormatLite::Int32Size( - this->image_width()); - } - - // optional int32 image_height = 27; - if (has_image_height()) { - total_size += 2 + - ::google::protobuf::internal::WireFormatLite::Int32Size( - this->image_height()); - } - - // optional float time = 11; - if (has_time()) { - total_size += 1 + 4; - } - - // optional .com.android.glesv2debugger.Message.Prop prop = 21; - if (has_prop()) { - total_size += 2 + - ::google::protobuf::internal::WireFormatLite::EnumSize(this->prop()); - } - - // optional float clock = 22; - if (has_clock()) { - total_size += 2 + 4; - } - - } - GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); - _cached_size_ = total_size; - GOOGLE_SAFE_CONCURRENT_WRITES_END(); - return total_size; -} - -void Message::CheckTypeAndMergeFrom( - const ::google::protobuf::MessageLite& from) { - MergeFrom(*::google::protobuf::down_cast(&from)); -} - -void Message::MergeFrom(const Message& from) { - GOOGLE_CHECK_NE(&from, this); - if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { - if (from._has_bit(0)) { - set_context_id(from.context_id()); - } - if (from._has_bit(1)) { - set_function(from.function()); - } - if (from._has_bit(2)) { - set_type(from.type()); - } - if (from._has_bit(3)) { - set_expect_response(from.expect_response()); - } - if (from._has_bit(4)) { - set_ret(from.ret()); - } - if (from._has_bit(5)) { - set_arg0(from.arg0()); - } - if (from._has_bit(6)) { - set_arg1(from.arg1()); - } - if (from._has_bit(7)) { - set_arg2(from.arg2()); - } - } - if (from._has_bits_[8 / 32] & (0xffu << (8 % 32))) { - if (from._has_bit(8)) { - set_arg3(from.arg3()); - } - if (from._has_bit(9)) { - set_arg4(from.arg4()); - } - if (from._has_bit(10)) { - set_arg5(from.arg5()); - } - if (from._has_bit(11)) { - set_arg6(from.arg6()); - } - if (from._has_bit(12)) { - set_arg7(from.arg7()); - } - if (from._has_bit(13)) { - set_arg8(from.arg8()); - } - if (from._has_bit(14)) { - set_data(from.data()); - } - if (from._has_bit(15)) { - set_data_type(from.data_type()); - } - } - if (from._has_bits_[16 / 32] & (0xffu << (16 % 32))) { - if (from._has_bit(16)) { - set_pixel_format(from.pixel_format()); - } - if (from._has_bit(17)) { - set_pixel_type(from.pixel_type()); - } - if (from._has_bit(18)) { - set_image_width(from.image_width()); - } - if (from._has_bit(19)) { - set_image_height(from.image_height()); - } - if (from._has_bit(20)) { - set_time(from.time()); - } - if (from._has_bit(21)) { - set_prop(from.prop()); - } - if (from._has_bit(22)) { - set_clock(from.clock()); - } - } -} - -void Message::CopyFrom(const Message& from) { - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool Message::IsInitialized() const { - if ((_has_bits_[0] & 0x0000000f) != 0x0000000f) return false; - - return true; -} - -void Message::Swap(Message* other) { - if (other != this) { - std::swap(context_id_, other->context_id_); - std::swap(function_, other->function_); - std::swap(type_, other->type_); - std::swap(expect_response_, other->expect_response_); - std::swap(ret_, other->ret_); - std::swap(arg0_, other->arg0_); - std::swap(arg1_, other->arg1_); - std::swap(arg2_, other->arg2_); - std::swap(arg3_, other->arg3_); - std::swap(arg4_, other->arg4_); - std::swap(arg5_, other->arg5_); - std::swap(arg6_, other->arg6_); - std::swap(arg7_, other->arg7_); - std::swap(arg8_, other->arg8_); - std::swap(data_, other->data_); - std::swap(data_type_, other->data_type_); - std::swap(pixel_format_, other->pixel_format_); - std::swap(pixel_type_, other->pixel_type_); - std::swap(image_width_, other->image_width_); - std::swap(image_height_, other->image_height_); - std::swap(time_, other->time_); - std::swap(prop_, other->prop_); - std::swap(clock_, other->clock_); - std::swap(_has_bits_[0], other->_has_bits_[0]); - std::swap(_cached_size_, other->_cached_size_); - } -} - -::std::string Message::GetTypeName() const { - return "com.android.glesv2debugger.Message"; -} - - -// @@protoc_insertion_point(namespace_scope) - -} // namespace glesv2debugger -} // namespace android -} // namespace com - -// @@protoc_insertion_point(global_scope) diff --git a/opengl/libs/GLES2_dbg/src/debugger_message.pb.h b/opengl/libs/GLES2_dbg/src/debugger_message.pb.h deleted file mode 100644 index 5c946644a1..0000000000 --- a/opengl/libs/GLES2_dbg/src/debugger_message.pb.h +++ /dev/null @@ -1,1187 +0,0 @@ -// Generated by the protocol buffer compiler. DO NOT EDIT! -// source: debugger_message.proto - -#ifndef PROTOBUF_debugger_5fmessage_2eproto__INCLUDED -#define PROTOBUF_debugger_5fmessage_2eproto__INCLUDED - -#include - -#include - -#if GOOGLE_PROTOBUF_VERSION < 2003000 -#error This file was generated by a newer version of protoc which is -#error incompatible with your Protocol Buffer headers. Please update -#error your headers. -#endif -#if 2003000 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION -#error This file was generated by an older version of protoc which is -#error incompatible with your Protocol Buffer headers. Please -#error regenerate this file with a newer version of protoc. -#endif - -#include -#include -#include -// @@protoc_insertion_point(includes) - -namespace com { -namespace android { -namespace glesv2debugger { - -// Internal implementation detail -- do not call these. -void protobuf_AddDesc_debugger_5fmessage_2eproto(); -void protobuf_AssignDesc_debugger_5fmessage_2eproto(); -void protobuf_ShutdownFile_debugger_5fmessage_2eproto(); - -class Message; - -enum Message_Function { - Message_Function_glActiveTexture = 0, - Message_Function_glAttachShader = 1, - Message_Function_glBindAttribLocation = 2, - Message_Function_glBindBuffer = 3, - Message_Function_glBindFramebuffer = 4, - Message_Function_glBindRenderbuffer = 5, - Message_Function_glBindTexture = 6, - Message_Function_glBlendColor = 7, - Message_Function_glBlendEquation = 8, - Message_Function_glBlendEquationSeparate = 9, - Message_Function_glBlendFunc = 10, - Message_Function_glBlendFuncSeparate = 11, - Message_Function_glBufferData = 12, - Message_Function_glBufferSubData = 13, - Message_Function_glCheckFramebufferStatus = 14, - Message_Function_glClear = 15, - Message_Function_glClearColor = 16, - Message_Function_glClearDepthf = 17, - Message_Function_glClearStencil = 18, - Message_Function_glColorMask = 19, - Message_Function_glCompileShader = 20, - Message_Function_glCompressedTexImage2D = 21, - Message_Function_glCompressedTexSubImage2D = 22, - Message_Function_glCopyTexImage2D = 23, - Message_Function_glCopyTexSubImage2D = 24, - Message_Function_glCreateProgram = 25, - Message_Function_glCreateShader = 26, - Message_Function_glCullFace = 27, - Message_Function_glDeleteBuffers = 28, - Message_Function_glDeleteFramebuffers = 29, - Message_Function_glDeleteProgram = 30, - Message_Function_glDeleteRenderbuffers = 31, - Message_Function_glDeleteShader = 32, - Message_Function_glDeleteTextures = 33, - Message_Function_glDepthFunc = 34, - Message_Function_glDepthMask = 35, - Message_Function_glDepthRangef = 36, - Message_Function_glDetachShader = 37, - Message_Function_glDisable = 38, - Message_Function_glDisableVertexAttribArray = 39, - Message_Function_glDrawArrays = 40, - Message_Function_glDrawElements = 41, - Message_Function_glEnable = 42, - Message_Function_glEnableVertexAttribArray = 43, - Message_Function_glFinish = 44, - Message_Function_glFlush = 45, - Message_Function_glFramebufferRenderbuffer = 46, - Message_Function_glFramebufferTexture2D = 47, - Message_Function_glFrontFace = 48, - Message_Function_glGenBuffers = 49, - Message_Function_glGenerateMipmap = 50, - Message_Function_glGenFramebuffers = 51, - Message_Function_glGenRenderbuffers = 52, - Message_Function_glGenTextures = 53, - Message_Function_glGetActiveAttrib = 54, - Message_Function_glGetActiveUniform = 55, - Message_Function_glGetAttachedShaders = 56, - Message_Function_glGetAttribLocation = 57, - Message_Function_glGetBooleanv = 58, - Message_Function_glGetBufferParameteriv = 59, - Message_Function_glGetError = 60, - Message_Function_glGetFloatv = 61, - Message_Function_glGetFramebufferAttachmentParameteriv = 62, - Message_Function_glGetIntegerv = 63, - Message_Function_glGetProgramiv = 64, - Message_Function_glGetProgramInfoLog = 65, - Message_Function_glGetRenderbufferParameteriv = 66, - Message_Function_glGetShaderiv = 67, - Message_Function_glGetShaderInfoLog = 68, - Message_Function_glGetShaderPrecisionFormat = 69, - Message_Function_glGetShaderSource = 70, - Message_Function_glGetString = 71, - Message_Function_glGetTexParameterfv = 72, - Message_Function_glGetTexParameteriv = 73, - Message_Function_glGetUniformfv = 74, - Message_Function_glGetUniformiv = 75, - Message_Function_glGetUniformLocation = 76, - Message_Function_glGetVertexAttribfv = 77, - Message_Function_glGetVertexAttribiv = 78, - Message_Function_glGetVertexAttribPointerv = 79, - Message_Function_glHint = 80, - Message_Function_glIsBuffer = 81, - Message_Function_glIsEnabled = 82, - Message_Function_glIsFramebuffer = 83, - Message_Function_glIsProgram = 84, - Message_Function_glIsRenderbuffer = 85, - Message_Function_glIsShader = 86, - Message_Function_glIsTexture = 87, - Message_Function_glLineWidth = 88, - Message_Function_glLinkProgram = 89, - Message_Function_glPixelStorei = 90, - Message_Function_glPolygonOffset = 91, - Message_Function_glReadPixels = 92, - Message_Function_glReleaseShaderCompiler = 93, - Message_Function_glRenderbufferStorage = 94, - Message_Function_glSampleCoverage = 95, - Message_Function_glScissor = 96, - Message_Function_glShaderBinary = 97, - Message_Function_glShaderSource = 98, - Message_Function_glStencilFunc = 99, - Message_Function_glStencilFuncSeparate = 100, - Message_Function_glStencilMask = 101, - Message_Function_glStencilMaskSeparate = 102, - Message_Function_glStencilOp = 103, - Message_Function_glStencilOpSeparate = 104, - Message_Function_glTexImage2D = 105, - Message_Function_glTexParameterf = 106, - Message_Function_glTexParameterfv = 107, - Message_Function_glTexParameteri = 108, - Message_Function_glTexParameteriv = 109, - Message_Function_glTexSubImage2D = 110, - Message_Function_glUniform1f = 111, - Message_Function_glUniform1fv = 112, - Message_Function_glUniform1i = 113, - Message_Function_glUniform1iv = 114, - Message_Function_glUniform2f = 115, - Message_Function_glUniform2fv = 116, - Message_Function_glUniform2i = 117, - Message_Function_glUniform2iv = 118, - Message_Function_glUniform3f = 119, - Message_Function_glUniform3fv = 120, - Message_Function_glUniform3i = 121, - Message_Function_glUniform3iv = 122, - Message_Function_glUniform4f = 123, - Message_Function_glUniform4fv = 124, - Message_Function_glUniform4i = 125, - Message_Function_glUniform4iv = 126, - Message_Function_glUniformMatrix2fv = 127, - Message_Function_glUniformMatrix3fv = 128, - Message_Function_glUniformMatrix4fv = 129, - Message_Function_glUseProgram = 130, - Message_Function_glValidateProgram = 131, - Message_Function_glVertexAttrib1f = 132, - Message_Function_glVertexAttrib1fv = 133, - Message_Function_glVertexAttrib2f = 134, - Message_Function_glVertexAttrib2fv = 135, - Message_Function_glVertexAttrib3f = 136, - Message_Function_glVertexAttrib3fv = 137, - Message_Function_glVertexAttrib4f = 138, - Message_Function_glVertexAttrib4fv = 139, - Message_Function_glVertexAttribPointer = 140, - Message_Function_glViewport = 141, - Message_Function_eglGetDisplay = 142, - Message_Function_eglInitialize = 143, - Message_Function_eglTerminate = 144, - Message_Function_eglGetConfigs = 145, - Message_Function_eglChooseConfig = 146, - Message_Function_eglGetConfigAttrib = 147, - Message_Function_eglCreateWindowSurface = 148, - Message_Function_eglCreatePixmapSurface = 149, - Message_Function_eglCreatePbufferSurface = 150, - Message_Function_eglDestroySurface = 151, - Message_Function_eglQuerySurface = 152, - Message_Function_eglCreateContext = 153, - Message_Function_eglDestroyContext = 154, - Message_Function_eglMakeCurrent = 155, - Message_Function_eglGetCurrentContext = 156, - Message_Function_eglGetCurrentSurface = 157, - Message_Function_eglGetCurrentDisplay = 158, - Message_Function_eglQueryContext = 159, - Message_Function_eglWaitGL = 160, - Message_Function_eglWaitNative = 161, - Message_Function_eglSwapBuffers = 162, - Message_Function_eglCopyBuffers = 163, - Message_Function_eglGetError = 164, - Message_Function_eglQueryString = 165, - Message_Function_eglGetProcAddress = 166, - Message_Function_eglSurfaceAttrib = 167, - Message_Function_eglBindTexImage = 168, - Message_Function_eglReleaseTexImage = 169, - Message_Function_eglSwapInterval = 170, - Message_Function_eglBindAPI = 171, - Message_Function_eglQueryAPI = 172, - Message_Function_eglWaitClient = 173, - Message_Function_eglReleaseThread = 174, - Message_Function_eglCreatePbufferFromClientBuffer = 175, - Message_Function_eglLockSurfaceKHR = 176, - Message_Function_eglUnlockSurfaceKHR = 177, - Message_Function_eglCreateImageKHR = 178, - Message_Function_eglDestroyImageKHR = 179, - Message_Function_eglCreateSyncKHR = 180, - Message_Function_eglDestroySyncKHR = 181, - Message_Function_eglClientWaitSyncKHR = 182, - Message_Function_eglGetSyncAttribKHR = 183, - Message_Function_eglSetSwapRectangleANDROID = 184, - Message_Function_eglGetRenderBufferANDROID = 185, - Message_Function_ACK = 186, - Message_Function_NEG = 187, - Message_Function_CONTINUE = 188, - Message_Function_SKIP = 189, - Message_Function_SETPROP = 190 -}; -bool Message_Function_IsValid(int value); -const Message_Function Message_Function_Function_MIN = Message_Function_glActiveTexture; -const Message_Function Message_Function_Function_MAX = Message_Function_SETPROP; -const int Message_Function_Function_ARRAYSIZE = Message_Function_Function_MAX + 1; - -enum Message_Type { - Message_Type_BeforeCall = 0, - Message_Type_AfterCall = 1, - Message_Type_AfterGeneratedCall = 2, - Message_Type_Response = 3, - Message_Type_CompleteCall = 4 -}; -bool Message_Type_IsValid(int value); -const Message_Type Message_Type_Type_MIN = Message_Type_BeforeCall; -const Message_Type Message_Type_Type_MAX = Message_Type_CompleteCall; -const int Message_Type_Type_ARRAYSIZE = Message_Type_Type_MAX + 1; - -enum Message_DataType { - Message_DataType_ReferencedImage = 0, - Message_DataType_NonreferencedImage = 1 -}; -bool Message_DataType_IsValid(int value); -const Message_DataType Message_DataType_DataType_MIN = Message_DataType_ReferencedImage; -const Message_DataType Message_DataType_DataType_MAX = Message_DataType_NonreferencedImage; -const int Message_DataType_DataType_ARRAYSIZE = Message_DataType_DataType_MAX + 1; - -enum Message_Prop { - Message_Prop_CaptureDraw = 0, - Message_Prop_TimeMode = 1, - Message_Prop_ExpectResponse = 2, - Message_Prop_CaptureSwap = 3, - Message_Prop_GLConstant = 4 -}; -bool Message_Prop_IsValid(int value); -const Message_Prop Message_Prop_Prop_MIN = Message_Prop_CaptureDraw; -const Message_Prop Message_Prop_Prop_MAX = Message_Prop_GLConstant; -const int Message_Prop_Prop_ARRAYSIZE = Message_Prop_Prop_MAX + 1; - -// =================================================================== - -class Message : public ::google::protobuf::MessageLite { - public: - Message(); - virtual ~Message(); - - Message(const Message& from); - - inline Message& operator=(const Message& from) { - CopyFrom(from); - return *this; - } - - static const Message& default_instance(); - - void Swap(Message* other); - - // implements Message ---------------------------------------------- - - Message* New() const; - void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from); - void CopyFrom(const Message& from); - void MergeFrom(const Message& from); - void Clear(); - bool IsInitialized() const; - - int ByteSize() const; - bool MergePartialFromCodedStream( - ::google::protobuf::io::CodedInputStream* input); - void SerializeWithCachedSizes( - ::google::protobuf::io::CodedOutputStream* output) const; - int GetCachedSize() const { return _cached_size_; } - private: - void SharedCtor(); - void SharedDtor(); - void SetCachedSize(int size) const; - public: - - ::std::string GetTypeName() const; - - // nested types ---------------------------------------------------- - - typedef Message_Function Function; - static const Function glActiveTexture = Message_Function_glActiveTexture; - static const Function glAttachShader = Message_Function_glAttachShader; - static const Function glBindAttribLocation = Message_Function_glBindAttribLocation; - static const Function glBindBuffer = Message_Function_glBindBuffer; - static const Function glBindFramebuffer = Message_Function_glBindFramebuffer; - static const Function glBindRenderbuffer = Message_Function_glBindRenderbuffer; - static const Function glBindTexture = Message_Function_glBindTexture; - static const Function glBlendColor = Message_Function_glBlendColor; - static const Function glBlendEquation = Message_Function_glBlendEquation; - static const Function glBlendEquationSeparate = Message_Function_glBlendEquationSeparate; - static const Function glBlendFunc = Message_Function_glBlendFunc; - static const Function glBlendFuncSeparate = Message_Function_glBlendFuncSeparate; - static const Function glBufferData = Message_Function_glBufferData; - static const Function glBufferSubData = Message_Function_glBufferSubData; - static const Function glCheckFramebufferStatus = Message_Function_glCheckFramebufferStatus; - static const Function glClear = Message_Function_glClear; - static const Function glClearColor = Message_Function_glClearColor; - static const Function glClearDepthf = Message_Function_glClearDepthf; - static const Function glClearStencil = Message_Function_glClearStencil; - static const Function glColorMask = Message_Function_glColorMask; - static const Function glCompileShader = Message_Function_glCompileShader; - static const Function glCompressedTexImage2D = Message_Function_glCompressedTexImage2D; - static const Function glCompressedTexSubImage2D = Message_Function_glCompressedTexSubImage2D; - static const Function glCopyTexImage2D = Message_Function_glCopyTexImage2D; - static const Function glCopyTexSubImage2D = Message_Function_glCopyTexSubImage2D; - static const Function glCreateProgram = Message_Function_glCreateProgram; - static const Function glCreateShader = Message_Function_glCreateShader; - static const Function glCullFace = Message_Function_glCullFace; - static const Function glDeleteBuffers = Message_Function_glDeleteBuffers; - static const Function glDeleteFramebuffers = Message_Function_glDeleteFramebuffers; - static const Function glDeleteProgram = Message_Function_glDeleteProgram; - static const Function glDeleteRenderbuffers = Message_Function_glDeleteRenderbuffers; - static const Function glDeleteShader = Message_Function_glDeleteShader; - static const Function glDeleteTextures = Message_Function_glDeleteTextures; - static const Function glDepthFunc = Message_Function_glDepthFunc; - static const Function glDepthMask = Message_Function_glDepthMask; - static const Function glDepthRangef = Message_Function_glDepthRangef; - static const Function glDetachShader = Message_Function_glDetachShader; - static const Function glDisable = Message_Function_glDisable; - static const Function glDisableVertexAttribArray = Message_Function_glDisableVertexAttribArray; - static const Function glDrawArrays = Message_Function_glDrawArrays; - static const Function glDrawElements = Message_Function_glDrawElements; - static const Function glEnable = Message_Function_glEnable; - static const Function glEnableVertexAttribArray = Message_Function_glEnableVertexAttribArray; - static const Function glFinish = Message_Function_glFinish; - static const Function glFlush = Message_Function_glFlush; - static const Function glFramebufferRenderbuffer = Message_Function_glFramebufferRenderbuffer; - static const Function glFramebufferTexture2D = Message_Function_glFramebufferTexture2D; - static const Function glFrontFace = Message_Function_glFrontFace; - static const Function glGenBuffers = Message_Function_glGenBuffers; - static const Function glGenerateMipmap = Message_Function_glGenerateMipmap; - static const Function glGenFramebuffers = Message_Function_glGenFramebuffers; - static const Function glGenRenderbuffers = Message_Function_glGenRenderbuffers; - static const Function glGenTextures = Message_Function_glGenTextures; - static const Function glGetActiveAttrib = Message_Function_glGetActiveAttrib; - static const Function glGetActiveUniform = Message_Function_glGetActiveUniform; - static const Function glGetAttachedShaders = Message_Function_glGetAttachedShaders; - static const Function glGetAttribLocation = Message_Function_glGetAttribLocation; - static const Function glGetBooleanv = Message_Function_glGetBooleanv; - static const Function glGetBufferParameteriv = Message_Function_glGetBufferParameteriv; - static const Function glGetError = Message_Function_glGetError; - static const Function glGetFloatv = Message_Function_glGetFloatv; - static const Function glGetFramebufferAttachmentParameteriv = Message_Function_glGetFramebufferAttachmentParameteriv; - static const Function glGetIntegerv = Message_Function_glGetIntegerv; - static const Function glGetProgramiv = Message_Function_glGetProgramiv; - static const Function glGetProgramInfoLog = Message_Function_glGetProgramInfoLog; - static const Function glGetRenderbufferParameteriv = Message_Function_glGetRenderbufferParameteriv; - static const Function glGetShaderiv = Message_Function_glGetShaderiv; - static const Function glGetShaderInfoLog = Message_Function_glGetShaderInfoLog; - static const Function glGetShaderPrecisionFormat = Message_Function_glGetShaderPrecisionFormat; - static const Function glGetShaderSource = Message_Function_glGetShaderSource; - static const Function glGetString = Message_Function_glGetString; - static const Function glGetTexParameterfv = Message_Function_glGetTexParameterfv; - static const Function glGetTexParameteriv = Message_Function_glGetTexParameteriv; - static const Function glGetUniformfv = Message_Function_glGetUniformfv; - static const Function glGetUniformiv = Message_Function_glGetUniformiv; - static const Function glGetUniformLocation = Message_Function_glGetUniformLocation; - static const Function glGetVertexAttribfv = Message_Function_glGetVertexAttribfv; - static const Function glGetVertexAttribiv = Message_Function_glGetVertexAttribiv; - static const Function glGetVertexAttribPointerv = Message_Function_glGetVertexAttribPointerv; - static const Function glHint = Message_Function_glHint; - static const Function glIsBuffer = Message_Function_glIsBuffer; - static const Function glIsEnabled = Message_Function_glIsEnabled; - static const Function glIsFramebuffer = Message_Function_glIsFramebuffer; - static const Function glIsProgram = Message_Function_glIsProgram; - static const Function glIsRenderbuffer = Message_Function_glIsRenderbuffer; - static const Function glIsShader = Message_Function_glIsShader; - static const Function glIsTexture = Message_Function_glIsTexture; - static const Function glLineWidth = Message_Function_glLineWidth; - static const Function glLinkProgram = Message_Function_glLinkProgram; - static const Function glPixelStorei = Message_Function_glPixelStorei; - static const Function glPolygonOffset = Message_Function_glPolygonOffset; - static const Function glReadPixels = Message_Function_glReadPixels; - static const Function glReleaseShaderCompiler = Message_Function_glReleaseShaderCompiler; - static const Function glRenderbufferStorage = Message_Function_glRenderbufferStorage; - static const Function glSampleCoverage = Message_Function_glSampleCoverage; - static const Function glScissor = Message_Function_glScissor; - static const Function glShaderBinary = Message_Function_glShaderBinary; - static const Function glShaderSource = Message_Function_glShaderSource; - static const Function glStencilFunc = Message_Function_glStencilFunc; - static const Function glStencilFuncSeparate = Message_Function_glStencilFuncSeparate; - static const Function glStencilMask = Message_Function_glStencilMask; - static const Function glStencilMaskSeparate = Message_Function_glStencilMaskSeparate; - static const Function glStencilOp = Message_Function_glStencilOp; - static const Function glStencilOpSeparate = Message_Function_glStencilOpSeparate; - static const Function glTexImage2D = Message_Function_glTexImage2D; - static const Function glTexParameterf = Message_Function_glTexParameterf; - static const Function glTexParameterfv = Message_Function_glTexParameterfv; - static const Function glTexParameteri = Message_Function_glTexParameteri; - static const Function glTexParameteriv = Message_Function_glTexParameteriv; - static const Function glTexSubImage2D = Message_Function_glTexSubImage2D; - static const Function glUniform1f = Message_Function_glUniform1f; - static const Function glUniform1fv = Message_Function_glUniform1fv; - static const Function glUniform1i = Message_Function_glUniform1i; - static const Function glUniform1iv = Message_Function_glUniform1iv; - static const Function glUniform2f = Message_Function_glUniform2f; - static const Function glUniform2fv = Message_Function_glUniform2fv; - static const Function glUniform2i = Message_Function_glUniform2i; - static const Function glUniform2iv = Message_Function_glUniform2iv; - static const Function glUniform3f = Message_Function_glUniform3f; - static const Function glUniform3fv = Message_Function_glUniform3fv; - static const Function glUniform3i = Message_Function_glUniform3i; - static const Function glUniform3iv = Message_Function_glUniform3iv; - static const Function glUniform4f = Message_Function_glUniform4f; - static const Function glUniform4fv = Message_Function_glUniform4fv; - static const Function glUniform4i = Message_Function_glUniform4i; - static const Function glUniform4iv = Message_Function_glUniform4iv; - static const Function glUniformMatrix2fv = Message_Function_glUniformMatrix2fv; - static const Function glUniformMatrix3fv = Message_Function_glUniformMatrix3fv; - static const Function glUniformMatrix4fv = Message_Function_glUniformMatrix4fv; - static const Function glUseProgram = Message_Function_glUseProgram; - static const Function glValidateProgram = Message_Function_glValidateProgram; - static const Function glVertexAttrib1f = Message_Function_glVertexAttrib1f; - static const Function glVertexAttrib1fv = Message_Function_glVertexAttrib1fv; - static const Function glVertexAttrib2f = Message_Function_glVertexAttrib2f; - static const Function glVertexAttrib2fv = Message_Function_glVertexAttrib2fv; - static const Function glVertexAttrib3f = Message_Function_glVertexAttrib3f; - static const Function glVertexAttrib3fv = Message_Function_glVertexAttrib3fv; - static const Function glVertexAttrib4f = Message_Function_glVertexAttrib4f; - static const Function glVertexAttrib4fv = Message_Function_glVertexAttrib4fv; - static const Function glVertexAttribPointer = Message_Function_glVertexAttribPointer; - static const Function glViewport = Message_Function_glViewport; - static const Function eglGetDisplay = Message_Function_eglGetDisplay; - static const Function eglInitialize = Message_Function_eglInitialize; - static const Function eglTerminate = Message_Function_eglTerminate; - static const Function eglGetConfigs = Message_Function_eglGetConfigs; - static const Function eglChooseConfig = Message_Function_eglChooseConfig; - static const Function eglGetConfigAttrib = Message_Function_eglGetConfigAttrib; - static const Function eglCreateWindowSurface = Message_Function_eglCreateWindowSurface; - static const Function eglCreatePixmapSurface = Message_Function_eglCreatePixmapSurface; - static const Function eglCreatePbufferSurface = Message_Function_eglCreatePbufferSurface; - static const Function eglDestroySurface = Message_Function_eglDestroySurface; - static const Function eglQuerySurface = Message_Function_eglQuerySurface; - static const Function eglCreateContext = Message_Function_eglCreateContext; - static const Function eglDestroyContext = Message_Function_eglDestroyContext; - static const Function eglMakeCurrent = Message_Function_eglMakeCurrent; - static const Function eglGetCurrentContext = Message_Function_eglGetCurrentContext; - static const Function eglGetCurrentSurface = Message_Function_eglGetCurrentSurface; - static const Function eglGetCurrentDisplay = Message_Function_eglGetCurrentDisplay; - static const Function eglQueryContext = Message_Function_eglQueryContext; - static const Function eglWaitGL = Message_Function_eglWaitGL; - static const Function eglWaitNative = Message_Function_eglWaitNative; - static const Function eglSwapBuffers = Message_Function_eglSwapBuffers; - static const Function eglCopyBuffers = Message_Function_eglCopyBuffers; - static const Function eglGetError = Message_Function_eglGetError; - static const Function eglQueryString = Message_Function_eglQueryString; - static const Function eglGetProcAddress = Message_Function_eglGetProcAddress; - static const Function eglSurfaceAttrib = Message_Function_eglSurfaceAttrib; - static const Function eglBindTexImage = Message_Function_eglBindTexImage; - static const Function eglReleaseTexImage = Message_Function_eglReleaseTexImage; - static const Function eglSwapInterval = Message_Function_eglSwapInterval; - static const Function eglBindAPI = Message_Function_eglBindAPI; - static const Function eglQueryAPI = Message_Function_eglQueryAPI; - static const Function eglWaitClient = Message_Function_eglWaitClient; - static const Function eglReleaseThread = Message_Function_eglReleaseThread; - static const Function eglCreatePbufferFromClientBuffer = Message_Function_eglCreatePbufferFromClientBuffer; - static const Function eglLockSurfaceKHR = Message_Function_eglLockSurfaceKHR; - static const Function eglUnlockSurfaceKHR = Message_Function_eglUnlockSurfaceKHR; - static const Function eglCreateImageKHR = Message_Function_eglCreateImageKHR; - static const Function eglDestroyImageKHR = Message_Function_eglDestroyImageKHR; - static const Function eglCreateSyncKHR = Message_Function_eglCreateSyncKHR; - static const Function eglDestroySyncKHR = Message_Function_eglDestroySyncKHR; - static const Function eglClientWaitSyncKHR = Message_Function_eglClientWaitSyncKHR; - static const Function eglGetSyncAttribKHR = Message_Function_eglGetSyncAttribKHR; - static const Function eglSetSwapRectangleANDROID = Message_Function_eglSetSwapRectangleANDROID; - static const Function eglGetRenderBufferANDROID = Message_Function_eglGetRenderBufferANDROID; - static const Function ACK = Message_Function_ACK; - static const Function NEG = Message_Function_NEG; - static const Function CONTINUE = Message_Function_CONTINUE; - static const Function SKIP = Message_Function_SKIP; - static const Function SETPROP = Message_Function_SETPROP; - static inline bool Function_IsValid(int value) { - return Message_Function_IsValid(value); - } - static const Function Function_MIN = - Message_Function_Function_MIN; - static const Function Function_MAX = - Message_Function_Function_MAX; - static const int Function_ARRAYSIZE = - Message_Function_Function_ARRAYSIZE; - - typedef Message_Type Type; - static const Type BeforeCall = Message_Type_BeforeCall; - static const Type AfterCall = Message_Type_AfterCall; - static const Type AfterGeneratedCall = Message_Type_AfterGeneratedCall; - static const Type Response = Message_Type_Response; - static const Type CompleteCall = Message_Type_CompleteCall; - static inline bool Type_IsValid(int value) { - return Message_Type_IsValid(value); - } - static const Type Type_MIN = - Message_Type_Type_MIN; - static const Type Type_MAX = - Message_Type_Type_MAX; - static const int Type_ARRAYSIZE = - Message_Type_Type_ARRAYSIZE; - - typedef Message_DataType DataType; - static const DataType ReferencedImage = Message_DataType_ReferencedImage; - static const DataType NonreferencedImage = Message_DataType_NonreferencedImage; - static inline bool DataType_IsValid(int value) { - return Message_DataType_IsValid(value); - } - static const DataType DataType_MIN = - Message_DataType_DataType_MIN; - static const DataType DataType_MAX = - Message_DataType_DataType_MAX; - static const int DataType_ARRAYSIZE = - Message_DataType_DataType_ARRAYSIZE; - - typedef Message_Prop Prop; - static const Prop CaptureDraw = Message_Prop_CaptureDraw; - static const Prop TimeMode = Message_Prop_TimeMode; - static const Prop ExpectResponse = Message_Prop_ExpectResponse; - static const Prop CaptureSwap = Message_Prop_CaptureSwap; - static const Prop GLConstant = Message_Prop_GLConstant; - static inline bool Prop_IsValid(int value) { - return Message_Prop_IsValid(value); - } - static const Prop Prop_MIN = - Message_Prop_Prop_MIN; - static const Prop Prop_MAX = - Message_Prop_Prop_MAX; - static const int Prop_ARRAYSIZE = - Message_Prop_Prop_ARRAYSIZE; - - // accessors ------------------------------------------------------- - - // required int32 context_id = 1; - inline bool has_context_id() const; - inline void clear_context_id(); - static const int kContextIdFieldNumber = 1; - inline ::google::protobuf::int32 context_id() const; - inline void set_context_id(::google::protobuf::int32 value); - - // required .com.android.glesv2debugger.Message.Function function = 2 [default = NEG]; - inline bool has_function() const; - inline void clear_function(); - static const int kFunctionFieldNumber = 2; - inline ::com::android::glesv2debugger::Message_Function function() const; - inline void set_function(::com::android::glesv2debugger::Message_Function value); - - // required .com.android.glesv2debugger.Message.Type type = 3; - inline bool has_type() const; - inline void clear_type(); - static const int kTypeFieldNumber = 3; - inline ::com::android::glesv2debugger::Message_Type type() const; - inline void set_type(::com::android::glesv2debugger::Message_Type value); - - // required bool expect_response = 4; - inline bool has_expect_response() const; - inline void clear_expect_response(); - static const int kExpectResponseFieldNumber = 4; - inline bool expect_response() const; - inline void set_expect_response(bool value); - - // optional int32 ret = 5; - inline bool has_ret() const; - inline void clear_ret(); - static const int kRetFieldNumber = 5; - inline ::google::protobuf::int32 ret() const; - inline void set_ret(::google::protobuf::int32 value); - - // optional int32 arg0 = 6; - inline bool has_arg0() const; - inline void clear_arg0(); - static const int kArg0FieldNumber = 6; - inline ::google::protobuf::int32 arg0() const; - inline void set_arg0(::google::protobuf::int32 value); - - // optional int32 arg1 = 7; - inline bool has_arg1() const; - inline void clear_arg1(); - static const int kArg1FieldNumber = 7; - inline ::google::protobuf::int32 arg1() const; - inline void set_arg1(::google::protobuf::int32 value); - - // optional int32 arg2 = 8; - inline bool has_arg2() const; - inline void clear_arg2(); - static const int kArg2FieldNumber = 8; - inline ::google::protobuf::int32 arg2() const; - inline void set_arg2(::google::protobuf::int32 value); - - // optional int32 arg3 = 9; - inline bool has_arg3() const; - inline void clear_arg3(); - static const int kArg3FieldNumber = 9; - inline ::google::protobuf::int32 arg3() const; - inline void set_arg3(::google::protobuf::int32 value); - - // optional int32 arg4 = 16; - inline bool has_arg4() const; - inline void clear_arg4(); - static const int kArg4FieldNumber = 16; - inline ::google::protobuf::int32 arg4() const; - inline void set_arg4(::google::protobuf::int32 value); - - // optional int32 arg5 = 17; - inline bool has_arg5() const; - inline void clear_arg5(); - static const int kArg5FieldNumber = 17; - inline ::google::protobuf::int32 arg5() const; - inline void set_arg5(::google::protobuf::int32 value); - - // optional int32 arg6 = 18; - inline bool has_arg6() const; - inline void clear_arg6(); - static const int kArg6FieldNumber = 18; - inline ::google::protobuf::int32 arg6() const; - inline void set_arg6(::google::protobuf::int32 value); - - // optional int32 arg7 = 19; - inline bool has_arg7() const; - inline void clear_arg7(); - static const int kArg7FieldNumber = 19; - inline ::google::protobuf::int32 arg7() const; - inline void set_arg7(::google::protobuf::int32 value); - - // optional int32 arg8 = 20; - inline bool has_arg8() const; - inline void clear_arg8(); - static const int kArg8FieldNumber = 20; - inline ::google::protobuf::int32 arg8() const; - inline void set_arg8(::google::protobuf::int32 value); - - // optional bytes data = 10; - inline bool has_data() const; - inline void clear_data(); - static const int kDataFieldNumber = 10; - inline const ::std::string& data() const; - inline void set_data(const ::std::string& value); - inline void set_data(const char* value); - inline void set_data(const void* value, size_t size); - inline ::std::string* mutable_data(); - - // optional .com.android.glesv2debugger.Message.DataType data_type = 23; - inline bool has_data_type() const; - inline void clear_data_type(); - static const int kDataTypeFieldNumber = 23; - inline ::com::android::glesv2debugger::Message_DataType data_type() const; - inline void set_data_type(::com::android::glesv2debugger::Message_DataType value); - - // optional int32 pixel_format = 24; - inline bool has_pixel_format() const; - inline void clear_pixel_format(); - static const int kPixelFormatFieldNumber = 24; - inline ::google::protobuf::int32 pixel_format() const; - inline void set_pixel_format(::google::protobuf::int32 value); - - // optional int32 pixel_type = 25; - inline bool has_pixel_type() const; - inline void clear_pixel_type(); - static const int kPixelTypeFieldNumber = 25; - inline ::google::protobuf::int32 pixel_type() const; - inline void set_pixel_type(::google::protobuf::int32 value); - - // optional int32 image_width = 26; - inline bool has_image_width() const; - inline void clear_image_width(); - static const int kImageWidthFieldNumber = 26; - inline ::google::protobuf::int32 image_width() const; - inline void set_image_width(::google::protobuf::int32 value); - - // optional int32 image_height = 27; - inline bool has_image_height() const; - inline void clear_image_height(); - static const int kImageHeightFieldNumber = 27; - inline ::google::protobuf::int32 image_height() const; - inline void set_image_height(::google::protobuf::int32 value); - - // optional float time = 11; - inline bool has_time() const; - inline void clear_time(); - static const int kTimeFieldNumber = 11; - inline float time() const; - inline void set_time(float value); - - // optional .com.android.glesv2debugger.Message.Prop prop = 21; - inline bool has_prop() const; - inline void clear_prop(); - static const int kPropFieldNumber = 21; - inline ::com::android::glesv2debugger::Message_Prop prop() const; - inline void set_prop(::com::android::glesv2debugger::Message_Prop value); - - // optional float clock = 22; - inline bool has_clock() const; - inline void clear_clock(); - static const int kClockFieldNumber = 22; - inline float clock() const; - inline void set_clock(float value); - - // @@protoc_insertion_point(class_scope:com.android.glesv2debugger.Message) - private: - mutable int _cached_size_; - - ::google::protobuf::int32 context_id_; - int function_; - int type_; - bool expect_response_; - ::google::protobuf::int32 ret_; - ::google::protobuf::int32 arg0_; - ::google::protobuf::int32 arg1_; - ::google::protobuf::int32 arg2_; - ::google::protobuf::int32 arg3_; - ::google::protobuf::int32 arg4_; - ::google::protobuf::int32 arg5_; - ::google::protobuf::int32 arg6_; - ::google::protobuf::int32 arg7_; - ::google::protobuf::int32 arg8_; - ::std::string* data_; - static const ::std::string _default_data_; - int data_type_; - ::google::protobuf::int32 pixel_format_; - ::google::protobuf::int32 pixel_type_; - ::google::protobuf::int32 image_width_; - ::google::protobuf::int32 image_height_; - float time_; - int prop_; - float clock_; - friend void protobuf_AddDesc_debugger_5fmessage_2eproto(); - friend void protobuf_AssignDesc_debugger_5fmessage_2eproto(); - friend void protobuf_ShutdownFile_debugger_5fmessage_2eproto(); - - ::google::protobuf::uint32 _has_bits_[(23 + 31) / 32]; - - // WHY DOES & HAVE LOWER PRECEDENCE THAN != !? - inline bool _has_bit(int index) const { - return (_has_bits_[index / 32] & (1u << (index % 32))) != 0; - } - inline void _set_bit(int index) { - _has_bits_[index / 32] |= (1u << (index % 32)); - } - inline void _clear_bit(int index) { - _has_bits_[index / 32] &= ~(1u << (index % 32)); - } - - void InitAsDefaultInstance(); - static Message* default_instance_; -}; -// =================================================================== - - -// =================================================================== - -// Message - -// required int32 context_id = 1; -inline bool Message::has_context_id() const { - return _has_bit(0); -} -inline void Message::clear_context_id() { - context_id_ = 0; - _clear_bit(0); -} -inline ::google::protobuf::int32 Message::context_id() const { - return context_id_; -} -inline void Message::set_context_id(::google::protobuf::int32 value) { - _set_bit(0); - context_id_ = value; -} - -// required .com.android.glesv2debugger.Message.Function function = 2 [default = NEG]; -inline bool Message::has_function() const { - return _has_bit(1); -} -inline void Message::clear_function() { - function_ = 187; - _clear_bit(1); -} -inline ::com::android::glesv2debugger::Message_Function Message::function() const { - return static_cast< ::com::android::glesv2debugger::Message_Function >(function_); -} -inline void Message::set_function(::com::android::glesv2debugger::Message_Function value) { - GOOGLE_DCHECK(::com::android::glesv2debugger::Message_Function_IsValid(value)); - _set_bit(1); - function_ = value; -} - -// required .com.android.glesv2debugger.Message.Type type = 3; -inline bool Message::has_type() const { - return _has_bit(2); -} -inline void Message::clear_type() { - type_ = 0; - _clear_bit(2); -} -inline ::com::android::glesv2debugger::Message_Type Message::type() const { - return static_cast< ::com::android::glesv2debugger::Message_Type >(type_); -} -inline void Message::set_type(::com::android::glesv2debugger::Message_Type value) { - GOOGLE_DCHECK(::com::android::glesv2debugger::Message_Type_IsValid(value)); - _set_bit(2); - type_ = value; -} - -// required bool expect_response = 4; -inline bool Message::has_expect_response() const { - return _has_bit(3); -} -inline void Message::clear_expect_response() { - expect_response_ = false; - _clear_bit(3); -} -inline bool Message::expect_response() const { - return expect_response_; -} -inline void Message::set_expect_response(bool value) { - _set_bit(3); - expect_response_ = value; -} - -// optional int32 ret = 5; -inline bool Message::has_ret() const { - return _has_bit(4); -} -inline void Message::clear_ret() { - ret_ = 0; - _clear_bit(4); -} -inline ::google::protobuf::int32 Message::ret() const { - return ret_; -} -inline void Message::set_ret(::google::protobuf::int32 value) { - _set_bit(4); - ret_ = value; -} - -// optional int32 arg0 = 6; -inline bool Message::has_arg0() const { - return _has_bit(5); -} -inline void Message::clear_arg0() { - arg0_ = 0; - _clear_bit(5); -} -inline ::google::protobuf::int32 Message::arg0() const { - return arg0_; -} -inline void Message::set_arg0(::google::protobuf::int32 value) { - _set_bit(5); - arg0_ = value; -} - -// optional int32 arg1 = 7; -inline bool Message::has_arg1() const { - return _has_bit(6); -} -inline void Message::clear_arg1() { - arg1_ = 0; - _clear_bit(6); -} -inline ::google::protobuf::int32 Message::arg1() const { - return arg1_; -} -inline void Message::set_arg1(::google::protobuf::int32 value) { - _set_bit(6); - arg1_ = value; -} - -// optional int32 arg2 = 8; -inline bool Message::has_arg2() const { - return _has_bit(7); -} -inline void Message::clear_arg2() { - arg2_ = 0; - _clear_bit(7); -} -inline ::google::protobuf::int32 Message::arg2() const { - return arg2_; -} -inline void Message::set_arg2(::google::protobuf::int32 value) { - _set_bit(7); - arg2_ = value; -} - -// optional int32 arg3 = 9; -inline bool Message::has_arg3() const { - return _has_bit(8); -} -inline void Message::clear_arg3() { - arg3_ = 0; - _clear_bit(8); -} -inline ::google::protobuf::int32 Message::arg3() const { - return arg3_; -} -inline void Message::set_arg3(::google::protobuf::int32 value) { - _set_bit(8); - arg3_ = value; -} - -// optional int32 arg4 = 16; -inline bool Message::has_arg4() const { - return _has_bit(9); -} -inline void Message::clear_arg4() { - arg4_ = 0; - _clear_bit(9); -} -inline ::google::protobuf::int32 Message::arg4() const { - return arg4_; -} -inline void Message::set_arg4(::google::protobuf::int32 value) { - _set_bit(9); - arg4_ = value; -} - -// optional int32 arg5 = 17; -inline bool Message::has_arg5() const { - return _has_bit(10); -} -inline void Message::clear_arg5() { - arg5_ = 0; - _clear_bit(10); -} -inline ::google::protobuf::int32 Message::arg5() const { - return arg5_; -} -inline void Message::set_arg5(::google::protobuf::int32 value) { - _set_bit(10); - arg5_ = value; -} - -// optional int32 arg6 = 18; -inline bool Message::has_arg6() const { - return _has_bit(11); -} -inline void Message::clear_arg6() { - arg6_ = 0; - _clear_bit(11); -} -inline ::google::protobuf::int32 Message::arg6() const { - return arg6_; -} -inline void Message::set_arg6(::google::protobuf::int32 value) { - _set_bit(11); - arg6_ = value; -} - -// optional int32 arg7 = 19; -inline bool Message::has_arg7() const { - return _has_bit(12); -} -inline void Message::clear_arg7() { - arg7_ = 0; - _clear_bit(12); -} -inline ::google::protobuf::int32 Message::arg7() const { - return arg7_; -} -inline void Message::set_arg7(::google::protobuf::int32 value) { - _set_bit(12); - arg7_ = value; -} - -// optional int32 arg8 = 20; -inline bool Message::has_arg8() const { - return _has_bit(13); -} -inline void Message::clear_arg8() { - arg8_ = 0; - _clear_bit(13); -} -inline ::google::protobuf::int32 Message::arg8() const { - return arg8_; -} -inline void Message::set_arg8(::google::protobuf::int32 value) { - _set_bit(13); - arg8_ = value; -} - -// optional bytes data = 10; -inline bool Message::has_data() const { - return _has_bit(14); -} -inline void Message::clear_data() { - if (data_ != &_default_data_) { - data_->clear(); - } - _clear_bit(14); -} -inline const ::std::string& Message::data() const { - return *data_; -} -inline void Message::set_data(const ::std::string& value) { - _set_bit(14); - if (data_ == &_default_data_) { - data_ = new ::std::string; - } - data_->assign(value); -} -inline void Message::set_data(const char* value) { - _set_bit(14); - if (data_ == &_default_data_) { - data_ = new ::std::string; - } - data_->assign(value); -} -inline void Message::set_data(const void* value, size_t size) { - _set_bit(14); - if (data_ == &_default_data_) { - data_ = new ::std::string; - } - data_->assign(reinterpret_cast(value), size); -} -inline ::std::string* Message::mutable_data() { - _set_bit(14); - if (data_ == &_default_data_) { - data_ = new ::std::string; - } - return data_; -} - -// optional .com.android.glesv2debugger.Message.DataType data_type = 23; -inline bool Message::has_data_type() const { - return _has_bit(15); -} -inline void Message::clear_data_type() { - data_type_ = 0; - _clear_bit(15); -} -inline ::com::android::glesv2debugger::Message_DataType Message::data_type() const { - return static_cast< ::com::android::glesv2debugger::Message_DataType >(data_type_); -} -inline void Message::set_data_type(::com::android::glesv2debugger::Message_DataType value) { - GOOGLE_DCHECK(::com::android::glesv2debugger::Message_DataType_IsValid(value)); - _set_bit(15); - data_type_ = value; -} - -// optional int32 pixel_format = 24; -inline bool Message::has_pixel_format() const { - return _has_bit(16); -} -inline void Message::clear_pixel_format() { - pixel_format_ = 0; - _clear_bit(16); -} -inline ::google::protobuf::int32 Message::pixel_format() const { - return pixel_format_; -} -inline void Message::set_pixel_format(::google::protobuf::int32 value) { - _set_bit(16); - pixel_format_ = value; -} - -// optional int32 pixel_type = 25; -inline bool Message::has_pixel_type() const { - return _has_bit(17); -} -inline void Message::clear_pixel_type() { - pixel_type_ = 0; - _clear_bit(17); -} -inline ::google::protobuf::int32 Message::pixel_type() const { - return pixel_type_; -} -inline void Message::set_pixel_type(::google::protobuf::int32 value) { - _set_bit(17); - pixel_type_ = value; -} - -// optional int32 image_width = 26; -inline bool Message::has_image_width() const { - return _has_bit(18); -} -inline void Message::clear_image_width() { - image_width_ = 0; - _clear_bit(18); -} -inline ::google::protobuf::int32 Message::image_width() const { - return image_width_; -} -inline void Message::set_image_width(::google::protobuf::int32 value) { - _set_bit(18); - image_width_ = value; -} - -// optional int32 image_height = 27; -inline bool Message::has_image_height() const { - return _has_bit(19); -} -inline void Message::clear_image_height() { - image_height_ = 0; - _clear_bit(19); -} -inline ::google::protobuf::int32 Message::image_height() const { - return image_height_; -} -inline void Message::set_image_height(::google::protobuf::int32 value) { - _set_bit(19); - image_height_ = value; -} - -// optional float time = 11; -inline bool Message::has_time() const { - return _has_bit(20); -} -inline void Message::clear_time() { - time_ = 0; - _clear_bit(20); -} -inline float Message::time() const { - return time_; -} -inline void Message::set_time(float value) { - _set_bit(20); - time_ = value; -} - -// optional .com.android.glesv2debugger.Message.Prop prop = 21; -inline bool Message::has_prop() const { - return _has_bit(21); -} -inline void Message::clear_prop() { - prop_ = 0; - _clear_bit(21); -} -inline ::com::android::glesv2debugger::Message_Prop Message::prop() const { - return static_cast< ::com::android::glesv2debugger::Message_Prop >(prop_); -} -inline void Message::set_prop(::com::android::glesv2debugger::Message_Prop value) { - GOOGLE_DCHECK(::com::android::glesv2debugger::Message_Prop_IsValid(value)); - _set_bit(21); - prop_ = value; -} - -// optional float clock = 22; -inline bool Message::has_clock() const { - return _has_bit(22); -} -inline void Message::clear_clock() { - clock_ = 0; - _clear_bit(22); -} -inline float Message::clock() const { - return clock_; -} -inline void Message::set_clock(float value) { - _set_bit(22); - clock_ = value; -} - - -// @@protoc_insertion_point(namespace_scope) - -} // namespace glesv2debugger -} // namespace android -} // namespace com - -// @@protoc_insertion_point(global_scope) - -#endif // PROTOBUF_debugger_5fmessage_2eproto__INCLUDED diff --git a/opengl/libs/GLES2_dbg/src/egl.cpp b/opengl/libs/GLES2_dbg/src/egl.cpp deleted file mode 100644 index bbea3bd557..0000000000 --- a/opengl/libs/GLES2_dbg/src/egl.cpp +++ /dev/null @@ -1,54 +0,0 @@ -/* - ** Copyright 2011, The Android Open Source Project - ** - ** Licensed under the Apache License, Version 2.0 (the "License"); - ** you may not use this file except in compliance with the License. - ** You may obtain a copy of the License at - ** - ** http://www.apache.org/licenses/LICENSE-2.0 - ** - ** Unless required by applicable law or agreed to in writing, software - ** distributed under the License is distributed on an "AS IS" BASIS, - ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ** See the License for the specific language governing permissions and - ** limitations under the License. - */ - -#include "header.h" - -EGLBoolean Debug_eglSwapBuffers(EGLDisplay dpy, EGLSurface draw) -{ - DbgContext * const dbg = getDbgContextThreadSpecific(); - glesv2debugger::Message msg; - struct : public FunctionCall { - EGLDisplay dpy; - EGLSurface draw; - - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - msg.set_time(-1); - return reinterpret_cast(true); - } - } caller; - caller.dpy = dpy; - caller.draw = draw; - - msg.set_arg0(reinterpret_cast(dpy)); - msg.set_arg1(reinterpret_cast(draw)); - if (dbg->captureSwap > 0) { - dbg->captureSwap--; - int viewport[4] = {}; - dbg->hooks->gl.glGetIntegerv(GL_VIEWPORT, viewport); - void * pixels = dbg->GetReadPixelsBuffer(viewport[2] * viewport[3] * - dbg->readBytesPerPixel); - dbg->hooks->gl.glReadPixels(viewport[0], viewport[1], viewport[2], - viewport[3], GL_RGBA, GL_UNSIGNED_BYTE, pixels); - dbg->CompressReadPixelBuffer(msg.mutable_data()); - msg.set_data_type(msg.ReferencedImage); - msg.set_pixel_format(GL_RGBA); - msg.set_pixel_type(GL_UNSIGNED_BYTE); - msg.set_image_width(viewport[2]); - msg.set_image_height(viewport[3]); - } - int * ret = MessageLoop(caller, msg, glesv2debugger::Message_Function_eglSwapBuffers); - return static_cast(reinterpret_cast(ret)); -} diff --git a/opengl/libs/GLES2_dbg/src/header.h b/opengl/libs/GLES2_dbg/src/header.h deleted file mode 100644 index 0ab48902b2..0000000000 --- a/opengl/libs/GLES2_dbg/src/header.h +++ /dev/null @@ -1,178 +0,0 @@ -/* - ** Copyright 2011, The Android Open Source Project - ** - ** Licensed under the Apache License, Version 2.0 (the "License"); - ** you may not use this file except in compliance with the License. - ** You may obtain a copy of the License at - ** - ** http://www.apache.org/licenses/LICENSE-2.0 - ** - ** Unless required by applicable law or agreed to in writing, software - ** distributed under the License is distributed on an "AS IS" BASIS, - ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ** See the License for the specific language governing permissions and - ** limitations under the License. - */ - -#ifndef ANDROID_GLES2_DBG_HEADER_H -#define ANDROID_GLES2_DBG_HEADER_H - -#include -#include -#include -#include - -#include -#include - -#include -#include - -#include "hooks.h" - -#include "glesv2dbg.h" - -#define GL_ENTRY(_r, _api, ...) _r Debug_##_api ( __VA_ARGS__ ); -#include "glesv2dbg_functions.h" - -#include "debugger_message.pb.h" - -using namespace android; -using namespace com::android; - -#ifndef __location__ -#define __HIERALLOC_STRING_0__(s) #s -#define __HIERALLOC_STRING_1__(s) __HIERALLOC_STRING_0__(s) -#define __HIERALLOC_STRING_2__ __HIERALLOC_STRING_1__(__LINE__) -#define __location__ __FILE__ ":" __HIERALLOC_STRING_2__ -#endif - -#undef assert -#define assert(expr) if (!(expr)) { ALOGD("\n*\n*\n* assert: %s at %s \n*\n*", #expr, __location__); int * x = 0; *x = 5; } -//#undef ALOGD -//#define ALOGD(...) - -namespace android -{ - -struct GLFunctionBitfield { - unsigned char field [24]; // 8 * 24 = 192 - - void Bit(const glesv2debugger::Message_Function function, bool bit) { - const unsigned byte = function / 8, mask = 1 << (function % 8); - if (bit) - field[byte] |= mask; - else - field[byte] &= ~mask; - } - - bool Bit(const glesv2debugger::Message_Function function) const { - const unsigned byte = function / 8, mask = 1 << (function % 8); - return field[byte] & mask; - } -}; - -struct DbgContext { - static const unsigned int LZF_CHUNK_SIZE = 256 * 1024; - -private: - char * lzf_buf; // malloc / free; for lzf chunk compression and other uses - - // used as buffer and reference frame for ReadPixels; malloc/free - unsigned * lzf_ref [2]; - unsigned lzf_readIndex; // 0 or 1 - unsigned lzf_refSize, lzf_refBufSize; // bytes - -public: - const unsigned int version; // 0 is GLES1, 1 is GLES2 - const gl_hooks_t * const hooks; - const unsigned int MAX_VERTEX_ATTRIBS; - const unsigned int readBytesPerPixel; - - unsigned int captureSwap; // number of eglSwapBuffers to glReadPixels - unsigned int captureDraw; // number of glDrawArrays/Elements to glReadPixels - - GLFunctionBitfield expectResponse; - - struct VertexAttrib { - GLenum type; // element data type - unsigned size; // number of data per element - unsigned stride; // calculated number of bytes between elements - const void * ptr; - unsigned elemSize; // calculated number of bytes per element - GLuint buffer; // buffer name - GLboolean normalized : 1; - GLboolean enabled : 1; - VertexAttrib() : type(0), size(0), stride(0), ptr(NULL), elemSize(0), - buffer(0), normalized(0), enabled(0) {} - } * vertexAttribs; - bool hasNonVBOAttribs; // whether any enabled vertexAttrib is user pointer - - struct VBO { - const GLuint name; - const GLenum target; - VBO * next; - void * data; // malloc/free - unsigned size; // in bytes - VBO(const GLuint name, const GLenum target, VBO * head) : name(name), - target(target), next(head), data(NULL), size(0) {} - } * indexBuffers; // linked list of all index buffers - VBO * indexBuffer; // currently bound index buffer - - GLuint program; - unsigned maxAttrib; // number of slots used by program - - DbgContext(const unsigned version, const gl_hooks_t * const hooks, - const unsigned MAX_VERTEX_ATTRIBS); - ~DbgContext(); - - void Fetch(const unsigned index, std::string * const data) const; - void Compress(const void * in_data, unsigned in_len, std::string * const outStr); - static unsigned char * Decompress(const void * in, const unsigned int inLen, - unsigned int * const outLen); // malloc/free - void * GetReadPixelsBuffer(const unsigned size); - bool IsReadPixelBuffer(const void * const ptr) { - return ptr == lzf_ref[lzf_readIndex]; - } - void CompressReadPixelBuffer(std::string * const outStr); - char * GetBuffer(); // allocates lzf_buf if NULL - unsigned int GetBufferSize(); // allocates lzf_buf if NULL - - void glUseProgram(GLuint program); - void glEnableVertexAttribArray(GLuint index); - void glDisableVertexAttribArray(GLuint index); - void glVertexAttribPointer(GLuint indx, GLint size, GLenum type, - GLboolean normalized, GLsizei stride, const GLvoid* ptr); - void glBindBuffer(GLenum target, GLuint buffer); - void glBufferData(GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage); - void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data); - void glDeleteBuffers(GLsizei n, const GLuint *buffers); -}; - -DbgContext * getDbgContextThreadSpecific(); - -struct FunctionCall { - virtual const int * operator()(gl_hooks_t::gl_t const * const _c, - glesv2debugger::Message & msg) = 0; - virtual ~FunctionCall() {} -}; - -// move these into DbgContext as static -extern int timeMode; // SYSTEM_TIME_ - -extern int clientSock, serverSock; - -unsigned GetBytesPerPixel(const GLenum format, const GLenum type); - -// every Debug_gl* function calls this to send message to client and possibly receive commands -int * MessageLoop(FunctionCall & functionCall, glesv2debugger::Message & msg, - const glesv2debugger::Message_Function function); - -void Receive(glesv2debugger::Message & cmd); -float Send(const glesv2debugger::Message & msg, glesv2debugger::Message & cmd); -void SetProp(DbgContext * const dbg, const glesv2debugger::Message & cmd); -const int * GenerateCall(DbgContext * const dbg, const glesv2debugger::Message & cmd, - glesv2debugger::Message & msg, const int * const prevRet); -}; // namespace android { - -#endif // #ifndef ANDROID_GLES2_DBG_HEADER_H diff --git a/opengl/libs/GLES2_dbg/src/server.cpp b/opengl/libs/GLES2_dbg/src/server.cpp deleted file mode 100644 index 3e93697074..0000000000 --- a/opengl/libs/GLES2_dbg/src/server.cpp +++ /dev/null @@ -1,312 +0,0 @@ -/* - ** Copyright 2011, The Android Open Source Project - ** - ** Licensed under the Apache License, Version 2.0 (the "License"); - ** you may not use this file except in compliance with the License. - ** You may obtain a copy of the License at - ** - ** http://www.apache.org/licenses/LICENSE-2.0 - ** - ** Unless required by applicable law or agreed to in writing, software - ** distributed under the License is distributed on an "AS IS" BASIS, - ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ** See the License for the specific language governing permissions and - ** limitations under the License. - */ - -#include -#include -#include -#include -#include -#include -#include - -#include "header.h" - -namespace android -{ - -int serverSock = -1, clientSock = -1; -FILE * file = NULL; -unsigned int MAX_FILE_SIZE = 0; -int timeMode = SYSTEM_TIME_THREAD; - -static void Die(const char * msg) -{ - ALOGD("\n*\n*\n* GLESv2_dbg: Die: %s \n*\n*", msg); - StopDebugServer(); - exit(1); -} - -void StartDebugServer(const unsigned short port, const bool forceUseFile, - const unsigned int maxFileSize, const char * const filePath) -{ - MAX_FILE_SIZE = maxFileSize; - - ALOGD("GLESv2_dbg: StartDebugServer"); - if (serverSock >= 0 || file) - return; - - ALOGD("GLESv2_dbg: StartDebugServer create socket"); - struct sockaddr_in server = {}, client = {}; - - /* Create the TCP socket */ - if (forceUseFile || (serverSock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP)) < 0) { - file = fopen(filePath, "wb"); - if (!file) - Die("Failed to create socket and file"); - else - return; - } - /* Construct the server sockaddr_in structure */ - server.sin_family = AF_INET; /* Internet/IP */ - server.sin_addr.s_addr = htonl(INADDR_LOOPBACK); /* Incoming addr */ - server.sin_port = htons(port); /* server port */ - - /* Bind the server socket */ - socklen_t sizeofSockaddr_in = sizeof(sockaddr_in); - if (bind(serverSock, (struct sockaddr *) &server, - sizeof(server)) < 0) { - Die("Failed to bind the server socket"); - } - /* Listen on the server socket */ - if (listen(serverSock, 1) < 0) { - Die("Failed to listen on server socket"); - } - - ALOGD("server started on %d \n", server.sin_port); - - - /* Wait for client connection */ - if ((clientSock = - accept(serverSock, (struct sockaddr *) &client, - &sizeofSockaddr_in)) < 0) { - Die("Failed to accept client connection"); - } - - ALOGD("Client connected: %s\n", inet_ntoa(client.sin_addr)); -// fcntl(clientSock, F_SETFL, O_NONBLOCK); -} - -void StopDebugServer() -{ - ALOGD("GLESv2_dbg: StopDebugServer"); - if (clientSock > 0) { - close(clientSock); - clientSock = -1; - } - if (serverSock > 0) { - close(serverSock); - serverSock = -1; - } - if (file) { - fclose(file); - file = NULL; - } -} - -void Receive(glesv2debugger::Message & cmd) -{ - if (clientSock < 0) - return; - unsigned len = 0; - int received = recv(clientSock, &len, 4, MSG_WAITALL); - if (received < 0) - Die("Failed to receive response length"); - else if (4 != received) { - ALOGD("received %dB: %.8X", received, len); - Die("Received length mismatch, expected 4"); - } - static void * buffer = NULL; - static unsigned bufferSize = 0; - if (bufferSize < len) { - buffer = realloc(buffer, len); - assert(buffer); - bufferSize = len; - } - received = recv(clientSock, buffer, len, MSG_WAITALL); - if (received < 0) - Die("Failed to receive response"); - else if (len != received) - Die("Received length mismatch"); - cmd.Clear(); - cmd.ParseFromArray(buffer, len); -} - -bool TryReceive(glesv2debugger::Message & cmd) -{ - if (clientSock < 0) - return false; - fd_set readSet; - FD_ZERO(&readSet); - FD_SET(clientSock, &readSet); - timeval timeout; - timeout.tv_sec = timeout.tv_usec = 0; - - int rc = select(clientSock + 1, &readSet, NULL, NULL, &timeout); - if (rc < 0) - Die("failed to select clientSock"); - - bool received = false; - if (FD_ISSET(clientSock, &readSet)) { - ALOGD("TryReceive: avaiable for read"); - Receive(cmd); - return true; - } - return false; -} - -float Send(const glesv2debugger::Message & msg, glesv2debugger::Message & cmd) -{ - // TODO: use per DbgContext send/receive buffer and async socket - // instead of mutex and blocking io; watch out for large messages - static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; - struct Autolock { - Autolock() { - pthread_mutex_lock(&mutex); - } - ~Autolock() { - pthread_mutex_unlock(&mutex); - } - } autolock; - - if (msg.function() != glesv2debugger::Message_Function_ACK) - assert(msg.has_context_id() && msg.context_id() != 0); - static std::string str; - msg.SerializeToString(&str); - const uint32_t len = str.length(); - if (clientSock < 0) { - if (file) { - fwrite(&len, sizeof(len), 1, file); - fwrite(str.data(), len, 1, file); - if (ftell(file) >= MAX_FILE_SIZE) { - fclose(file); - Die("MAX_FILE_SIZE reached"); - } - } - return 0; - } - int sent = -1; - sent = send(clientSock, &len, sizeof(len), 0); - if (sent != sizeof(len)) { - ALOGD("actual sent=%d expected=%d clientSock=%d", sent, sizeof(len), clientSock); - Die("Failed to send message length"); - } - nsecs_t c0 = systemTime(timeMode); - sent = send(clientSock, str.data(), str.length(), 0); - float t = (float)ns2ms(systemTime(timeMode) - c0); - if (sent != str.length()) { - ALOGD("actual sent=%d expected=%d clientSock=%d", sent, str.length(), clientSock); - Die("Failed to send message"); - } - // TODO: factor Receive & TryReceive out and into MessageLoop, or add control argument. - // mean while, if server is sending a SETPROP then don't try to receive, - // because server will not be processing received command - if (msg.function() == msg.SETPROP) - return t; - // try to receive commands even though not expecting response, - // since client can send SETPROP and other commands anytime - if (!msg.expect_response()) { - if (TryReceive(cmd)) { - if (glesv2debugger::Message_Function_SETPROP == cmd.function()) - ALOGD("Send: TryReceived SETPROP"); - else - ALOGD("Send: TryReceived %u", cmd.function()); - } - } else - Receive(cmd); - return t; -} - -void SetProp(DbgContext * const dbg, const glesv2debugger::Message & cmd) -{ - switch (cmd.prop()) { - case glesv2debugger::Message_Prop_CaptureDraw: - ALOGD("SetProp Message_Prop_CaptureDraw %d", cmd.arg0()); - dbg->captureDraw = cmd.arg0(); - break; - case glesv2debugger::Message_Prop_TimeMode: - ALOGD("SetProp Message_Prop_TimeMode %d", cmd.arg0()); - timeMode = cmd.arg0(); - break; - case glesv2debugger::Message_Prop_ExpectResponse: - ALOGD("SetProp Message_Prop_ExpectResponse %d=%d", cmd.arg0(), cmd.arg1()); - dbg->expectResponse.Bit((glesv2debugger::Message_Function)cmd.arg0(), cmd.arg1()); - break; - case glesv2debugger::Message_Prop_CaptureSwap: - ALOGD("SetProp CaptureSwap %d", cmd.arg0()); - dbg->captureSwap = cmd.arg0(); - break; - default: - assert(0); - } -} - -int * MessageLoop(FunctionCall & functionCall, glesv2debugger::Message & msg, - const glesv2debugger::Message_Function function) -{ - DbgContext * const dbg = getDbgContextThreadSpecific(); - const int * ret = 0; - glesv2debugger::Message cmd; - msg.set_context_id(reinterpret_cast(dbg)); - msg.set_type(glesv2debugger::Message_Type_BeforeCall); - bool expectResponse = dbg->expectResponse.Bit(function); - msg.set_expect_response(expectResponse); - msg.set_function(function); - - // when not exectResponse, set cmd to CONTINUE then SKIP - // cmd will be overwritten by received command - cmd.set_function(glesv2debugger::Message_Function_CONTINUE); - cmd.set_expect_response(expectResponse); - glesv2debugger::Message_Function oldCmd = cmd.function(); - Send(msg, cmd); - expectResponse = cmd.expect_response(); - while (true) { - msg.Clear(); - nsecs_t c0 = systemTime(timeMode); - switch (cmd.function()) { - case glesv2debugger::Message_Function_CONTINUE: - ret = functionCall(&dbg->hooks->gl, msg); - while (GLenum error = dbg->hooks->gl.glGetError()) - ALOGD("Function=%u glGetError() = 0x%.4X", function, error); - if (!msg.has_time()) // some has output data copy, so time inside call - msg.set_time((systemTime(timeMode) - c0) * 1e-6f); - msg.set_context_id(reinterpret_cast(dbg)); - msg.set_function(function); - msg.set_type(glesv2debugger::Message_Type_AfterCall); - msg.set_expect_response(expectResponse); - if (!expectResponse) { - cmd.set_function(glesv2debugger::Message_Function_SKIP); - cmd.set_expect_response(false); - } - oldCmd = cmd.function(); - Send(msg, cmd); - expectResponse = cmd.expect_response(); - break; - case glesv2debugger::Message_Function_SKIP: - return const_cast(ret); - case glesv2debugger::Message_Function_SETPROP: - SetProp(dbg, cmd); - expectResponse = cmd.expect_response(); - if (!expectResponse) // SETPROP is "out of band" - cmd.set_function(oldCmd); - else - Receive(cmd); - break; - default: - ret = GenerateCall(dbg, cmd, msg, ret); - msg.set_expect_response(expectResponse); - if (!expectResponse) { - cmd.set_function(cmd.SKIP); - cmd.set_expect_response(expectResponse); - } - oldCmd = cmd.function(); - Send(msg, cmd); - expectResponse = cmd.expect_response(); - break; - } - } - return 0; -} -}; // namespace android { diff --git a/opengl/libs/GLES2_dbg/src/vertex.cpp b/opengl/libs/GLES2_dbg/src/vertex.cpp deleted file mode 100644 index 70c34333db..0000000000 --- a/opengl/libs/GLES2_dbg/src/vertex.cpp +++ /dev/null @@ -1,214 +0,0 @@ -/* - ** Copyright 2011, The Android Open Source Project - ** - ** Licensed under the Apache License, Version 2.0 (the "License"); - ** you may not use this file except in compliance with the License. - ** You may obtain a copy of the License at - ** - ** http://www.apache.org/licenses/LICENSE-2.0 - ** - ** Unless required by applicable law or agreed to in writing, software - ** distributed under the License is distributed on an "AS IS" BASIS, - ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ** See the License for the specific language governing permissions and - ** limitations under the License. - */ - -#include "header.h" - -namespace android -{ -bool capture; // capture after each glDraw* -} - -void Debug_glDrawArrays(GLenum mode, GLint first, GLsizei count) -{ - DbgContext * const dbg = getDbgContextThreadSpecific(); - glesv2debugger::Message msg, cmd; - msg.set_context_id(reinterpret_cast(dbg)); - msg.set_type(glesv2debugger::Message_Type_BeforeCall); - bool expectResponse = dbg->expectResponse.Bit(glesv2debugger::Message_Function_glDrawArrays); - msg.set_expect_response(expectResponse); - msg.set_function(glesv2debugger::Message_Function_glDrawArrays); - msg.set_arg0(mode); - msg.set_arg1(first); - msg.set_arg2(count); - - msg.set_arg7(dbg->maxAttrib); // indicate capturing vertex data - if (dbg->hasNonVBOAttribs) { - std::string * const data = msg.mutable_data(); - for (unsigned i = 0; i < count; i++) - dbg->Fetch(i + first, data); - } - - void * pixels = NULL; - int viewport[4] = {}; - cmd.set_function(glesv2debugger::Message_Function_CONTINUE); - cmd.set_expect_response(expectResponse); - glesv2debugger::Message_Function oldCmd = cmd.function(); - Send(msg, cmd); - expectResponse = cmd.expect_response(); - while (true) { - msg.Clear(); - nsecs_t c0 = systemTime(timeMode); - switch (cmd.function()) { - case glesv2debugger::Message_Function_CONTINUE: - dbg->hooks->gl.glDrawArrays(mode, first, count); - msg.set_time((systemTime(timeMode) - c0) * 1e-6f); - msg.set_context_id(reinterpret_cast(dbg)); - msg.set_function(glesv2debugger::Message_Function_glDrawArrays); - msg.set_type(glesv2debugger::Message_Type_AfterCall); - msg.set_expect_response(expectResponse); - if (!expectResponse) { - cmd.set_function(glesv2debugger::Message_Function_SKIP); - cmd.set_expect_response(false); - } - oldCmd = cmd.function(); - Send(msg, cmd); - expectResponse = cmd.expect_response(); - // TODO: pack glReadPixels data with vertex data instead of - // relying on sperate call for transport, this would allow - // auto generated message loop using EXTEND_Debug macro - if (dbg->captureDraw > 0) { - dbg->captureDraw--; - dbg->hooks->gl.glGetIntegerv(GL_VIEWPORT, viewport); -// ALOGD("glDrawArrays CAPTURE: x=%d y=%d width=%d height=%d format=0x%.4X type=0x%.4X", -// viewport[0], viewport[1], viewport[2], viewport[3], readFormat, readType); - pixels = dbg->GetReadPixelsBuffer(viewport[2] * viewport[3] * - dbg->readBytesPerPixel); - Debug_glReadPixels(viewport[0], viewport[1], viewport[2], viewport[3], - GL_RGBA, GL_UNSIGNED_BYTE, pixels); - } - break; - case glesv2debugger::Message_Function_SKIP: - return; - case glesv2debugger::Message_Function_SETPROP: - SetProp(dbg, cmd); - expectResponse = cmd.expect_response(); - if (!expectResponse) // SETPROP is "out of band" - cmd.set_function(oldCmd); - else - Receive(cmd); - break; - default: - GenerateCall(dbg, cmd, msg, NULL); - msg.set_expect_response(expectResponse); - if (!expectResponse) { - cmd.set_function(cmd.SKIP); - cmd.set_expect_response(expectResponse); - } - oldCmd = cmd.function(); - Send(msg, cmd); - expectResponse = cmd.expect_response(); - break; - } - } -} - -template -static inline void FetchIndexed(const unsigned count, const T * indices, - std::string * const data, const DbgContext * const ctx) -{ - for (unsigned i = 0; i < count; i++) { - if (!ctx->indexBuffer) - data->append((const char *)(indices + i), sizeof(*indices)); - if (ctx->hasNonVBOAttribs) - ctx->Fetch(indices[i], data); - } -} - -void Debug_glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices) -{ - DbgContext * const dbg = getDbgContextThreadSpecific(); - glesv2debugger::Message msg, cmd; - msg.set_context_id(reinterpret_cast(dbg)); - msg.set_type(glesv2debugger::Message_Type_BeforeCall); - bool expectResponse = dbg->expectResponse.Bit(glesv2debugger::Message_Function_glDrawElements); - msg.set_expect_response(expectResponse); - msg.set_function(glesv2debugger::Message_Function_glDrawElements); - msg.set_arg0(mode); - msg.set_arg1(count); - msg.set_arg2(type); - msg.set_arg3(reinterpret_cast(indices)); - - msg.set_arg7(dbg->maxAttrib); // indicate capturing vertex data - std::string * const data = msg.mutable_data(); - if (GL_UNSIGNED_BYTE == type) { - if (dbg->indexBuffer) { - FetchIndexed(count, (unsigned char *)dbg->indexBuffer->data + - (unsigned long)indices, data, dbg); - } else { - FetchIndexed(count, (unsigned char *)indices, data, dbg); - } - } else if (GL_UNSIGNED_SHORT == type) { - if (dbg->indexBuffer) { - FetchIndexed(count, (unsigned short *)((char *)dbg->indexBuffer->data + - (unsigned long)indices), data, dbg); - } else { - FetchIndexed(count, (unsigned short *)indices, data, dbg); - } - } else { - assert(0); - } - - void * pixels = NULL; - int viewport[4] = {}; - cmd.set_function(glesv2debugger::Message_Function_CONTINUE); - cmd.set_expect_response(expectResponse); - glesv2debugger::Message_Function oldCmd = cmd.function(); - Send(msg, cmd); - expectResponse = cmd.expect_response(); - while (true) { - msg.Clear(); - nsecs_t c0 = systemTime(timeMode); - switch (cmd.function()) { - case glesv2debugger::Message_Function_CONTINUE: - dbg->hooks->gl.glDrawElements(mode, count, type, indices); - msg.set_time((systemTime(timeMode) - c0) * 1e-6f); - msg.set_context_id(reinterpret_cast(dbg)); - msg.set_function(glesv2debugger::Message_Function_glDrawElements); - msg.set_type(glesv2debugger::Message_Type_AfterCall); - msg.set_expect_response(expectResponse); - if (!expectResponse) { - cmd.set_function(glesv2debugger::Message_Function_SKIP); - cmd.set_expect_response(false); - } - oldCmd = cmd.function(); - Send(msg, cmd); - expectResponse = cmd.expect_response(); - // TODO: pack glReadPixels data with vertex data instead of - // relying on separate call for transport, this would allow - // auto generated message loop using EXTEND_Debug macro - if (dbg->captureDraw > 0) { - dbg->captureDraw--; - dbg->hooks->gl.glGetIntegerv(GL_VIEWPORT, viewport); - pixels = dbg->GetReadPixelsBuffer(viewport[2] * viewport[3] * - dbg->readBytesPerPixel); - Debug_glReadPixels(viewport[0], viewport[1], viewport[2], viewport[3], - GL_RGBA, GL_UNSIGNED_BYTE, pixels); - } - break; - case glesv2debugger::Message_Function_SKIP: - return; - case glesv2debugger::Message_Function_SETPROP: - SetProp(dbg, cmd); - expectResponse = cmd.expect_response(); - if (!expectResponse) // SETPROP is "out of band" - cmd.set_function(oldCmd); - else - Receive(cmd); - break; - default: - GenerateCall(dbg, cmd, msg, NULL); - msg.set_expect_response(expectResponse); - if (!expectResponse) { - cmd.set_function(cmd.SKIP); - cmd.set_expect_response(expectResponse); - } - oldCmd = cmd.function(); - Send(msg, cmd); - expectResponse = cmd.expect_response(); - break; - } - } -} diff --git a/opengl/libs/GLES2_dbg/test/Android.mk b/opengl/libs/GLES2_dbg/test/Android.mk deleted file mode 100644 index 8708d439df..0000000000 --- a/opengl/libs/GLES2_dbg/test/Android.mk +++ /dev/null @@ -1,37 +0,0 @@ -LOCAL_PATH:= $(call my-dir) - -include $(CLEAR_VARS) - -LOCAL_C_INCLUDES := \ - $(LOCAL_PATH) \ - $(LOCAL_PATH)/../src \ - $(LOCAL_PATH)/../../ \ - external/gtest/include \ - external/stlport/stlport \ - external/protobuf/src \ - bionic \ - external \ -# - -LOCAL_SRC_FILES:= \ - test_main.cpp \ - test_server.cpp \ - test_socket.cpp \ -# - -LOCAL_SHARED_LIBRARIES := libcutils libutils libGLESv2_dbg libstlport -LOCAL_STATIC_LIBRARIES := libgtest libprotobuf-cpp-2.3.0-lite liblzf -LOCAL_MODULE_TAGS := tests -LOCAL_MODULE:= libGLESv2_dbg_test - -ifeq ($(ARCH_ARM_HAVE_TLS_REGISTER),true) - LOCAL_CFLAGS += -DHAVE_ARM_TLS_REGISTER -endif -LOCAL_C_INCLUDES += bionic/libc/private - -LOCAL_CFLAGS += -DLOG_TAG=\"libEGL\" -LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES -LOCAL_CFLAGS += -fvisibility=hidden - -include $(BUILD_EXECUTABLE) - diff --git a/opengl/libs/GLES2_dbg/test/test_main.cpp b/opengl/libs/GLES2_dbg/test/test_main.cpp deleted file mode 100644 index 183bf8ecb7..0000000000 --- a/opengl/libs/GLES2_dbg/test/test_main.cpp +++ /dev/null @@ -1,234 +0,0 @@ -/* - ** Copyright 2011, The Android Open Source Project - ** - ** Licensed under the Apache License, Version 2.0 (the "License"); - ** you may not use this file except in compliance with the License. - ** You may obtain a copy of the License at - ** - ** http://www.apache.org/licenses/LICENSE-2.0 - ** - ** Unless required by applicable law or agreed to in writing, software - ** distributed under the License is distributed on an "AS IS" BASIS, - ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ** See the License for the specific language governing permissions and - ** limitations under the License. - */ - -#include "header.h" -#include "gtest/gtest.h" -#include "hooks.h" - -namespace -{ - -// The fixture for testing class Foo. -class DbgContextTest : public ::testing::Test -{ -protected: - android::DbgContext dbg; - gl_hooks_t hooks; - - DbgContextTest() - : dbg(1, &hooks, 32) { - // You can do set-up work for each test here. - hooks.gl.glGetError = GetError; - } - - static GLenum GetError() { - return GL_NO_ERROR; - } - - virtual ~DbgContextTest() { - // You can do clean-up work that doesn't throw exceptions here. - } - - // If the constructor and destructor are not enough for setting up - // and cleaning up each test, you can define the following methods: - - virtual void SetUp() { - // Code here will be called immediately after the constructor (right - // before each test). - } - - virtual void TearDown() { - // Code here will be called immediately after each test (right - // before the destructor). - } -}; - -TEST_F(DbgContextTest, GetReadPixelBuffer) -{ - const unsigned int bufferSize = 512; - // test that it's allocating two buffers and swapping them - void * const buffer0 = dbg.GetReadPixelsBuffer(bufferSize); - ASSERT_NE((void *)NULL, buffer0); - for (unsigned int i = 0; i < bufferSize / sizeof(unsigned int); i++) { - EXPECT_EQ(0, ((unsigned int *)buffer0)[i]) - << "GetReadPixelsBuffer should allocate and zero"; - ((unsigned int *)buffer0)[i] = i * 13; - } - - void * const buffer1 = dbg.GetReadPixelsBuffer(bufferSize); - ASSERT_NE((void *)NULL, buffer1); - EXPECT_NE(buffer0, buffer1); - for (unsigned int i = 0; i < bufferSize / sizeof(unsigned int); i++) { - EXPECT_EQ(0, ((unsigned int *)buffer1)[i]) - << "GetReadPixelsBuffer should allocate and zero"; - ((unsigned int *)buffer1)[i] = i * 17; - } - - void * const buffer2 = dbg.GetReadPixelsBuffer(bufferSize); - EXPECT_EQ(buffer2, buffer0); - for (unsigned int i = 0; i < bufferSize / sizeof(unsigned int); i++) - EXPECT_EQ(i * 13, ((unsigned int *)buffer2)[i]) - << "GetReadPixelsBuffer should swap buffers"; - - void * const buffer3 = dbg.GetReadPixelsBuffer(bufferSize); - EXPECT_EQ(buffer3, buffer1); - for (unsigned int i = 0; i < bufferSize / sizeof(unsigned int); i++) - EXPECT_EQ(i * 17, ((unsigned int *)buffer3)[i]) - << "GetReadPixelsBuffer should swap buffers"; - - void * const buffer4 = dbg.GetReadPixelsBuffer(bufferSize); - EXPECT_NE(buffer3, buffer4); - EXPECT_EQ(buffer0, buffer2); - EXPECT_EQ(buffer1, buffer3); - EXPECT_EQ(buffer2, buffer4); - - // it reallocs as necessary; 0 size may result in NULL - for (unsigned int i = 0; i < 42; i++) { - void * const buffer = dbg.GetReadPixelsBuffer(((i & 7)) << 20); - EXPECT_NE((void *)NULL, buffer) - << "should be able to get a variety of reasonable sizes"; - EXPECT_TRUE(dbg.IsReadPixelBuffer(buffer)); - } -} - -TEST_F(DbgContextTest, CompressReadPixelBuffer) -{ - const unsigned int bufferSize = dbg.LZF_CHUNK_SIZE * 4 + 33; - std::string out; - unsigned char * buffer = (unsigned char *)dbg.GetReadPixelsBuffer(bufferSize); - for (unsigned int i = 0; i < bufferSize; i++) - buffer[i] = i * 13; - dbg.CompressReadPixelBuffer(&out); - uint32_t decompSize = 0; - ASSERT_LT(12, out.length()); // at least written chunk header - ASSERT_EQ(bufferSize, *(uint32_t *)out.data()) - << "total decompressed size should be as requested in GetReadPixelsBuffer"; - for (unsigned int i = 4; i < out.length();) { - const uint32_t outSize = *(uint32_t *)(out.data() + i); - i += 4; - const uint32_t inSize = *(uint32_t *)(out.data() + i); - i += 4; - if (inSize == 0) - i += outSize; // chunk not compressed - else - i += inSize; // skip the actual compressed chunk - decompSize += outSize; - } - ASSERT_EQ(bufferSize, decompSize); - decompSize = 0; - - unsigned char * decomp = dbg.Decompress(out.data(), out.length(), &decompSize); - ASSERT_EQ(decompSize, bufferSize); - for (unsigned int i = 0; i < bufferSize; i++) - EXPECT_EQ((unsigned char)(i * 13), decomp[i]) << "xor with 0 ref is identity"; - free(decomp); - - buffer = (unsigned char *)dbg.GetReadPixelsBuffer(bufferSize); - for (unsigned int i = 0; i < bufferSize; i++) - buffer[i] = i * 13; - out.clear(); - dbg.CompressReadPixelBuffer(&out); - decompSize = 0; - decomp = dbg.Decompress(out.data(), out.length(), &decompSize); - ASSERT_EQ(decompSize, bufferSize); - for (unsigned int i = 0; i < bufferSize; i++) - EXPECT_EQ(0, decomp[i]) << "xor with same ref is 0"; - free(decomp); - - buffer = (unsigned char *)dbg.GetReadPixelsBuffer(bufferSize); - for (unsigned int i = 0; i < bufferSize; i++) - buffer[i] = i * 19; - out.clear(); - dbg.CompressReadPixelBuffer(&out); - decompSize = 0; - decomp = dbg.Decompress(out.data(), out.length(), &decompSize); - ASSERT_EQ(decompSize, bufferSize); - for (unsigned int i = 0; i < bufferSize; i++) - EXPECT_EQ((unsigned char)(i * 13) ^ (unsigned char)(i * 19), decomp[i]) - << "xor ref"; - free(decomp); -} - -TEST_F(DbgContextTest, UseProgram) -{ - static const GLuint _program = 74568; - static const struct Attribute { - const char * name; - GLint location; - GLint size; - GLenum type; - } _attributes [] = { - {"aaa", 2, 2, GL_FLOAT_VEC2}, - {"bb", 6, 2, GL_FLOAT_MAT2}, - {"c", 1, 1, GL_FLOAT}, - }; - static const unsigned int _attributeCount = sizeof(_attributes) / sizeof(*_attributes); - struct GL { - static void GetProgramiv(GLuint program, GLenum pname, GLint* params) { - EXPECT_EQ(_program, program); - ASSERT_NE((GLint *)NULL, params); - switch (pname) { - case GL_ACTIVE_ATTRIBUTES: - *params = _attributeCount; - return; - case GL_ACTIVE_ATTRIBUTE_MAX_LENGTH: - *params = 4; // includes NULL terminator - return; - default: - ADD_FAILURE() << "not handled pname: " << pname; - } - } - - static GLint GetAttribLocation(GLuint program, const GLchar* name) { - EXPECT_EQ(_program, program); - for (unsigned int i = 0; i < _attributeCount; i++) - if (!strcmp(name, _attributes[i].name)) - return _attributes[i].location; - ADD_FAILURE() << "unknown attribute name: " << name; - return -1; - } - - static void GetActiveAttrib(GLuint program, GLuint index, GLsizei bufsize, - GLsizei* length, GLint* size, GLenum* type, GLchar* name) { - EXPECT_EQ(_program, program); - ASSERT_LT(index, _attributeCount); - const Attribute & att = _attributes[index]; - ASSERT_GE(bufsize, strlen(att.name) + 1); - ASSERT_NE((GLint *)NULL, size); - ASSERT_NE((GLenum *)NULL, type); - ASSERT_NE((GLchar *)NULL, name); - strcpy(name, att.name); - if (length) - *length = strlen(name) + 1; - *size = att.size; - *type = att.type; - } - }; - hooks.gl.glGetProgramiv = GL::GetProgramiv; - hooks.gl.glGetAttribLocation = GL::GetAttribLocation; - hooks.gl.glGetActiveAttrib = GL::GetActiveAttrib; - dbg.glUseProgram(_program); - EXPECT_EQ(10, dbg.maxAttrib); - dbg.glUseProgram(0); - EXPECT_EQ(0, dbg.maxAttrib); -} -} // namespace - -int main(int argc, char **argv) -{ - ::testing::InitGoogleTest(&argc, argv); - return RUN_ALL_TESTS(); -} diff --git a/opengl/libs/GLES2_dbg/test/test_server.cpp b/opengl/libs/GLES2_dbg/test/test_server.cpp deleted file mode 100644 index 0ab87b08ef..0000000000 --- a/opengl/libs/GLES2_dbg/test/test_server.cpp +++ /dev/null @@ -1,245 +0,0 @@ -/* - ** Copyright 2011, The Android Open Source Project - ** - ** Licensed under the Apache License, Version 2.0 (the "License"); - ** you may not use this file except in compliance with the License. - ** You may obtain a copy of the License at - ** - ** http://www.apache.org/licenses/LICENSE-2.0 - ** - ** Unless required by applicable law or agreed to in writing, software - ** distributed under the License is distributed on an "AS IS" BASIS, - ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ** See the License for the specific language governing permissions and - ** limitations under the License. - */ - -#include "header.h" -#include "gtest/gtest.h" -#include "hooks.h" - -namespace android -{ -extern FILE * file; -extern unsigned int MAX_FILE_SIZE; -}; - -// tmpfile fails, so need to manually make a writable file first -static const char * filePath = "/data/local/tmp/dump.gles2dbg"; - -class ServerFileTest : public ::testing::Test -{ -protected: - ServerFileTest() { } - - virtual ~ServerFileTest() { } - - virtual void SetUp() { - MAX_FILE_SIZE = 8 << 20; - ASSERT_EQ((FILE *)NULL, file); - file = fopen("/data/local/tmp/dump.gles2dbg", "wb+"); - ASSERT_NE((FILE *)NULL, file) << "make sure file is writable: " - << filePath; - } - - virtual void TearDown() { - ASSERT_NE((FILE *)NULL, file); - fclose(file); - file = NULL; - } - - void Read(glesv2debugger::Message & msg) const { - msg.Clear(); - uint32_t len = 0; - ASSERT_EQ(sizeof(len), fread(&len, 1, sizeof(len), file)); - ASSERT_GT(len, 0u); - char * buffer = new char [len]; - ASSERT_EQ(len, fread(buffer, 1, len, file)); - msg.ParseFromArray(buffer, len); - delete buffer; - } - - void CheckNoAvailable() { - const long pos = ftell(file); - fseek(file, 0, SEEK_END); - EXPECT_EQ(pos, ftell(file)) << "check no available"; - } -}; - -TEST_F(ServerFileTest, Send) -{ - glesv2debugger::Message msg, cmd, read; - msg.set_context_id(1); - msg.set_function(msg.glFinish); - msg.set_expect_response(false); - msg.set_type(msg.BeforeCall); - rewind(file); - android::Send(msg, cmd); - rewind(file); - Read(read); - EXPECT_EQ(msg.context_id(), read.context_id()); - EXPECT_EQ(msg.function(), read.function()); - EXPECT_EQ(msg.expect_response(), read.expect_response()); - EXPECT_EQ(msg.type(), read.type()); -} - -TEST_F(ServerFileTest, CreateDbgContext) -{ - gl_hooks_t hooks; - struct Constant { - GLenum pname; - GLint param; - }; - static const Constant constants [] = { - {GL_MAX_VERTEX_ATTRIBS, 16}, - {GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS, 32}, - {GL_IMPLEMENTATION_COLOR_READ_FORMAT, GL_RGBA}, - {GL_IMPLEMENTATION_COLOR_READ_TYPE, GL_UNSIGNED_BYTE}, - }; - struct HookMock { - static void GetIntegerv(GLenum pname, GLint* params) { - ASSERT_TRUE(params != NULL); - for (unsigned int i = 0; i < sizeof(constants) / sizeof(*constants); i++) - if (pname == constants[i].pname) { - *params = constants[i].param; - return; - } - FAIL() << "GetIntegerv unknown pname: " << pname; - } - static GLenum GetError() { - return GL_NO_ERROR; - } - }; - hooks.gl.glGetError = HookMock::GetError; - hooks.gl.glGetIntegerv = HookMock::GetIntegerv; - DbgContext * const dbg = CreateDbgContext(1, &hooks); - ASSERT_TRUE(dbg != NULL); - EXPECT_TRUE(dbg->vertexAttribs != NULL); - - rewind(file); - glesv2debugger::Message read; - for (unsigned int i = 0; i < 2; i++) { - Read(read); - EXPECT_EQ(reinterpret_cast(dbg), read.context_id()); - EXPECT_FALSE(read.expect_response()); - EXPECT_EQ(read.Response, read.type()); - EXPECT_EQ(read.SETPROP, read.function()); - EXPECT_EQ(read.GLConstant, read.prop()); - GLint expectedConstant = 0; - HookMock::GetIntegerv(read.arg0(), &expectedConstant); - EXPECT_EQ(expectedConstant, read.arg1()); - } - CheckNoAvailable(); - dbgReleaseThread(); -} - -void * glNoop() -{ - return 0; -} - -class ServerFileContextTest : public ServerFileTest -{ -protected: - DbgContext* dbg; - gl_hooks_t hooks; - - ServerFileContextTest() { } - - virtual ~ServerFileContextTest() { } - - virtual void SetUp() { - ServerFileTest::SetUp(); - - dbg = new DbgContext(1, &hooks, 32); - ASSERT_NE((void *)NULL, dbg); - for (unsigned int i = 0; i < sizeof(hooks) / sizeof(void *); i++) - ((void **)&hooks)[i] = reinterpret_cast(glNoop); - } - - virtual void TearDown() { - ServerFileTest::TearDown(); - } -}; - -TEST_F(ServerFileContextTest, MessageLoop) -{ - static const int arg0 = 45; - static const float arg7 = -87.2331f; - static const int arg8 = -3; - static const int * ret = reinterpret_cast(870); - - struct Caller : public FunctionCall { - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - msg.set_arg0(arg0); - msg.set_arg7((int &)arg7); - msg.set_arg8(arg8); - return ret; - } - } caller; - const int contextId = reinterpret_cast(dbg); - glesv2debugger::Message msg, read; - - EXPECT_EQ(ret, MessageLoop(caller, msg, msg.glFinish)); - - rewind(file); - Read(read); - EXPECT_EQ(contextId, read.context_id()); - EXPECT_EQ(read.glFinish, read.function()); - EXPECT_EQ(false, read.expect_response()); - EXPECT_EQ(read.BeforeCall, read.type()); - - Read(read); - EXPECT_EQ(contextId, read.context_id()); - EXPECT_EQ(read.glFinish, read.function()); - EXPECT_EQ(false, read.expect_response()); - EXPECT_EQ(read.AfterCall, read.type()); - EXPECT_TRUE(read.has_time()); - EXPECT_EQ(arg0, read.arg0()); - const int readArg7 = read.arg7(); - EXPECT_EQ(arg7, (float &)readArg7); - EXPECT_EQ(arg8, read.arg8()); - - const long pos = ftell(file); - fseek(file, 0, SEEK_END); - EXPECT_EQ(pos, ftell(file)) - << "should only write the BeforeCall and AfterCall messages"; -} - -TEST_F(ServerFileContextTest, DisableEnableVertexAttribArray) -{ - Debug_glEnableVertexAttribArray(dbg->MAX_VERTEX_ATTRIBS + 2); // should just ignore invalid index - - glesv2debugger::Message read; - rewind(file); - Read(read); - EXPECT_EQ(read.glEnableVertexAttribArray, read.function()); - EXPECT_EQ(dbg->MAX_VERTEX_ATTRIBS + 2, read.arg0()); - Read(read); - - rewind(file); - Debug_glDisableVertexAttribArray(dbg->MAX_VERTEX_ATTRIBS + 4); // should just ignore invalid index - rewind(file); - Read(read); - Read(read); - - for (unsigned int i = 0; i < dbg->MAX_VERTEX_ATTRIBS; i += 5) { - rewind(file); - Debug_glEnableVertexAttribArray(i); - EXPECT_TRUE(dbg->vertexAttribs[i].enabled); - rewind(file); - Read(read); - EXPECT_EQ(read.glEnableVertexAttribArray, read.function()); - EXPECT_EQ(i, read.arg0()); - Read(read); - - rewind(file); - Debug_glDisableVertexAttribArray(i); - EXPECT_FALSE(dbg->vertexAttribs[i].enabled); - rewind(file); - Read(read); - EXPECT_EQ(read.glDisableVertexAttribArray, read.function()); - EXPECT_EQ(i, read.arg0()); - Read(read); - } -} diff --git a/opengl/libs/GLES2_dbg/test/test_socket.cpp b/opengl/libs/GLES2_dbg/test/test_socket.cpp deleted file mode 100644 index 9f815e211b..0000000000 --- a/opengl/libs/GLES2_dbg/test/test_socket.cpp +++ /dev/null @@ -1,468 +0,0 @@ -/* - ** Copyright 2011, The Android Open Source Project - ** - ** Licensed under the Apache License, Version 2.0 (the "License"); - ** you may not use this file except in compliance with the License. - ** You may obtain a copy of the License at - ** - ** http://www.apache.org/licenses/LICENSE-2.0 - ** - ** Unless required by applicable law or agreed to in writing, software - ** distributed under the License is distributed on an "AS IS" BASIS, - ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ** See the License for the specific language governing permissions and - ** limitations under the License. - */ - -#include -#include - -#include "header.h" -#include "gtest/gtest.h" -#include "hooks.h" - -namespace android -{ -extern int serverSock, clientSock; -}; - -void * glNoop(); - -class SocketContextTest : public ::testing::Test -{ -protected: - DbgContext* dbg; - gl_hooks_t hooks; - int sock; - char * buffer; - unsigned int bufferSize; - - SocketContextTest() : sock(-1) { - } - - virtual ~SocketContextTest() { - } - - virtual void SetUp() { - dbg = new DbgContext(1, &hooks, 32); - ASSERT_TRUE(dbg != NULL); - for (unsigned int i = 0; i < sizeof(hooks) / sizeof(void *); i++) - ((void **)&hooks)[i] = (void *)glNoop; - - int socks[2] = {-1, -1}; - ASSERT_EQ(0, socketpair(AF_UNIX, SOCK_STREAM, 0, socks)); - clientSock = socks[0]; - sock = socks[1]; - - bufferSize = 128; - buffer = new char [128]; - ASSERT_NE((char *)NULL, buffer); - } - - virtual void TearDown() { - close(sock); - close(clientSock); - clientSock = -1; - delete buffer; - } - - void Write(glesv2debugger::Message & msg) const { - msg.set_context_id((int)dbg); - msg.set_type(msg.Response); - ASSERT_TRUE(msg.has_context_id()); - ASSERT_TRUE(msg.has_function()); - ASSERT_TRUE(msg.has_type()); - ASSERT_TRUE(msg.has_expect_response()); - static std::string str; - msg.SerializeToString(&str); - const uint32_t len = str.length(); - ASSERT_EQ(sizeof(len), send(sock, &len, sizeof(len), 0)); - ASSERT_EQ(str.length(), send(sock, str.data(), str.length(), 0)); - } - - void Read(glesv2debugger::Message & msg) { - int available = 0; - ASSERT_EQ(0, ioctl(sock, FIONREAD, &available)); - ASSERT_GT(available, 0); - uint32_t len = 0; - ASSERT_EQ(sizeof(len), recv(sock, &len, sizeof(len), 0)); - if (len > bufferSize) { - bufferSize = len; - buffer = new char[bufferSize]; - ASSERT_TRUE(buffer != NULL); - } - ASSERT_EQ(len, recv(sock, buffer, len, 0)); - msg.Clear(); - msg.ParseFromArray(buffer, len); - ASSERT_TRUE(msg.has_context_id()); - ASSERT_TRUE(msg.has_function()); - ASSERT_TRUE(msg.has_type()); - ASSERT_TRUE(msg.has_expect_response()); - } - - void CheckNoAvailable() { - int available = 0; - ASSERT_EQ(0, ioctl(sock, FIONREAD, &available)); - ASSERT_EQ(available, 0); - } -}; - -TEST_F(SocketContextTest, MessageLoopSkip) -{ - static const int arg0 = 45; - static const float arg7 = -87.2331f; - static const int arg8 = -3; - static const int * ret = (int *)870; - - struct Caller : public FunctionCall { - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - msg.set_arg0(arg0); - msg.set_arg7((int &)arg7); - msg.set_arg8(arg8); - return ret; - } - } caller; - glesv2debugger::Message msg, read, cmd; - dbg->expectResponse.Bit(msg.glFinish, true); - - cmd.set_function(cmd.SKIP); - cmd.set_expect_response(false); - Write(cmd); - - EXPECT_NE(ret, MessageLoop(caller, msg, msg.glFinish)); - - Read(read); - EXPECT_EQ(read.glFinish, read.function()); - EXPECT_EQ(read.BeforeCall, read.type()); - EXPECT_NE(arg0, read.arg0()); - EXPECT_NE((int &)arg7, read.arg7()); - EXPECT_NE(arg8, read.arg8()); - - CheckNoAvailable(); -} - -TEST_F(SocketContextTest, MessageLoopContinue) -{ - static const int arg0 = GL_FRAGMENT_SHADER; - static const int ret = -342; - struct Caller : public FunctionCall { - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - msg.set_ret(ret); - return (int *)ret; - } - } caller; - glesv2debugger::Message msg, read, cmd; - dbg->expectResponse.Bit(msg.glCreateShader, true); - - cmd.set_function(cmd.CONTINUE); - cmd.set_expect_response(false); // MessageLoop should automatically skip after continue - Write(cmd); - - msg.set_arg0(arg0); - EXPECT_EQ((int *)ret, MessageLoop(caller, msg, msg.glCreateShader)); - - Read(read); - EXPECT_EQ(read.glCreateShader, read.function()); - EXPECT_EQ(read.BeforeCall, read.type()); - EXPECT_EQ(arg0, read.arg0()); - - Read(read); - EXPECT_EQ(read.glCreateShader, read.function()); - EXPECT_EQ(read.AfterCall, read.type()); - EXPECT_EQ(ret, read.ret()); - - CheckNoAvailable(); -} - -TEST_F(SocketContextTest, MessageLoopGenerateCall) -{ - static const int ret = -342; - static unsigned int createShader, createProgram; - createShader = 0; - createProgram = 0; - struct Caller : public FunctionCall { - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - const int r = (int)_c->glCreateProgram(); - msg.set_ret(r); - return (int *)r; - } - static GLuint CreateShader(const GLenum type) { - createShader++; - return type; - } - static GLuint CreateProgram() { - createProgram++; - return ret; - } - } caller; - glesv2debugger::Message msg, read, cmd; - hooks.gl.glCreateShader = caller.CreateShader; - hooks.gl.glCreateProgram = caller.CreateProgram; - dbg->expectResponse.Bit(msg.glCreateProgram, true); - - cmd.set_function(cmd.glCreateShader); - cmd.set_arg0(GL_FRAGMENT_SHADER); - cmd.set_expect_response(true); - Write(cmd); - - cmd.Clear(); - cmd.set_function(cmd.CONTINUE); - cmd.set_expect_response(true); - Write(cmd); - - cmd.set_function(cmd.glCreateShader); - cmd.set_arg0(GL_VERTEX_SHADER); - cmd.set_expect_response(false); // MessageLoop should automatically skip afterwards - Write(cmd); - - EXPECT_EQ((int *)ret, MessageLoop(caller, msg, msg.glCreateProgram)); - - Read(read); - EXPECT_EQ(read.glCreateProgram, read.function()); - EXPECT_EQ(read.BeforeCall, read.type()); - - Read(read); - EXPECT_EQ(read.glCreateShader, read.function()); - EXPECT_EQ(read.AfterGeneratedCall, read.type()); - EXPECT_EQ(GL_FRAGMENT_SHADER, read.ret()); - - Read(read); - EXPECT_EQ(read.glCreateProgram, read.function()); - EXPECT_EQ(read.AfterCall, read.type()); - EXPECT_EQ(ret, read.ret()); - - Read(read); - EXPECT_EQ(read.glCreateShader, read.function()); - EXPECT_EQ(read.AfterGeneratedCall, read.type()); - EXPECT_EQ(GL_VERTEX_SHADER, read.ret()); - - EXPECT_EQ(2, createShader); - EXPECT_EQ(1, createProgram); - - CheckNoAvailable(); -} - -TEST_F(SocketContextTest, MessageLoopSetProp) -{ - static const int ret = -342; - static unsigned int createShader, createProgram; - createShader = 0; - createProgram = 0; - struct Caller : public FunctionCall { - const int * operator()(gl_hooks_t::gl_t const * const _c, glesv2debugger::Message & msg) { - const int r = (int)_c->glCreateProgram(); - msg.set_ret(r); - return (int *)r; - } - static GLuint CreateShader(const GLenum type) { - createShader++; - return type; - } - static GLuint CreateProgram() { - createProgram++; - return ret; - } - } caller; - glesv2debugger::Message msg, read, cmd; - hooks.gl.glCreateShader = caller.CreateShader; - hooks.gl.glCreateProgram = caller.CreateProgram; - dbg->expectResponse.Bit(msg.glCreateProgram, false); - - cmd.set_function(cmd.SETPROP); - cmd.set_prop(cmd.ExpectResponse); - cmd.set_arg0(cmd.glCreateProgram); - cmd.set_arg1(true); - cmd.set_expect_response(true); - Write(cmd); - - cmd.Clear(); - cmd.set_function(cmd.glCreateShader); - cmd.set_arg0(GL_FRAGMENT_SHADER); - cmd.set_expect_response(true); - Write(cmd); - - cmd.set_function(cmd.SETPROP); - cmd.set_prop(cmd.CaptureDraw); - cmd.set_arg0(819); - cmd.set_expect_response(true); - Write(cmd); - - cmd.Clear(); - cmd.set_function(cmd.CONTINUE); - cmd.set_expect_response(true); - Write(cmd); - - cmd.set_function(cmd.glCreateShader); - cmd.set_arg0(GL_VERTEX_SHADER); - cmd.set_expect_response(false); // MessageLoop should automatically skip afterwards - Write(cmd); - - EXPECT_EQ((int *)ret, MessageLoop(caller, msg, msg.glCreateProgram)); - - EXPECT_TRUE(dbg->expectResponse.Bit(msg.glCreateProgram)); - EXPECT_EQ(819, dbg->captureDraw); - - Read(read); - EXPECT_EQ(read.glCreateProgram, read.function()); - EXPECT_EQ(read.BeforeCall, read.type()); - - Read(read); - EXPECT_EQ(read.glCreateShader, read.function()); - EXPECT_EQ(read.AfterGeneratedCall, read.type()); - EXPECT_EQ(GL_FRAGMENT_SHADER, read.ret()); - - Read(read); - EXPECT_EQ(read.glCreateProgram, read.function()); - EXPECT_EQ(read.AfterCall, read.type()); - EXPECT_EQ(ret, read.ret()); - - Read(read); - EXPECT_EQ(read.glCreateShader, read.function()); - EXPECT_EQ(read.AfterGeneratedCall, read.type()); - EXPECT_EQ(GL_VERTEX_SHADER, read.ret()); - - EXPECT_EQ(2, createShader); - EXPECT_EQ(1, createProgram); - - CheckNoAvailable(); -} - -TEST_F(SocketContextTest, TexImage2D) -{ - static const GLenum _target = GL_TEXTURE_2D; - static const GLint _level = 1, _internalformat = GL_RGBA; - static const GLsizei _width = 2, _height = 2; - static const GLint _border = 333; - static const GLenum _format = GL_RGB, _type = GL_UNSIGNED_SHORT_5_6_5; - static const short _pixels [_width * _height] = {11, 22, 33, 44}; - static unsigned int texImage2D; - texImage2D = 0; - - struct Caller { - static void TexImage2D(GLenum target, GLint level, GLint internalformat, - GLsizei width, GLsizei height, GLint border, - GLenum format, GLenum type, const GLvoid* pixels) { - EXPECT_EQ(_target, target); - EXPECT_EQ(_level, level); - EXPECT_EQ(_internalformat, internalformat); - EXPECT_EQ(_width, width); - EXPECT_EQ(_height, height); - EXPECT_EQ(_border, border); - EXPECT_EQ(_format, format); - EXPECT_EQ(_type, type); - EXPECT_EQ(0, memcmp(_pixels, pixels, sizeof(_pixels))); - texImage2D++; - } - } caller; - glesv2debugger::Message msg, read, cmd; - hooks.gl.glTexImage2D = caller.TexImage2D; - dbg->expectResponse.Bit(msg.glTexImage2D, false); - - Debug_glTexImage2D(_target, _level, _internalformat, _width, _height, _border, - _format, _type, _pixels); - EXPECT_EQ(1, texImage2D); - - Read(read); - EXPECT_EQ(read.glTexImage2D, read.function()); - EXPECT_EQ(read.BeforeCall, read.type()); - EXPECT_EQ(_target, read.arg0()); - EXPECT_EQ(_level, read.arg1()); - EXPECT_EQ(_internalformat, read.arg2()); - EXPECT_EQ(_width, read.arg3()); - EXPECT_EQ(_height, read.arg4()); - EXPECT_EQ(_border, read.arg5()); - EXPECT_EQ(_format, read.arg6()); - EXPECT_EQ(_type, read.arg7()); - - EXPECT_TRUE(read.has_data()); - uint32_t dataLen = 0; - const unsigned char * data = dbg->Decompress(read.data().data(), - read.data().length(), &dataLen); - EXPECT_EQ(sizeof(_pixels), dataLen); - if (sizeof(_pixels) == dataLen) - EXPECT_EQ(0, memcmp(_pixels, data, sizeof(_pixels))); - - Read(read); - EXPECT_EQ(read.glTexImage2D, read.function()); - EXPECT_EQ(read.AfterCall, read.type()); - - CheckNoAvailable(); -} - -TEST_F(SocketContextTest, CopyTexImage2D) -{ - static const GLenum _target = GL_TEXTURE_2D; - static const GLint _level = 1, _internalformat = GL_RGBA; - static const GLint _x = 9, _y = 99; - static const GLsizei _width = 2, _height = 3; - static const GLint _border = 333; - static const int _pixels [_width * _height] = {11, 22, 33, 44, 55, 66}; - static unsigned int copyTexImage2D, readPixels; - copyTexImage2D = 0, readPixels = 0; - - struct Caller { - static void CopyTexImage2D(GLenum target, GLint level, GLenum internalformat, - GLint x, GLint y, GLsizei width, GLsizei height, GLint border) { - EXPECT_EQ(_target, target); - EXPECT_EQ(_level, level); - EXPECT_EQ(_internalformat, internalformat); - EXPECT_EQ(_x, x); - EXPECT_EQ(_y, y); - EXPECT_EQ(_width, width); - EXPECT_EQ(_height, height); - EXPECT_EQ(_border, border); - copyTexImage2D++; - } - static void ReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, - GLenum format, GLenum type, GLvoid* pixels) { - EXPECT_EQ(_x, x); - EXPECT_EQ(_y, y); - EXPECT_EQ(_width, width); - EXPECT_EQ(_height, height); - EXPECT_EQ(GL_RGBA, format); - EXPECT_EQ(GL_UNSIGNED_BYTE, type); - ASSERT_TRUE(pixels != NULL); - memcpy(pixels, _pixels, sizeof(_pixels)); - readPixels++; - } - } caller; - glesv2debugger::Message msg, read, cmd; - hooks.gl.glCopyTexImage2D = caller.CopyTexImage2D; - hooks.gl.glReadPixels = caller.ReadPixels; - dbg->expectResponse.Bit(msg.glCopyTexImage2D, false); - - Debug_glCopyTexImage2D(_target, _level, _internalformat, _x, _y, _width, _height, - _border); - ASSERT_EQ(1, copyTexImage2D); - ASSERT_EQ(1, readPixels); - - Read(read); - EXPECT_EQ(read.glCopyTexImage2D, read.function()); - EXPECT_EQ(read.BeforeCall, read.type()); - EXPECT_EQ(_target, read.arg0()); - EXPECT_EQ(_level, read.arg1()); - EXPECT_EQ(_internalformat, read.arg2()); - EXPECT_EQ(_x, read.arg3()); - EXPECT_EQ(_y, read.arg4()); - EXPECT_EQ(_width, read.arg5()); - EXPECT_EQ(_height, read.arg6()); - EXPECT_EQ(_border, read.arg7()); - - EXPECT_TRUE(read.has_data()); - EXPECT_EQ(read.ReferencedImage, read.data_type()); - EXPECT_EQ(GL_RGBA, read.pixel_format()); - EXPECT_EQ(GL_UNSIGNED_BYTE, read.pixel_type()); - uint32_t dataLen = 0; - unsigned char * const data = dbg->Decompress(read.data().data(), - read.data().length(), &dataLen); - ASSERT_EQ(sizeof(_pixels), dataLen); - for (unsigned i = 0; i < sizeof(_pixels) / sizeof(*_pixels); i++) - EXPECT_EQ(_pixels[i], ((const int *)data)[i]) << "xor with 0 ref is identity"; - free(data); - - Read(read); - EXPECT_EQ(read.glCopyTexImage2D, read.function()); - EXPECT_EQ(read.AfterCall, read.type()); - - CheckNoAvailable(); -} -- 2.11.0