summaryrefslogtreecommitdiffstats
path: root/opengl/libs/GLES_trace/src
diff options
context:
space:
mode:
Diffstat (limited to 'opengl/libs/GLES_trace/src')
-rw-r--r--opengl/libs/GLES_trace/src/gltrace.pb.cpp182
-rw-r--r--opengl/libs/GLES_trace/src/gltrace.pb.h182
-rw-r--r--opengl/libs/GLES_trace/src/gltrace_api.cpp4187
-rw-r--r--opengl/libs/GLES_trace/src/gltrace_api.h91
4 files changed, 4641 insertions, 1 deletions
diff --git a/opengl/libs/GLES_trace/src/gltrace.pb.cpp b/opengl/libs/GLES_trace/src/gltrace.pb.cpp
index f1034a3..c0867cd 100644
--- a/opengl/libs/GLES_trace/src/gltrace.pb.cpp
+++ b/opengl/libs/GLES_trace/src/gltrace.pb.cpp
@@ -683,6 +683,97 @@ bool GLMessage_Function_IsValid(int value) {
case 637:
case 638:
case 639:
+ case 640:
+ case 641:
+ case 642:
+ case 643:
+ case 644:
+ case 645:
+ case 646:
+ case 647:
+ case 648:
+ case 649:
+ case 650:
+ case 651:
+ case 652:
+ case 653:
+ case 654:
+ case 655:
+ case 656:
+ case 657:
+ case 658:
+ case 659:
+ case 660:
+ case 661:
+ case 662:
+ case 663:
+ case 664:
+ case 665:
+ case 666:
+ case 667:
+ case 668:
+ case 669:
+ case 670:
+ case 671:
+ case 672:
+ case 673:
+ case 674:
+ case 675:
+ case 676:
+ case 677:
+ case 678:
+ case 679:
+ case 680:
+ case 681:
+ case 682:
+ case 683:
+ case 684:
+ case 685:
+ case 686:
+ case 687:
+ case 688:
+ case 689:
+ case 690:
+ case 691:
+ case 692:
+ case 693:
+ case 694:
+ case 695:
+ case 696:
+ case 697:
+ case 698:
+ case 699:
+ case 700:
+ case 701:
+ case 702:
+ case 703:
+ case 704:
+ case 705:
+ case 706:
+ case 707:
+ case 708:
+ case 709:
+ case 710:
+ case 711:
+ case 712:
+ case 713:
+ case 714:
+ case 715:
+ case 716:
+ case 717:
+ case 718:
+ case 719:
+ case 720:
+ case 721:
+ case 722:
+ case 723:
+ case 724:
+ case 725:
+ case 726:
+ case 727:
+ case 728:
+ case 729:
+ case 730:
case 2000:
case 2001:
case 2002:
@@ -1379,6 +1470,97 @@ const GLMessage_Function GLMessage::glUniformMatrix2x4fvNV;
const GLMessage_Function GLMessage::glUniformMatrix4x2fvNV;
const GLMessage_Function GLMessage::glUniformMatrix3x4fvNV;
const GLMessage_Function GLMessage::glUniformMatrix4x3fvNV;
+const GLMessage_Function GLMessage::glActiveShaderProgram;
+const GLMessage_Function GLMessage::glBindImageTexture;
+const GLMessage_Function GLMessage::glBindProgramPipeline;
+const GLMessage_Function GLMessage::glBindVertexBuffer;
+const GLMessage_Function GLMessage::glCreateShaderProgramv;
+const GLMessage_Function GLMessage::glDeleteProgramPipelines;
+const GLMessage_Function GLMessage::glDispatchCompute;
+const GLMessage_Function GLMessage::glDispatchComputeIndirect;
+const GLMessage_Function GLMessage::glDrawArraysIndirect;
+const GLMessage_Function GLMessage::glDrawElementsIndirect;
+const GLMessage_Function GLMessage::glFramebufferParameteri;
+const GLMessage_Function GLMessage::glGenProgramPipelines;
+const GLMessage_Function GLMessage::glGetBooleani_v;
+const GLMessage_Function GLMessage::glGetFramebufferParameteriv;
+const GLMessage_Function GLMessage::glGetMultisamplefv;
+const GLMessage_Function GLMessage::glGetProgramInterfaceiv;
+const GLMessage_Function GLMessage::glGetProgramPipelineInfoLog;
+const GLMessage_Function GLMessage::glGetProgramPipelineiv;
+const GLMessage_Function GLMessage::glGetProgramResourceIndex;
+const GLMessage_Function GLMessage::glGetProgramResourceLocation;
+const GLMessage_Function GLMessage::glGetProgramResourceName;
+const GLMessage_Function GLMessage::glGetProgramResourceiv;
+const GLMessage_Function GLMessage::glGetTexLevelParameterfv;
+const GLMessage_Function GLMessage::glGetTexLevelParameteriv;
+const GLMessage_Function GLMessage::glIsProgramPipeline;
+const GLMessage_Function GLMessage::glMemoryBarrier;
+const GLMessage_Function GLMessage::glMemoryBarrierByRegion;
+const GLMessage_Function GLMessage::glProgramUniform1f;
+const GLMessage_Function GLMessage::glProgramUniform1fv;
+const GLMessage_Function GLMessage::glProgramUniform1i;
+const GLMessage_Function GLMessage::glProgramUniform1iv;
+const GLMessage_Function GLMessage::glProgramUniform1ui;
+const GLMessage_Function GLMessage::glProgramUniform1uiv;
+const GLMessage_Function GLMessage::glProgramUniform2f;
+const GLMessage_Function GLMessage::glProgramUniform2fv;
+const GLMessage_Function GLMessage::glProgramUniform2i;
+const GLMessage_Function GLMessage::glProgramUniform2iv;
+const GLMessage_Function GLMessage::glProgramUniform2ui;
+const GLMessage_Function GLMessage::glProgramUniform2uiv;
+const GLMessage_Function GLMessage::glProgramUniform3f;
+const GLMessage_Function GLMessage::glProgramUniform3fv;
+const GLMessage_Function GLMessage::glProgramUniform3i;
+const GLMessage_Function GLMessage::glProgramUniform3iv;
+const GLMessage_Function GLMessage::glProgramUniform3ui;
+const GLMessage_Function GLMessage::glProgramUniform3uiv;
+const GLMessage_Function GLMessage::glProgramUniform4f;
+const GLMessage_Function GLMessage::glProgramUniform4fv;
+const GLMessage_Function GLMessage::glProgramUniform4i;
+const GLMessage_Function GLMessage::glProgramUniform4iv;
+const GLMessage_Function GLMessage::glProgramUniform4ui;
+const GLMessage_Function GLMessage::glProgramUniform4uiv;
+const GLMessage_Function GLMessage::glProgramUniformMatrix2fv;
+const GLMessage_Function GLMessage::glProgramUniformMatrix2x3fv;
+const GLMessage_Function GLMessage::glProgramUniformMatrix2x4fv;
+const GLMessage_Function GLMessage::glProgramUniformMatrix3fv;
+const GLMessage_Function GLMessage::glProgramUniformMatrix3x2fv;
+const GLMessage_Function GLMessage::glProgramUniformMatrix3x4fv;
+const GLMessage_Function GLMessage::glProgramUniformMatrix4fv;
+const GLMessage_Function GLMessage::glProgramUniformMatrix4x2fv;
+const GLMessage_Function GLMessage::glProgramUniformMatrix4x3fv;
+const GLMessage_Function GLMessage::glSampleMaski;
+const GLMessage_Function GLMessage::glTexStorage2DMultisample;
+const GLMessage_Function GLMessage::glUseProgramStages;
+const GLMessage_Function GLMessage::glValidateProgramPipeline;
+const GLMessage_Function GLMessage::glVertexAttribBinding;
+const GLMessage_Function GLMessage::glVertexAttribFormat;
+const GLMessage_Function GLMessage::glVertexAttribIFormat;
+const GLMessage_Function GLMessage::glVertexBindingDivisor;
+const GLMessage_Function GLMessage::glBlendEquationSeparateiEXT;
+const GLMessage_Function GLMessage::glBlendEquationiEXT;
+const GLMessage_Function GLMessage::glBlendFuncSeparateiEXT;
+const GLMessage_Function GLMessage::glBlendFunciEXT;
+const GLMessage_Function GLMessage::glColorMaskiEXT;
+const GLMessage_Function GLMessage::glCopyImageSubDataEXT;
+const GLMessage_Function GLMessage::glDisableiEXT;
+const GLMessage_Function GLMessage::glEnableiEXT;
+const GLMessage_Function GLMessage::glFramebufferTextureEXT;
+const GLMessage_Function GLMessage::glGetSamplerParameterIivEXT;
+const GLMessage_Function GLMessage::glGetSamplerParameterIuivEXT;
+const GLMessage_Function GLMessage::glGetTexParameterIivEXT;
+const GLMessage_Function GLMessage::glGetTexParameterIuivEXT;
+const GLMessage_Function GLMessage::glIsEnablediEXT;
+const GLMessage_Function GLMessage::glPatchParameteriEXT;
+const GLMessage_Function GLMessage::glPrimitiveBoundingBoxEXT;
+const GLMessage_Function GLMessage::glSamplerParameterIivEXT;
+const GLMessage_Function GLMessage::glSamplerParameterIuivEXT;
+const GLMessage_Function GLMessage::glTexBufferEXT;
+const GLMessage_Function GLMessage::glTexBufferRangeEXT;
+const GLMessage_Function GLMessage::glTexParameterIivEXT;
+const GLMessage_Function GLMessage::glTexParameterIuivEXT;
+const GLMessage_Function GLMessage::glTextureViewEXT;
const GLMessage_Function GLMessage::eglGetDisplay;
const GLMessage_Function GLMessage::eglInitialize;
const GLMessage_Function GLMessage::eglTerminate;
diff --git a/opengl/libs/GLES_trace/src/gltrace.pb.h b/opengl/libs/GLES_trace/src/gltrace.pb.h
index 966360b..9bc7c58 100644
--- a/opengl/libs/GLES_trace/src/gltrace.pb.h
+++ b/opengl/libs/GLES_trace/src/gltrace.pb.h
@@ -693,6 +693,97 @@ enum GLMessage_Function {
GLMessage_Function_glUniformMatrix4x2fvNV = 637,
GLMessage_Function_glUniformMatrix3x4fvNV = 638,
GLMessage_Function_glUniformMatrix4x3fvNV = 639,
+ GLMessage_Function_glActiveShaderProgram = 640,
+ GLMessage_Function_glBindImageTexture = 641,
+ GLMessage_Function_glBindProgramPipeline = 642,
+ GLMessage_Function_glBindVertexBuffer = 643,
+ GLMessage_Function_glCreateShaderProgramv = 644,
+ GLMessage_Function_glDeleteProgramPipelines = 645,
+ GLMessage_Function_glDispatchCompute = 646,
+ GLMessage_Function_glDispatchComputeIndirect = 647,
+ GLMessage_Function_glDrawArraysIndirect = 648,
+ GLMessage_Function_glDrawElementsIndirect = 649,
+ GLMessage_Function_glFramebufferParameteri = 650,
+ GLMessage_Function_glGenProgramPipelines = 651,
+ GLMessage_Function_glGetBooleani_v = 652,
+ GLMessage_Function_glGetFramebufferParameteriv = 653,
+ GLMessage_Function_glGetMultisamplefv = 654,
+ GLMessage_Function_glGetProgramInterfaceiv = 655,
+ GLMessage_Function_glGetProgramPipelineInfoLog = 656,
+ GLMessage_Function_glGetProgramPipelineiv = 657,
+ GLMessage_Function_glGetProgramResourceIndex = 658,
+ GLMessage_Function_glGetProgramResourceLocation = 659,
+ GLMessage_Function_glGetProgramResourceName = 660,
+ GLMessage_Function_glGetProgramResourceiv = 661,
+ GLMessage_Function_glGetTexLevelParameterfv = 662,
+ GLMessage_Function_glGetTexLevelParameteriv = 663,
+ GLMessage_Function_glIsProgramPipeline = 664,
+ GLMessage_Function_glMemoryBarrier = 665,
+ GLMessage_Function_glMemoryBarrierByRegion = 666,
+ GLMessage_Function_glProgramUniform1f = 667,
+ GLMessage_Function_glProgramUniform1fv = 668,
+ GLMessage_Function_glProgramUniform1i = 669,
+ GLMessage_Function_glProgramUniform1iv = 670,
+ GLMessage_Function_glProgramUniform1ui = 671,
+ GLMessage_Function_glProgramUniform1uiv = 672,
+ GLMessage_Function_glProgramUniform2f = 673,
+ GLMessage_Function_glProgramUniform2fv = 674,
+ GLMessage_Function_glProgramUniform2i = 675,
+ GLMessage_Function_glProgramUniform2iv = 676,
+ GLMessage_Function_glProgramUniform2ui = 677,
+ GLMessage_Function_glProgramUniform2uiv = 678,
+ GLMessage_Function_glProgramUniform3f = 679,
+ GLMessage_Function_glProgramUniform3fv = 680,
+ GLMessage_Function_glProgramUniform3i = 681,
+ GLMessage_Function_glProgramUniform3iv = 682,
+ GLMessage_Function_glProgramUniform3ui = 683,
+ GLMessage_Function_glProgramUniform3uiv = 684,
+ GLMessage_Function_glProgramUniform4f = 685,
+ GLMessage_Function_glProgramUniform4fv = 686,
+ GLMessage_Function_glProgramUniform4i = 687,
+ GLMessage_Function_glProgramUniform4iv = 688,
+ GLMessage_Function_glProgramUniform4ui = 689,
+ GLMessage_Function_glProgramUniform4uiv = 690,
+ GLMessage_Function_glProgramUniformMatrix2fv = 691,
+ GLMessage_Function_glProgramUniformMatrix2x3fv = 692,
+ GLMessage_Function_glProgramUniformMatrix2x4fv = 693,
+ GLMessage_Function_glProgramUniformMatrix3fv = 694,
+ GLMessage_Function_glProgramUniformMatrix3x2fv = 695,
+ GLMessage_Function_glProgramUniformMatrix3x4fv = 696,
+ GLMessage_Function_glProgramUniformMatrix4fv = 697,
+ GLMessage_Function_glProgramUniformMatrix4x2fv = 698,
+ GLMessage_Function_glProgramUniformMatrix4x3fv = 699,
+ GLMessage_Function_glSampleMaski = 700,
+ GLMessage_Function_glTexStorage2DMultisample = 701,
+ GLMessage_Function_glUseProgramStages = 702,
+ GLMessage_Function_glValidateProgramPipeline = 703,
+ GLMessage_Function_glVertexAttribBinding = 704,
+ GLMessage_Function_glVertexAttribFormat = 705,
+ GLMessage_Function_glVertexAttribIFormat = 706,
+ GLMessage_Function_glVertexBindingDivisor = 707,
+ GLMessage_Function_glBlendEquationSeparateiEXT = 708,
+ GLMessage_Function_glBlendEquationiEXT = 709,
+ GLMessage_Function_glBlendFuncSeparateiEXT = 710,
+ GLMessage_Function_glBlendFunciEXT = 711,
+ GLMessage_Function_glColorMaskiEXT = 712,
+ GLMessage_Function_glCopyImageSubDataEXT = 713,
+ GLMessage_Function_glDisableiEXT = 714,
+ GLMessage_Function_glEnableiEXT = 715,
+ GLMessage_Function_glFramebufferTextureEXT = 716,
+ GLMessage_Function_glGetSamplerParameterIivEXT = 717,
+ GLMessage_Function_glGetSamplerParameterIuivEXT = 718,
+ GLMessage_Function_glGetTexParameterIivEXT = 719,
+ GLMessage_Function_glGetTexParameterIuivEXT = 720,
+ GLMessage_Function_glIsEnablediEXT = 721,
+ GLMessage_Function_glPatchParameteriEXT = 722,
+ GLMessage_Function_glPrimitiveBoundingBoxEXT = 723,
+ GLMessage_Function_glSamplerParameterIivEXT = 724,
+ GLMessage_Function_glSamplerParameterIuivEXT = 725,
+ GLMessage_Function_glTexBufferEXT = 726,
+ GLMessage_Function_glTexBufferRangeEXT = 727,
+ GLMessage_Function_glTexParameterIivEXT = 728,
+ GLMessage_Function_glTexParameterIuivEXT = 729,
+ GLMessage_Function_glTextureViewEXT = 730,
GLMessage_Function_eglGetDisplay = 2000,
GLMessage_Function_eglInitialize = 2001,
GLMessage_Function_eglTerminate = 2002,
@@ -1727,6 +1818,97 @@ class GLMessage : public ::google::protobuf::MessageLite {
static const Function glUniformMatrix4x2fvNV = GLMessage_Function_glUniformMatrix4x2fvNV;
static const Function glUniformMatrix3x4fvNV = GLMessage_Function_glUniformMatrix3x4fvNV;
static const Function glUniformMatrix4x3fvNV = GLMessage_Function_glUniformMatrix4x3fvNV;
+ static const Function glActiveShaderProgram = GLMessage_Function_glActiveShaderProgram;
+ static const Function glBindImageTexture = GLMessage_Function_glBindImageTexture;
+ static const Function glBindProgramPipeline = GLMessage_Function_glBindProgramPipeline;
+ static const Function glBindVertexBuffer = GLMessage_Function_glBindVertexBuffer;
+ static const Function glCreateShaderProgramv = GLMessage_Function_glCreateShaderProgramv;
+ static const Function glDeleteProgramPipelines = GLMessage_Function_glDeleteProgramPipelines;
+ static const Function glDispatchCompute = GLMessage_Function_glDispatchCompute;
+ static const Function glDispatchComputeIndirect = GLMessage_Function_glDispatchComputeIndirect;
+ static const Function glDrawArraysIndirect = GLMessage_Function_glDrawArraysIndirect;
+ static const Function glDrawElementsIndirect = GLMessage_Function_glDrawElementsIndirect;
+ static const Function glFramebufferParameteri = GLMessage_Function_glFramebufferParameteri;
+ static const Function glGenProgramPipelines = GLMessage_Function_glGenProgramPipelines;
+ static const Function glGetBooleani_v = GLMessage_Function_glGetBooleani_v;
+ static const Function glGetFramebufferParameteriv = GLMessage_Function_glGetFramebufferParameteriv;
+ static const Function glGetMultisamplefv = GLMessage_Function_glGetMultisamplefv;
+ static const Function glGetProgramInterfaceiv = GLMessage_Function_glGetProgramInterfaceiv;
+ static const Function glGetProgramPipelineInfoLog = GLMessage_Function_glGetProgramPipelineInfoLog;
+ static const Function glGetProgramPipelineiv = GLMessage_Function_glGetProgramPipelineiv;
+ static const Function glGetProgramResourceIndex = GLMessage_Function_glGetProgramResourceIndex;
+ static const Function glGetProgramResourceLocation = GLMessage_Function_glGetProgramResourceLocation;
+ static const Function glGetProgramResourceName = GLMessage_Function_glGetProgramResourceName;
+ static const Function glGetProgramResourceiv = GLMessage_Function_glGetProgramResourceiv;
+ static const Function glGetTexLevelParameterfv = GLMessage_Function_glGetTexLevelParameterfv;
+ static const Function glGetTexLevelParameteriv = GLMessage_Function_glGetTexLevelParameteriv;
+ static const Function glIsProgramPipeline = GLMessage_Function_glIsProgramPipeline;
+ static const Function glMemoryBarrier = GLMessage_Function_glMemoryBarrier;
+ static const Function glMemoryBarrierByRegion = GLMessage_Function_glMemoryBarrierByRegion;
+ static const Function glProgramUniform1f = GLMessage_Function_glProgramUniform1f;
+ static const Function glProgramUniform1fv = GLMessage_Function_glProgramUniform1fv;
+ static const Function glProgramUniform1i = GLMessage_Function_glProgramUniform1i;
+ static const Function glProgramUniform1iv = GLMessage_Function_glProgramUniform1iv;
+ static const Function glProgramUniform1ui = GLMessage_Function_glProgramUniform1ui;
+ static const Function glProgramUniform1uiv = GLMessage_Function_glProgramUniform1uiv;
+ static const Function glProgramUniform2f = GLMessage_Function_glProgramUniform2f;
+ static const Function glProgramUniform2fv = GLMessage_Function_glProgramUniform2fv;
+ static const Function glProgramUniform2i = GLMessage_Function_glProgramUniform2i;
+ static const Function glProgramUniform2iv = GLMessage_Function_glProgramUniform2iv;
+ static const Function glProgramUniform2ui = GLMessage_Function_glProgramUniform2ui;
+ static const Function glProgramUniform2uiv = GLMessage_Function_glProgramUniform2uiv;
+ static const Function glProgramUniform3f = GLMessage_Function_glProgramUniform3f;
+ static const Function glProgramUniform3fv = GLMessage_Function_glProgramUniform3fv;
+ static const Function glProgramUniform3i = GLMessage_Function_glProgramUniform3i;
+ static const Function glProgramUniform3iv = GLMessage_Function_glProgramUniform3iv;
+ static const Function glProgramUniform3ui = GLMessage_Function_glProgramUniform3ui;
+ static const Function glProgramUniform3uiv = GLMessage_Function_glProgramUniform3uiv;
+ static const Function glProgramUniform4f = GLMessage_Function_glProgramUniform4f;
+ static const Function glProgramUniform4fv = GLMessage_Function_glProgramUniform4fv;
+ static const Function glProgramUniform4i = GLMessage_Function_glProgramUniform4i;
+ static const Function glProgramUniform4iv = GLMessage_Function_glProgramUniform4iv;
+ static const Function glProgramUniform4ui = GLMessage_Function_glProgramUniform4ui;
+ static const Function glProgramUniform4uiv = GLMessage_Function_glProgramUniform4uiv;
+ static const Function glProgramUniformMatrix2fv = GLMessage_Function_glProgramUniformMatrix2fv;
+ static const Function glProgramUniformMatrix2x3fv = GLMessage_Function_glProgramUniformMatrix2x3fv;
+ static const Function glProgramUniformMatrix2x4fv = GLMessage_Function_glProgramUniformMatrix2x4fv;
+ static const Function glProgramUniformMatrix3fv = GLMessage_Function_glProgramUniformMatrix3fv;
+ static const Function glProgramUniformMatrix3x2fv = GLMessage_Function_glProgramUniformMatrix3x2fv;
+ static const Function glProgramUniformMatrix3x4fv = GLMessage_Function_glProgramUniformMatrix3x4fv;
+ static const Function glProgramUniformMatrix4fv = GLMessage_Function_glProgramUniformMatrix4fv;
+ static const Function glProgramUniformMatrix4x2fv = GLMessage_Function_glProgramUniformMatrix4x2fv;
+ static const Function glProgramUniformMatrix4x3fv = GLMessage_Function_glProgramUniformMatrix4x3fv;
+ static const Function glSampleMaski = GLMessage_Function_glSampleMaski;
+ static const Function glTexStorage2DMultisample = GLMessage_Function_glTexStorage2DMultisample;
+ static const Function glUseProgramStages = GLMessage_Function_glUseProgramStages;
+ static const Function glValidateProgramPipeline = GLMessage_Function_glValidateProgramPipeline;
+ static const Function glVertexAttribBinding = GLMessage_Function_glVertexAttribBinding;
+ static const Function glVertexAttribFormat = GLMessage_Function_glVertexAttribFormat;
+ static const Function glVertexAttribIFormat = GLMessage_Function_glVertexAttribIFormat;
+ static const Function glVertexBindingDivisor = GLMessage_Function_glVertexBindingDivisor;
+ static const Function glBlendEquationSeparateiEXT = GLMessage_Function_glBlendEquationSeparateiEXT;
+ static const Function glBlendEquationiEXT = GLMessage_Function_glBlendEquationiEXT;
+ static const Function glBlendFuncSeparateiEXT = GLMessage_Function_glBlendFuncSeparateiEXT;
+ static const Function glBlendFunciEXT = GLMessage_Function_glBlendFunciEXT;
+ static const Function glColorMaskiEXT = GLMessage_Function_glColorMaskiEXT;
+ static const Function glCopyImageSubDataEXT = GLMessage_Function_glCopyImageSubDataEXT;
+ static const Function glDisableiEXT = GLMessage_Function_glDisableiEXT;
+ static const Function glEnableiEXT = GLMessage_Function_glEnableiEXT;
+ static const Function glFramebufferTextureEXT = GLMessage_Function_glFramebufferTextureEXT;
+ static const Function glGetSamplerParameterIivEXT = GLMessage_Function_glGetSamplerParameterIivEXT;
+ static const Function glGetSamplerParameterIuivEXT = GLMessage_Function_glGetSamplerParameterIuivEXT;
+ static const Function glGetTexParameterIivEXT = GLMessage_Function_glGetTexParameterIivEXT;
+ static const Function glGetTexParameterIuivEXT = GLMessage_Function_glGetTexParameterIuivEXT;
+ static const Function glIsEnablediEXT = GLMessage_Function_glIsEnablediEXT;
+ static const Function glPatchParameteriEXT = GLMessage_Function_glPatchParameteriEXT;
+ static const Function glPrimitiveBoundingBoxEXT = GLMessage_Function_glPrimitiveBoundingBoxEXT;
+ static const Function glSamplerParameterIivEXT = GLMessage_Function_glSamplerParameterIivEXT;
+ static const Function glSamplerParameterIuivEXT = GLMessage_Function_glSamplerParameterIuivEXT;
+ static const Function glTexBufferEXT = GLMessage_Function_glTexBufferEXT;
+ static const Function glTexBufferRangeEXT = GLMessage_Function_glTexBufferRangeEXT;
+ static const Function glTexParameterIivEXT = GLMessage_Function_glTexParameterIivEXT;
+ static const Function glTexParameterIuivEXT = GLMessage_Function_glTexParameterIuivEXT;
+ static const Function glTextureViewEXT = GLMessage_Function_glTextureViewEXT;
static const Function eglGetDisplay = GLMessage_Function_eglGetDisplay;
static const Function eglInitialize = GLMessage_Function_eglInitialize;
static const Function eglTerminate = GLMessage_Function_eglTerminate;
diff --git a/opengl/libs/GLES_trace/src/gltrace_api.cpp b/opengl/libs/GLES_trace/src/gltrace_api.cpp
index 4fbd124..eed3ccf 100644
--- a/opengl/libs/GLES_trace/src/gltrace_api.cpp
+++ b/opengl/libs/GLES_trace/src/gltrace_api.cpp
@@ -18,7 +18,6 @@
#include <cutils/log.h>
#include <utils/Timers.h>
-#include <GLES3/gl3.h>
#include "gltrace.pb.h"
#include "gltrace_context.h"
@@ -10343,6 +10342,3112 @@ void GLTrace_glGetInternalformativ(GLenum target, GLenum internalformat, GLenum
glContext->traceGLMessage(&glmsg);
}
+void GLTrace_glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glDispatchCompute);
+
+ // copy argument num_groups_x
+ GLMessage_DataType *arg_num_groups_x = glmsg.add_args();
+ arg_num_groups_x->set_isarray(false);
+ arg_num_groups_x->set_type(GLMessage::DataType::INT);
+ arg_num_groups_x->add_intvalue(num_groups_x);
+
+ // copy argument num_groups_y
+ GLMessage_DataType *arg_num_groups_y = glmsg.add_args();
+ arg_num_groups_y->set_isarray(false);
+ arg_num_groups_y->set_type(GLMessage::DataType::INT);
+ arg_num_groups_y->add_intvalue(num_groups_y);
+
+ // copy argument num_groups_z
+ GLMessage_DataType *arg_num_groups_z = glmsg.add_args();
+ arg_num_groups_z->set_isarray(false);
+ arg_num_groups_z->set_type(GLMessage::DataType::INT);
+ arg_num_groups_z->add_intvalue(num_groups_z);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glDispatchCompute(num_groups_x, num_groups_y, num_groups_z);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glDispatchComputeIndirect(GLintptr indirect) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glDispatchComputeIndirect);
+
+ // copy argument indirect
+ GLMessage_DataType *arg_indirect = glmsg.add_args();
+ arg_indirect->set_isarray(false);
+ arg_indirect->set_type(GLMessage::DataType::INT);
+ arg_indirect->add_intvalue(indirect);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glDispatchComputeIndirect(indirect);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glDrawArraysIndirect(GLenum mode, const void * indirect) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glDrawArraysIndirect);
+
+ // copy argument mode
+ GLMessage_DataType *arg_mode = glmsg.add_args();
+ arg_mode->set_isarray(false);
+ arg_mode->set_type(GLMessage::DataType::ENUM);
+ arg_mode->add_intvalue((int)mode);
+
+ // copy argument indirect
+ GLMessage_DataType *arg_indirect = glmsg.add_args();
+ arg_indirect->set_isarray(false);
+ arg_indirect->set_type(GLMessage::DataType::INT64);
+ arg_indirect->add_int64value((uintptr_t)indirect);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glDrawArraysIndirect(mode, indirect);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) indirect,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glDrawElementsIndirect(GLenum mode, GLenum type, const void * indirect) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glDrawElementsIndirect);
+
+ // copy argument mode
+ GLMessage_DataType *arg_mode = glmsg.add_args();
+ arg_mode->set_isarray(false);
+ arg_mode->set_type(GLMessage::DataType::ENUM);
+ arg_mode->add_intvalue((int)mode);
+
+ // copy argument type
+ GLMessage_DataType *arg_type = glmsg.add_args();
+ arg_type->set_isarray(false);
+ arg_type->set_type(GLMessage::DataType::ENUM);
+ arg_type->add_intvalue((int)type);
+
+ // copy argument indirect
+ GLMessage_DataType *arg_indirect = glmsg.add_args();
+ arg_indirect->set_isarray(false);
+ arg_indirect->set_type(GLMessage::DataType::INT64);
+ arg_indirect->add_int64value((uintptr_t)indirect);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glDrawElementsIndirect(mode, type, indirect);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) indirect,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glFramebufferParameteri(GLenum target, GLenum pname, GLint param) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glFramebufferParameteri);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument pname
+ GLMessage_DataType *arg_pname = glmsg.add_args();
+ arg_pname->set_isarray(false);
+ arg_pname->set_type(GLMessage::DataType::ENUM);
+ arg_pname->add_intvalue((int)pname);
+
+ // copy argument param
+ GLMessage_DataType *arg_param = glmsg.add_args();
+ arg_param->set_isarray(false);
+ arg_param->set_type(GLMessage::DataType::INT);
+ arg_param->add_intvalue(param);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glFramebufferParameteri(target, pname, param);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint * params) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGetFramebufferParameteriv);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument pname
+ GLMessage_DataType *arg_pname = glmsg.add_args();
+ arg_pname->set_isarray(false);
+ arg_pname->set_type(GLMessage::DataType::ENUM);
+ arg_pname->add_intvalue((int)pname);
+
+ // copy argument params
+ GLMessage_DataType *arg_params = glmsg.add_args();
+ arg_params->set_isarray(false);
+ arg_params->set_type(GLMessage::DataType::INT64);
+ arg_params->add_int64value((uintptr_t)params);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glGetFramebufferParameteriv(target, pname, params);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) params,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint * params) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGetProgramInterfaceiv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument programInterface
+ GLMessage_DataType *arg_programInterface = glmsg.add_args();
+ arg_programInterface->set_isarray(false);
+ arg_programInterface->set_type(GLMessage::DataType::ENUM);
+ arg_programInterface->add_intvalue((int)programInterface);
+
+ // copy argument pname
+ GLMessage_DataType *arg_pname = glmsg.add_args();
+ arg_pname->set_isarray(false);
+ arg_pname->set_type(GLMessage::DataType::ENUM);
+ arg_pname->add_intvalue((int)pname);
+
+ // copy argument params
+ GLMessage_DataType *arg_params = glmsg.add_args();
+ arg_params->set_isarray(false);
+ arg_params->set_type(GLMessage::DataType::INT64);
+ arg_params->add_int64value((uintptr_t)params);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glGetProgramInterfaceiv(program, programInterface, pname, params);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) params,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+GLuint GLTrace_glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar * name) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGetProgramResourceIndex);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument programInterface
+ GLMessage_DataType *arg_programInterface = glmsg.add_args();
+ arg_programInterface->set_isarray(false);
+ arg_programInterface->set_type(GLMessage::DataType::ENUM);
+ arg_programInterface->add_intvalue((int)programInterface);
+
+ // copy argument name
+ GLMessage_DataType *arg_name = glmsg.add_args();
+ arg_name->set_isarray(false);
+ arg_name->set_type(GLMessage::DataType::INT64);
+ arg_name->add_int64value((uintptr_t)name);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ GLuint retValue = glContext->hooks->gl.glGetProgramResourceIndex(program, programInterface, name);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ // set return value
+ GLMessage_DataType *rt = glmsg.mutable_returnvalue();
+ rt->set_isarray(false);
+ rt->set_type(GLMessage::DataType::INT);
+ rt->add_intvalue(retValue);
+
+ void *pointerArgs[] = {
+ (void *) name,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+
+ return retValue;
+}
+
+void GLTrace_glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei * length, GLchar * name) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGetProgramResourceName);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument programInterface
+ GLMessage_DataType *arg_programInterface = glmsg.add_args();
+ arg_programInterface->set_isarray(false);
+ arg_programInterface->set_type(GLMessage::DataType::ENUM);
+ arg_programInterface->add_intvalue((int)programInterface);
+
+ // copy argument index
+ GLMessage_DataType *arg_index = glmsg.add_args();
+ arg_index->set_isarray(false);
+ arg_index->set_type(GLMessage::DataType::INT);
+ arg_index->add_intvalue(index);
+
+ // copy argument bufSize
+ GLMessage_DataType *arg_bufSize = glmsg.add_args();
+ arg_bufSize->set_isarray(false);
+ arg_bufSize->set_type(GLMessage::DataType::INT);
+ arg_bufSize->add_intvalue(bufSize);
+
+ // copy argument length
+ GLMessage_DataType *arg_length = glmsg.add_args();
+ arg_length->set_isarray(false);
+ arg_length->set_type(GLMessage::DataType::INT64);
+ arg_length->add_int64value((uintptr_t)length);
+
+ // copy argument name
+ GLMessage_DataType *arg_name = glmsg.add_args();
+ arg_name->set_isarray(false);
+ arg_name->set_type(GLMessage::DataType::INT64);
+ arg_name->add_int64value((uintptr_t)name);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glGetProgramResourceName(program, programInterface, index, bufSize, length, name);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) length,
+ (void *) name,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum * props, GLsizei bufSize, GLsizei * length, GLint * params) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGetProgramResourceiv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument programInterface
+ GLMessage_DataType *arg_programInterface = glmsg.add_args();
+ arg_programInterface->set_isarray(false);
+ arg_programInterface->set_type(GLMessage::DataType::ENUM);
+ arg_programInterface->add_intvalue((int)programInterface);
+
+ // copy argument index
+ GLMessage_DataType *arg_index = glmsg.add_args();
+ arg_index->set_isarray(false);
+ arg_index->set_type(GLMessage::DataType::INT);
+ arg_index->add_intvalue(index);
+
+ // copy argument propCount
+ GLMessage_DataType *arg_propCount = glmsg.add_args();
+ arg_propCount->set_isarray(false);
+ arg_propCount->set_type(GLMessage::DataType::INT);
+ arg_propCount->add_intvalue(propCount);
+
+ // copy argument props
+ GLMessage_DataType *arg_props = glmsg.add_args();
+ arg_props->set_isarray(false);
+ arg_props->set_type(GLMessage::DataType::INT64);
+ arg_props->add_int64value((uintptr_t)props);
+
+ // copy argument bufSize
+ GLMessage_DataType *arg_bufSize = glmsg.add_args();
+ arg_bufSize->set_isarray(false);
+ arg_bufSize->set_type(GLMessage::DataType::INT);
+ arg_bufSize->add_intvalue(bufSize);
+
+ // copy argument length
+ GLMessage_DataType *arg_length = glmsg.add_args();
+ arg_length->set_isarray(false);
+ arg_length->set_type(GLMessage::DataType::INT64);
+ arg_length->add_int64value((uintptr_t)length);
+
+ // copy argument params
+ GLMessage_DataType *arg_params = glmsg.add_args();
+ arg_params->set_isarray(false);
+ arg_params->set_type(GLMessage::DataType::INT64);
+ arg_params->add_int64value((uintptr_t)params);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glGetProgramResourceiv(program, programInterface, index, propCount, props, bufSize, length, params);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) props,
+ (void *) length,
+ (void *) params,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+GLint GLTrace_glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar * name) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGetProgramResourceLocation);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument programInterface
+ GLMessage_DataType *arg_programInterface = glmsg.add_args();
+ arg_programInterface->set_isarray(false);
+ arg_programInterface->set_type(GLMessage::DataType::ENUM);
+ arg_programInterface->add_intvalue((int)programInterface);
+
+ // copy argument name
+ GLMessage_DataType *arg_name = glmsg.add_args();
+ arg_name->set_isarray(false);
+ arg_name->set_type(GLMessage::DataType::INT64);
+ arg_name->add_int64value((uintptr_t)name);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ GLint retValue = glContext->hooks->gl.glGetProgramResourceLocation(program, programInterface, name);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ // set return value
+ GLMessage_DataType *rt = glmsg.mutable_returnvalue();
+ rt->set_isarray(false);
+ rt->set_type(GLMessage::DataType::INT);
+ rt->add_intvalue(retValue);
+
+ void *pointerArgs[] = {
+ (void *) name,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+
+ return retValue;
+}
+
+void GLTrace_glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glUseProgramStages);
+
+ // copy argument pipeline
+ GLMessage_DataType *arg_pipeline = glmsg.add_args();
+ arg_pipeline->set_isarray(false);
+ arg_pipeline->set_type(GLMessage::DataType::INT);
+ arg_pipeline->add_intvalue(pipeline);
+
+ // copy argument stages
+ GLMessage_DataType *arg_stages = glmsg.add_args();
+ arg_stages->set_isarray(false);
+ arg_stages->set_type(GLMessage::DataType::INT);
+ arg_stages->add_intvalue(stages);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glUseProgramStages(pipeline, stages, program);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glActiveShaderProgram(GLuint pipeline, GLuint program) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glActiveShaderProgram);
+
+ // copy argument pipeline
+ GLMessage_DataType *arg_pipeline = glmsg.add_args();
+ arg_pipeline->set_isarray(false);
+ arg_pipeline->set_type(GLMessage::DataType::INT);
+ arg_pipeline->add_intvalue(pipeline);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glActiveShaderProgram(pipeline, program);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+GLuint GLTrace_glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar *const* strings) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glCreateShaderProgramv);
+
+ // copy argument type
+ GLMessage_DataType *arg_type = glmsg.add_args();
+ arg_type->set_isarray(false);
+ arg_type->set_type(GLMessage::DataType::ENUM);
+ arg_type->add_intvalue((int)type);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument strings
+ GLMessage_DataType *arg_strings = glmsg.add_args();
+ arg_strings->set_isarray(false);
+ arg_strings->set_type(GLMessage::DataType::INT64);
+ arg_strings->add_int64value((uintptr_t)strings);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ GLuint retValue = glContext->hooks->gl.glCreateShaderProgramv(type, count, strings);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ // set return value
+ GLMessage_DataType *rt = glmsg.mutable_returnvalue();
+ rt->set_isarray(false);
+ rt->set_type(GLMessage::DataType::INT);
+ rt->add_intvalue(retValue);
+
+ void *pointerArgs[] = {
+ (void *) strings,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+
+ return retValue;
+}
+
+void GLTrace_glBindProgramPipeline(GLuint pipeline) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glBindProgramPipeline);
+
+ // copy argument pipeline
+ GLMessage_DataType *arg_pipeline = glmsg.add_args();
+ arg_pipeline->set_isarray(false);
+ arg_pipeline->set_type(GLMessage::DataType::INT);
+ arg_pipeline->add_intvalue(pipeline);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glBindProgramPipeline(pipeline);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glDeleteProgramPipelines(GLsizei n, const GLuint * pipelines) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glDeleteProgramPipelines);
+
+ // copy argument n
+ GLMessage_DataType *arg_n = glmsg.add_args();
+ arg_n->set_isarray(false);
+ arg_n->set_type(GLMessage::DataType::INT);
+ arg_n->add_intvalue(n);
+
+ // copy argument pipelines
+ GLMessage_DataType *arg_pipelines = glmsg.add_args();
+ arg_pipelines->set_isarray(false);
+ arg_pipelines->set_type(GLMessage::DataType::INT64);
+ arg_pipelines->add_int64value((uintptr_t)pipelines);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glDeleteProgramPipelines(n, pipelines);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) pipelines,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glGenProgramPipelines(GLsizei n, GLuint * pipelines) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGenProgramPipelines);
+
+ // copy argument n
+ GLMessage_DataType *arg_n = glmsg.add_args();
+ arg_n->set_isarray(false);
+ arg_n->set_type(GLMessage::DataType::INT);
+ arg_n->add_intvalue(n);
+
+ // copy argument pipelines
+ GLMessage_DataType *arg_pipelines = glmsg.add_args();
+ arg_pipelines->set_isarray(false);
+ arg_pipelines->set_type(GLMessage::DataType::INT64);
+ arg_pipelines->add_int64value((uintptr_t)pipelines);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glGenProgramPipelines(n, pipelines);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) pipelines,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+GLboolean GLTrace_glIsProgramPipeline(GLuint pipeline) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glIsProgramPipeline);
+
+ // copy argument pipeline
+ GLMessage_DataType *arg_pipeline = glmsg.add_args();
+ arg_pipeline->set_isarray(false);
+ arg_pipeline->set_type(GLMessage::DataType::INT);
+ arg_pipeline->add_intvalue(pipeline);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ GLboolean retValue = glContext->hooks->gl.glIsProgramPipeline(pipeline);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ // set return value
+ GLMessage_DataType *rt = glmsg.mutable_returnvalue();
+ rt->set_isarray(false);
+ rt->set_type(GLMessage::DataType::BOOL);
+ rt->add_boolvalue(retValue);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+
+ return retValue;
+}
+
+void GLTrace_glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint * params) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGetProgramPipelineiv);
+
+ // copy argument pipeline
+ GLMessage_DataType *arg_pipeline = glmsg.add_args();
+ arg_pipeline->set_isarray(false);
+ arg_pipeline->set_type(GLMessage::DataType::INT);
+ arg_pipeline->add_intvalue(pipeline);
+
+ // copy argument pname
+ GLMessage_DataType *arg_pname = glmsg.add_args();
+ arg_pname->set_isarray(false);
+ arg_pname->set_type(GLMessage::DataType::ENUM);
+ arg_pname->add_intvalue((int)pname);
+
+ // copy argument params
+ GLMessage_DataType *arg_params = glmsg.add_args();
+ arg_params->set_isarray(false);
+ arg_params->set_type(GLMessage::DataType::INT64);
+ arg_params->add_int64value((uintptr_t)params);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glGetProgramPipelineiv(pipeline, pname, params);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) params,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform1i(GLuint program, GLint location, GLint v0) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform1i);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument v0
+ GLMessage_DataType *arg_v0 = glmsg.add_args();
+ arg_v0->set_isarray(false);
+ arg_v0->set_type(GLMessage::DataType::INT);
+ arg_v0->add_intvalue(v0);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform1i(program, location, v0);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform2i);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument v0
+ GLMessage_DataType *arg_v0 = glmsg.add_args();
+ arg_v0->set_isarray(false);
+ arg_v0->set_type(GLMessage::DataType::INT);
+ arg_v0->add_intvalue(v0);
+
+ // copy argument v1
+ GLMessage_DataType *arg_v1 = glmsg.add_args();
+ arg_v1->set_isarray(false);
+ arg_v1->set_type(GLMessage::DataType::INT);
+ arg_v1->add_intvalue(v1);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform2i(program, location, v0, v1);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform3i);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument v0
+ GLMessage_DataType *arg_v0 = glmsg.add_args();
+ arg_v0->set_isarray(false);
+ arg_v0->set_type(GLMessage::DataType::INT);
+ arg_v0->add_intvalue(v0);
+
+ // copy argument v1
+ GLMessage_DataType *arg_v1 = glmsg.add_args();
+ arg_v1->set_isarray(false);
+ arg_v1->set_type(GLMessage::DataType::INT);
+ arg_v1->add_intvalue(v1);
+
+ // copy argument v2
+ GLMessage_DataType *arg_v2 = glmsg.add_args();
+ arg_v2->set_isarray(false);
+ arg_v2->set_type(GLMessage::DataType::INT);
+ arg_v2->add_intvalue(v2);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform3i(program, location, v0, v1, v2);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform4i);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument v0
+ GLMessage_DataType *arg_v0 = glmsg.add_args();
+ arg_v0->set_isarray(false);
+ arg_v0->set_type(GLMessage::DataType::INT);
+ arg_v0->add_intvalue(v0);
+
+ // copy argument v1
+ GLMessage_DataType *arg_v1 = glmsg.add_args();
+ arg_v1->set_isarray(false);
+ arg_v1->set_type(GLMessage::DataType::INT);
+ arg_v1->add_intvalue(v1);
+
+ // copy argument v2
+ GLMessage_DataType *arg_v2 = glmsg.add_args();
+ arg_v2->set_isarray(false);
+ arg_v2->set_type(GLMessage::DataType::INT);
+ arg_v2->add_intvalue(v2);
+
+ // copy argument v3
+ GLMessage_DataType *arg_v3 = glmsg.add_args();
+ arg_v3->set_isarray(false);
+ arg_v3->set_type(GLMessage::DataType::INT);
+ arg_v3->add_intvalue(v3);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform4i(program, location, v0, v1, v2, v3);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform1ui(GLuint program, GLint location, GLuint v0) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform1ui);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument v0
+ GLMessage_DataType *arg_v0 = glmsg.add_args();
+ arg_v0->set_isarray(false);
+ arg_v0->set_type(GLMessage::DataType::INT);
+ arg_v0->add_intvalue(v0);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform1ui(program, location, v0);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform2ui);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument v0
+ GLMessage_DataType *arg_v0 = glmsg.add_args();
+ arg_v0->set_isarray(false);
+ arg_v0->set_type(GLMessage::DataType::INT);
+ arg_v0->add_intvalue(v0);
+
+ // copy argument v1
+ GLMessage_DataType *arg_v1 = glmsg.add_args();
+ arg_v1->set_isarray(false);
+ arg_v1->set_type(GLMessage::DataType::INT);
+ arg_v1->add_intvalue(v1);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform2ui(program, location, v0, v1);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform3ui);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument v0
+ GLMessage_DataType *arg_v0 = glmsg.add_args();
+ arg_v0->set_isarray(false);
+ arg_v0->set_type(GLMessage::DataType::INT);
+ arg_v0->add_intvalue(v0);
+
+ // copy argument v1
+ GLMessage_DataType *arg_v1 = glmsg.add_args();
+ arg_v1->set_isarray(false);
+ arg_v1->set_type(GLMessage::DataType::INT);
+ arg_v1->add_intvalue(v1);
+
+ // copy argument v2
+ GLMessage_DataType *arg_v2 = glmsg.add_args();
+ arg_v2->set_isarray(false);
+ arg_v2->set_type(GLMessage::DataType::INT);
+ arg_v2->add_intvalue(v2);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform3ui(program, location, v0, v1, v2);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform4ui);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument v0
+ GLMessage_DataType *arg_v0 = glmsg.add_args();
+ arg_v0->set_isarray(false);
+ arg_v0->set_type(GLMessage::DataType::INT);
+ arg_v0->add_intvalue(v0);
+
+ // copy argument v1
+ GLMessage_DataType *arg_v1 = glmsg.add_args();
+ arg_v1->set_isarray(false);
+ arg_v1->set_type(GLMessage::DataType::INT);
+ arg_v1->add_intvalue(v1);
+
+ // copy argument v2
+ GLMessage_DataType *arg_v2 = glmsg.add_args();
+ arg_v2->set_isarray(false);
+ arg_v2->set_type(GLMessage::DataType::INT);
+ arg_v2->add_intvalue(v2);
+
+ // copy argument v3
+ GLMessage_DataType *arg_v3 = glmsg.add_args();
+ arg_v3->set_isarray(false);
+ arg_v3->set_type(GLMessage::DataType::INT);
+ arg_v3->add_intvalue(v3);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform4ui(program, location, v0, v1, v2, v3);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform1f(GLuint program, GLint location, GLfloat v0) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform1f);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument v0
+ GLMessage_DataType *arg_v0 = glmsg.add_args();
+ arg_v0->set_isarray(false);
+ arg_v0->set_type(GLMessage::DataType::FLOAT);
+ arg_v0->add_floatvalue(v0);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform1f(program, location, v0);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform2f);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument v0
+ GLMessage_DataType *arg_v0 = glmsg.add_args();
+ arg_v0->set_isarray(false);
+ arg_v0->set_type(GLMessage::DataType::FLOAT);
+ arg_v0->add_floatvalue(v0);
+
+ // copy argument v1
+ GLMessage_DataType *arg_v1 = glmsg.add_args();
+ arg_v1->set_isarray(false);
+ arg_v1->set_type(GLMessage::DataType::FLOAT);
+ arg_v1->add_floatvalue(v1);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform2f(program, location, v0, v1);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform3f);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument v0
+ GLMessage_DataType *arg_v0 = glmsg.add_args();
+ arg_v0->set_isarray(false);
+ arg_v0->set_type(GLMessage::DataType::FLOAT);
+ arg_v0->add_floatvalue(v0);
+
+ // copy argument v1
+ GLMessage_DataType *arg_v1 = glmsg.add_args();
+ arg_v1->set_isarray(false);
+ arg_v1->set_type(GLMessage::DataType::FLOAT);
+ arg_v1->add_floatvalue(v1);
+
+ // copy argument v2
+ GLMessage_DataType *arg_v2 = glmsg.add_args();
+ arg_v2->set_isarray(false);
+ arg_v2->set_type(GLMessage::DataType::FLOAT);
+ arg_v2->add_floatvalue(v2);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform3f(program, location, v0, v1, v2);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform4f);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument v0
+ GLMessage_DataType *arg_v0 = glmsg.add_args();
+ arg_v0->set_isarray(false);
+ arg_v0->set_type(GLMessage::DataType::FLOAT);
+ arg_v0->add_floatvalue(v0);
+
+ // copy argument v1
+ GLMessage_DataType *arg_v1 = glmsg.add_args();
+ arg_v1->set_isarray(false);
+ arg_v1->set_type(GLMessage::DataType::FLOAT);
+ arg_v1->add_floatvalue(v1);
+
+ // copy argument v2
+ GLMessage_DataType *arg_v2 = glmsg.add_args();
+ arg_v2->set_isarray(false);
+ arg_v2->set_type(GLMessage::DataType::FLOAT);
+ arg_v2->add_floatvalue(v2);
+
+ // copy argument v3
+ GLMessage_DataType *arg_v3 = glmsg.add_args();
+ arg_v3->set_isarray(false);
+ arg_v3->set_type(GLMessage::DataType::FLOAT);
+ arg_v3->add_floatvalue(v3);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform4f(program, location, v0, v1, v2, v3);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform1iv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform1iv(program, location, count, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform2iv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform2iv(program, location, count, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform3iv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform3iv(program, location, count, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform4iv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform4iv(program, location, count, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform1uiv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform1uiv(program, location, count, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform2uiv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform2uiv(program, location, count, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform3uiv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform3uiv(program, location, count, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform4uiv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform4uiv(program, location, count, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform1fv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform1fv(program, location, count, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform2fv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform2fv(program, location, count, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform3fv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform3fv(program, location, count, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniform4fv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniform4fv(program, location, count, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniformMatrix2fv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument transpose
+ GLMessage_DataType *arg_transpose = glmsg.add_args();
+ arg_transpose->set_isarray(false);
+ arg_transpose->set_type(GLMessage::DataType::BOOL);
+ arg_transpose->add_boolvalue(transpose);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniformMatrix2fv(program, location, count, transpose, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniformMatrix3fv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument transpose
+ GLMessage_DataType *arg_transpose = glmsg.add_args();
+ arg_transpose->set_isarray(false);
+ arg_transpose->set_type(GLMessage::DataType::BOOL);
+ arg_transpose->add_boolvalue(transpose);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniformMatrix3fv(program, location, count, transpose, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniformMatrix4fv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument transpose
+ GLMessage_DataType *arg_transpose = glmsg.add_args();
+ arg_transpose->set_isarray(false);
+ arg_transpose->set_type(GLMessage::DataType::BOOL);
+ arg_transpose->add_boolvalue(transpose);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniformMatrix4fv(program, location, count, transpose, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniformMatrix2x3fv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument transpose
+ GLMessage_DataType *arg_transpose = glmsg.add_args();
+ arg_transpose->set_isarray(false);
+ arg_transpose->set_type(GLMessage::DataType::BOOL);
+ arg_transpose->add_boolvalue(transpose);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniformMatrix2x3fv(program, location, count, transpose, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniformMatrix3x2fv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument transpose
+ GLMessage_DataType *arg_transpose = glmsg.add_args();
+ arg_transpose->set_isarray(false);
+ arg_transpose->set_type(GLMessage::DataType::BOOL);
+ arg_transpose->add_boolvalue(transpose);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniformMatrix3x2fv(program, location, count, transpose, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniformMatrix2x4fv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument transpose
+ GLMessage_DataType *arg_transpose = glmsg.add_args();
+ arg_transpose->set_isarray(false);
+ arg_transpose->set_type(GLMessage::DataType::BOOL);
+ arg_transpose->add_boolvalue(transpose);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniformMatrix2x4fv(program, location, count, transpose, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniformMatrix4x2fv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument transpose
+ GLMessage_DataType *arg_transpose = glmsg.add_args();
+ arg_transpose->set_isarray(false);
+ arg_transpose->set_type(GLMessage::DataType::BOOL);
+ arg_transpose->add_boolvalue(transpose);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniformMatrix4x2fv(program, location, count, transpose, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniformMatrix3x4fv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument transpose
+ GLMessage_DataType *arg_transpose = glmsg.add_args();
+ arg_transpose->set_isarray(false);
+ arg_transpose->set_type(GLMessage::DataType::BOOL);
+ arg_transpose->add_boolvalue(transpose);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniformMatrix3x4fv(program, location, count, transpose, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glProgramUniformMatrix4x3fv);
+
+ // copy argument program
+ GLMessage_DataType *arg_program = glmsg.add_args();
+ arg_program->set_isarray(false);
+ arg_program->set_type(GLMessage::DataType::INT);
+ arg_program->add_intvalue(program);
+
+ // copy argument location
+ GLMessage_DataType *arg_location = glmsg.add_args();
+ arg_location->set_isarray(false);
+ arg_location->set_type(GLMessage::DataType::INT);
+ arg_location->add_intvalue(location);
+
+ // copy argument count
+ GLMessage_DataType *arg_count = glmsg.add_args();
+ arg_count->set_isarray(false);
+ arg_count->set_type(GLMessage::DataType::INT);
+ arg_count->add_intvalue(count);
+
+ // copy argument transpose
+ GLMessage_DataType *arg_transpose = glmsg.add_args();
+ arg_transpose->set_isarray(false);
+ arg_transpose->set_type(GLMessage::DataType::BOOL);
+ arg_transpose->add_boolvalue(transpose);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT64);
+ arg_value->add_int64value((uintptr_t)value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glProgramUniformMatrix4x3fv(program, location, count, transpose, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) value,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glValidateProgramPipeline(GLuint pipeline) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glValidateProgramPipeline);
+
+ // copy argument pipeline
+ GLMessage_DataType *arg_pipeline = glmsg.add_args();
+ arg_pipeline->set_isarray(false);
+ arg_pipeline->set_type(GLMessage::DataType::INT);
+ arg_pipeline->add_intvalue(pipeline);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glValidateProgramPipeline(pipeline);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei * length, GLchar * infoLog) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGetProgramPipelineInfoLog);
+
+ // copy argument pipeline
+ GLMessage_DataType *arg_pipeline = glmsg.add_args();
+ arg_pipeline->set_isarray(false);
+ arg_pipeline->set_type(GLMessage::DataType::INT);
+ arg_pipeline->add_intvalue(pipeline);
+
+ // copy argument bufSize
+ GLMessage_DataType *arg_bufSize = glmsg.add_args();
+ arg_bufSize->set_isarray(false);
+ arg_bufSize->set_type(GLMessage::DataType::INT);
+ arg_bufSize->add_intvalue(bufSize);
+
+ // copy argument length
+ GLMessage_DataType *arg_length = glmsg.add_args();
+ arg_length->set_isarray(false);
+ arg_length->set_type(GLMessage::DataType::INT64);
+ arg_length->add_int64value((uintptr_t)length);
+
+ // copy argument infoLog
+ GLMessage_DataType *arg_infoLog = glmsg.add_args();
+ arg_infoLog->set_isarray(false);
+ arg_infoLog->set_type(GLMessage::DataType::INT64);
+ arg_infoLog->add_int64value((uintptr_t)infoLog);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glGetProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) length,
+ (void *) infoLog,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glBindImageTexture);
+
+ // copy argument unit
+ GLMessage_DataType *arg_unit = glmsg.add_args();
+ arg_unit->set_isarray(false);
+ arg_unit->set_type(GLMessage::DataType::INT);
+ arg_unit->add_intvalue(unit);
+
+ // copy argument texture
+ GLMessage_DataType *arg_texture = glmsg.add_args();
+ arg_texture->set_isarray(false);
+ arg_texture->set_type(GLMessage::DataType::INT);
+ arg_texture->add_intvalue(texture);
+
+ // copy argument level
+ GLMessage_DataType *arg_level = glmsg.add_args();
+ arg_level->set_isarray(false);
+ arg_level->set_type(GLMessage::DataType::INT);
+ arg_level->add_intvalue(level);
+
+ // copy argument layered
+ GLMessage_DataType *arg_layered = glmsg.add_args();
+ arg_layered->set_isarray(false);
+ arg_layered->set_type(GLMessage::DataType::BOOL);
+ arg_layered->add_boolvalue(layered);
+
+ // copy argument layer
+ GLMessage_DataType *arg_layer = glmsg.add_args();
+ arg_layer->set_isarray(false);
+ arg_layer->set_type(GLMessage::DataType::INT);
+ arg_layer->add_intvalue(layer);
+
+ // copy argument access
+ GLMessage_DataType *arg_access = glmsg.add_args();
+ arg_access->set_isarray(false);
+ arg_access->set_type(GLMessage::DataType::ENUM);
+ arg_access->add_intvalue((int)access);
+
+ // copy argument format
+ GLMessage_DataType *arg_format = glmsg.add_args();
+ arg_format->set_isarray(false);
+ arg_format->set_type(GLMessage::DataType::ENUM);
+ arg_format->add_intvalue((int)format);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glBindImageTexture(unit, texture, level, layered, layer, access, format);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glGetBooleani_v(GLenum target, GLuint index, GLboolean * data) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGetBooleani_v);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument index
+ GLMessage_DataType *arg_index = glmsg.add_args();
+ arg_index->set_isarray(false);
+ arg_index->set_type(GLMessage::DataType::INT);
+ arg_index->add_intvalue(index);
+
+ // copy argument data
+ GLMessage_DataType *arg_data = glmsg.add_args();
+ arg_data->set_isarray(false);
+ arg_data->set_type(GLMessage::DataType::INT64);
+ arg_data->add_int64value((uintptr_t)data);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glGetBooleani_v(target, index, data);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) data,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glMemoryBarrier(GLbitfield barriers) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glMemoryBarrier);
+
+ // copy argument barriers
+ GLMessage_DataType *arg_barriers = glmsg.add_args();
+ arg_barriers->set_isarray(false);
+ arg_barriers->set_type(GLMessage::DataType::INT);
+ arg_barriers->add_intvalue(barriers);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glMemoryBarrier(barriers);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glMemoryBarrierByRegion(GLbitfield barriers) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glMemoryBarrierByRegion);
+
+ // copy argument barriers
+ GLMessage_DataType *arg_barriers = glmsg.add_args();
+ arg_barriers->set_isarray(false);
+ arg_barriers->set_type(GLMessage::DataType::INT);
+ arg_barriers->add_intvalue(barriers);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glMemoryBarrierByRegion(barriers);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glTexStorage2DMultisample);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument samples
+ GLMessage_DataType *arg_samples = glmsg.add_args();
+ arg_samples->set_isarray(false);
+ arg_samples->set_type(GLMessage::DataType::INT);
+ arg_samples->add_intvalue(samples);
+
+ // copy argument internalformat
+ GLMessage_DataType *arg_internalformat = glmsg.add_args();
+ arg_internalformat->set_isarray(false);
+ arg_internalformat->set_type(GLMessage::DataType::ENUM);
+ arg_internalformat->add_intvalue((int)internalformat);
+
+ // copy argument width
+ GLMessage_DataType *arg_width = glmsg.add_args();
+ arg_width->set_isarray(false);
+ arg_width->set_type(GLMessage::DataType::INT);
+ arg_width->add_intvalue(width);
+
+ // copy argument height
+ GLMessage_DataType *arg_height = glmsg.add_args();
+ arg_height->set_isarray(false);
+ arg_height->set_type(GLMessage::DataType::INT);
+ arg_height->add_intvalue(height);
+
+ // copy argument fixedsamplelocations
+ GLMessage_DataType *arg_fixedsamplelocations = glmsg.add_args();
+ arg_fixedsamplelocations->set_isarray(false);
+ arg_fixedsamplelocations->set_type(GLMessage::DataType::BOOL);
+ arg_fixedsamplelocations->add_boolvalue(fixedsamplelocations);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glTexStorage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glGetMultisamplefv(GLenum pname, GLuint index, GLfloat * val) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGetMultisamplefv);
+
+ // copy argument pname
+ GLMessage_DataType *arg_pname = glmsg.add_args();
+ arg_pname->set_isarray(false);
+ arg_pname->set_type(GLMessage::DataType::ENUM);
+ arg_pname->add_intvalue((int)pname);
+
+ // copy argument index
+ GLMessage_DataType *arg_index = glmsg.add_args();
+ arg_index->set_isarray(false);
+ arg_index->set_type(GLMessage::DataType::INT);
+ arg_index->add_intvalue(index);
+
+ // copy argument val
+ GLMessage_DataType *arg_val = glmsg.add_args();
+ arg_val->set_isarray(false);
+ arg_val->set_type(GLMessage::DataType::INT64);
+ arg_val->add_int64value((uintptr_t)val);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glGetMultisamplefv(pname, index, val);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) val,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glSampleMaski(GLuint maskNumber, GLbitfield mask) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glSampleMaski);
+
+ // copy argument maskNumber
+ GLMessage_DataType *arg_maskNumber = glmsg.add_args();
+ arg_maskNumber->set_isarray(false);
+ arg_maskNumber->set_type(GLMessage::DataType::INT);
+ arg_maskNumber->add_intvalue(maskNumber);
+
+ // copy argument mask
+ GLMessage_DataType *arg_mask = glmsg.add_args();
+ arg_mask->set_isarray(false);
+ arg_mask->set_type(GLMessage::DataType::INT);
+ arg_mask->add_intvalue(mask);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glSampleMaski(maskNumber, mask);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint * params) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGetTexLevelParameteriv);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument level
+ GLMessage_DataType *arg_level = glmsg.add_args();
+ arg_level->set_isarray(false);
+ arg_level->set_type(GLMessage::DataType::INT);
+ arg_level->add_intvalue(level);
+
+ // copy argument pname
+ GLMessage_DataType *arg_pname = glmsg.add_args();
+ arg_pname->set_isarray(false);
+ arg_pname->set_type(GLMessage::DataType::ENUM);
+ arg_pname->add_intvalue((int)pname);
+
+ // copy argument params
+ GLMessage_DataType *arg_params = glmsg.add_args();
+ arg_params->set_isarray(false);
+ arg_params->set_type(GLMessage::DataType::INT64);
+ arg_params->add_int64value((uintptr_t)params);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glGetTexLevelParameteriv(target, level, pname, params);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) params,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat * params) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGetTexLevelParameterfv);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument level
+ GLMessage_DataType *arg_level = glmsg.add_args();
+ arg_level->set_isarray(false);
+ arg_level->set_type(GLMessage::DataType::INT);
+ arg_level->add_intvalue(level);
+
+ // copy argument pname
+ GLMessage_DataType *arg_pname = glmsg.add_args();
+ arg_pname->set_isarray(false);
+ arg_pname->set_type(GLMessage::DataType::ENUM);
+ arg_pname->add_intvalue((int)pname);
+
+ // copy argument params
+ GLMessage_DataType *arg_params = glmsg.add_args();
+ arg_params->set_isarray(false);
+ arg_params->set_type(GLMessage::DataType::INT64);
+ arg_params->add_int64value((uintptr_t)params);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glGetTexLevelParameterfv(target, level, pname, params);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) params,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glBindVertexBuffer);
+
+ // copy argument bindingindex
+ GLMessage_DataType *arg_bindingindex = glmsg.add_args();
+ arg_bindingindex->set_isarray(false);
+ arg_bindingindex->set_type(GLMessage::DataType::INT);
+ arg_bindingindex->add_intvalue(bindingindex);
+
+ // copy argument buffer
+ GLMessage_DataType *arg_buffer = glmsg.add_args();
+ arg_buffer->set_isarray(false);
+ arg_buffer->set_type(GLMessage::DataType::INT);
+ arg_buffer->add_intvalue(buffer);
+
+ // copy argument offset
+ GLMessage_DataType *arg_offset = glmsg.add_args();
+ arg_offset->set_isarray(false);
+ arg_offset->set_type(GLMessage::DataType::INT);
+ arg_offset->add_intvalue(offset);
+
+ // copy argument stride
+ GLMessage_DataType *arg_stride = glmsg.add_args();
+ arg_stride->set_isarray(false);
+ arg_stride->set_type(GLMessage::DataType::INT);
+ arg_stride->add_intvalue(stride);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glBindVertexBuffer(bindingindex, buffer, offset, stride);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glVertexAttribFormat);
+
+ // copy argument attribindex
+ GLMessage_DataType *arg_attribindex = glmsg.add_args();
+ arg_attribindex->set_isarray(false);
+ arg_attribindex->set_type(GLMessage::DataType::INT);
+ arg_attribindex->add_intvalue(attribindex);
+
+ // copy argument size
+ GLMessage_DataType *arg_size = glmsg.add_args();
+ arg_size->set_isarray(false);
+ arg_size->set_type(GLMessage::DataType::INT);
+ arg_size->add_intvalue(size);
+
+ // copy argument type
+ GLMessage_DataType *arg_type = glmsg.add_args();
+ arg_type->set_isarray(false);
+ arg_type->set_type(GLMessage::DataType::ENUM);
+ arg_type->add_intvalue((int)type);
+
+ // copy argument normalized
+ GLMessage_DataType *arg_normalized = glmsg.add_args();
+ arg_normalized->set_isarray(false);
+ arg_normalized->set_type(GLMessage::DataType::BOOL);
+ arg_normalized->add_boolvalue(normalized);
+
+ // copy argument relativeoffset
+ GLMessage_DataType *arg_relativeoffset = glmsg.add_args();
+ arg_relativeoffset->set_isarray(false);
+ arg_relativeoffset->set_type(GLMessage::DataType::INT);
+ arg_relativeoffset->add_intvalue(relativeoffset);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glVertexAttribFormat(attribindex, size, type, normalized, relativeoffset);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glVertexAttribIFormat);
+
+ // copy argument attribindex
+ GLMessage_DataType *arg_attribindex = glmsg.add_args();
+ arg_attribindex->set_isarray(false);
+ arg_attribindex->set_type(GLMessage::DataType::INT);
+ arg_attribindex->add_intvalue(attribindex);
+
+ // copy argument size
+ GLMessage_DataType *arg_size = glmsg.add_args();
+ arg_size->set_isarray(false);
+ arg_size->set_type(GLMessage::DataType::INT);
+ arg_size->add_intvalue(size);
+
+ // copy argument type
+ GLMessage_DataType *arg_type = glmsg.add_args();
+ arg_type->set_isarray(false);
+ arg_type->set_type(GLMessage::DataType::ENUM);
+ arg_type->add_intvalue((int)type);
+
+ // copy argument relativeoffset
+ GLMessage_DataType *arg_relativeoffset = glmsg.add_args();
+ arg_relativeoffset->set_isarray(false);
+ arg_relativeoffset->set_type(GLMessage::DataType::INT);
+ arg_relativeoffset->add_intvalue(relativeoffset);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glVertexAttribIFormat(attribindex, size, type, relativeoffset);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glVertexAttribBinding(GLuint attribindex, GLuint bindingindex) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glVertexAttribBinding);
+
+ // copy argument attribindex
+ GLMessage_DataType *arg_attribindex = glmsg.add_args();
+ arg_attribindex->set_isarray(false);
+ arg_attribindex->set_type(GLMessage::DataType::INT);
+ arg_attribindex->add_intvalue(attribindex);
+
+ // copy argument bindingindex
+ GLMessage_DataType *arg_bindingindex = glmsg.add_args();
+ arg_bindingindex->set_isarray(false);
+ arg_bindingindex->set_type(GLMessage::DataType::INT);
+ arg_bindingindex->add_intvalue(bindingindex);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glVertexAttribBinding(attribindex, bindingindex);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glVertexBindingDivisor(GLuint bindingindex, GLuint divisor) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glVertexBindingDivisor);
+
+ // copy argument bindingindex
+ GLMessage_DataType *arg_bindingindex = glmsg.add_args();
+ arg_bindingindex->set_isarray(false);
+ arg_bindingindex->set_type(GLMessage::DataType::INT);
+ arg_bindingindex->add_intvalue(bindingindex);
+
+ // copy argument divisor
+ GLMessage_DataType *arg_divisor = glmsg.add_args();
+ arg_divisor->set_isarray(false);
+ arg_divisor->set_type(GLMessage::DataType::INT);
+ arg_divisor->add_intvalue(divisor);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glVertexBindingDivisor(bindingindex, divisor);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
// Definitions for GL2Ext APIs
@@ -13095,6 +16200,118 @@ void GLTrace_glGetSyncivAPPLE(GLsync sync, GLenum pname, GLsizei bufSize, GLsize
glContext->traceGLMessage(&glmsg);
}
+void GLTrace_glCopyImageSubDataEXT(GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glCopyImageSubDataEXT);
+
+ // copy argument srcName
+ GLMessage_DataType *arg_srcName = glmsg.add_args();
+ arg_srcName->set_isarray(false);
+ arg_srcName->set_type(GLMessage::DataType::INT);
+ arg_srcName->add_intvalue(srcName);
+
+ // copy argument srcTarget
+ GLMessage_DataType *arg_srcTarget = glmsg.add_args();
+ arg_srcTarget->set_isarray(false);
+ arg_srcTarget->set_type(GLMessage::DataType::ENUM);
+ arg_srcTarget->add_intvalue((int)srcTarget);
+
+ // copy argument srcLevel
+ GLMessage_DataType *arg_srcLevel = glmsg.add_args();
+ arg_srcLevel->set_isarray(false);
+ arg_srcLevel->set_type(GLMessage::DataType::INT);
+ arg_srcLevel->add_intvalue(srcLevel);
+
+ // copy argument srcX
+ GLMessage_DataType *arg_srcX = glmsg.add_args();
+ arg_srcX->set_isarray(false);
+ arg_srcX->set_type(GLMessage::DataType::INT);
+ arg_srcX->add_intvalue(srcX);
+
+ // copy argument srcY
+ GLMessage_DataType *arg_srcY = glmsg.add_args();
+ arg_srcY->set_isarray(false);
+ arg_srcY->set_type(GLMessage::DataType::INT);
+ arg_srcY->add_intvalue(srcY);
+
+ // copy argument srcZ
+ GLMessage_DataType *arg_srcZ = glmsg.add_args();
+ arg_srcZ->set_isarray(false);
+ arg_srcZ->set_type(GLMessage::DataType::INT);
+ arg_srcZ->add_intvalue(srcZ);
+
+ // copy argument dstName
+ GLMessage_DataType *arg_dstName = glmsg.add_args();
+ arg_dstName->set_isarray(false);
+ arg_dstName->set_type(GLMessage::DataType::INT);
+ arg_dstName->add_intvalue(dstName);
+
+ // copy argument dstTarget
+ GLMessage_DataType *arg_dstTarget = glmsg.add_args();
+ arg_dstTarget->set_isarray(false);
+ arg_dstTarget->set_type(GLMessage::DataType::ENUM);
+ arg_dstTarget->add_intvalue((int)dstTarget);
+
+ // copy argument dstLevel
+ GLMessage_DataType *arg_dstLevel = glmsg.add_args();
+ arg_dstLevel->set_isarray(false);
+ arg_dstLevel->set_type(GLMessage::DataType::INT);
+ arg_dstLevel->add_intvalue(dstLevel);
+
+ // copy argument dstX
+ GLMessage_DataType *arg_dstX = glmsg.add_args();
+ arg_dstX->set_isarray(false);
+ arg_dstX->set_type(GLMessage::DataType::INT);
+ arg_dstX->add_intvalue(dstX);
+
+ // copy argument dstY
+ GLMessage_DataType *arg_dstY = glmsg.add_args();
+ arg_dstY->set_isarray(false);
+ arg_dstY->set_type(GLMessage::DataType::INT);
+ arg_dstY->add_intvalue(dstY);
+
+ // copy argument dstZ
+ GLMessage_DataType *arg_dstZ = glmsg.add_args();
+ arg_dstZ->set_isarray(false);
+ arg_dstZ->set_type(GLMessage::DataType::INT);
+ arg_dstZ->add_intvalue(dstZ);
+
+ // copy argument srcWidth
+ GLMessage_DataType *arg_srcWidth = glmsg.add_args();
+ arg_srcWidth->set_isarray(false);
+ arg_srcWidth->set_type(GLMessage::DataType::INT);
+ arg_srcWidth->add_intvalue(srcWidth);
+
+ // copy argument srcHeight
+ GLMessage_DataType *arg_srcHeight = glmsg.add_args();
+ arg_srcHeight->set_isarray(false);
+ arg_srcHeight->set_type(GLMessage::DataType::INT);
+ arg_srcHeight->add_intvalue(srcHeight);
+
+ // copy argument srcDepth
+ GLMessage_DataType *arg_srcDepth = glmsg.add_args();
+ arg_srcDepth->set_isarray(false);
+ arg_srcDepth->set_type(GLMessage::DataType::INT);
+ arg_srcDepth->add_intvalue(srcDepth);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glCopyImageSubDataEXT(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
void GLTrace_glLabelObjectEXT(GLenum type, GLuint object, GLsizei length, const GLchar * label) {
GLMessage glmsg;
GLTraceContext *glContext = getGLTraceContext();
@@ -13771,6 +16988,334 @@ void GLTrace_glDrawBuffersEXT(GLsizei n, const GLenum * bufs) {
glContext->traceGLMessage(&glmsg);
}
+void GLTrace_glEnableiEXT(GLenum target, GLuint index) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glEnableiEXT);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument index
+ GLMessage_DataType *arg_index = glmsg.add_args();
+ arg_index->set_isarray(false);
+ arg_index->set_type(GLMessage::DataType::INT);
+ arg_index->add_intvalue(index);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glEnableiEXT(target, index);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glDisableiEXT(GLenum target, GLuint index) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glDisableiEXT);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument index
+ GLMessage_DataType *arg_index = glmsg.add_args();
+ arg_index->set_isarray(false);
+ arg_index->set_type(GLMessage::DataType::INT);
+ arg_index->add_intvalue(index);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glDisableiEXT(target, index);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glBlendEquationiEXT(GLuint buf, GLenum mode) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glBlendEquationiEXT);
+
+ // copy argument buf
+ GLMessage_DataType *arg_buf = glmsg.add_args();
+ arg_buf->set_isarray(false);
+ arg_buf->set_type(GLMessage::DataType::INT);
+ arg_buf->add_intvalue(buf);
+
+ // copy argument mode
+ GLMessage_DataType *arg_mode = glmsg.add_args();
+ arg_mode->set_isarray(false);
+ arg_mode->set_type(GLMessage::DataType::ENUM);
+ arg_mode->add_intvalue((int)mode);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glBlendEquationiEXT(buf, mode);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glBlendEquationSeparateiEXT(GLuint buf, GLenum modeRGB, GLenum modeAlpha) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glBlendEquationSeparateiEXT);
+
+ // copy argument buf
+ GLMessage_DataType *arg_buf = glmsg.add_args();
+ arg_buf->set_isarray(false);
+ arg_buf->set_type(GLMessage::DataType::INT);
+ arg_buf->add_intvalue(buf);
+
+ // copy argument modeRGB
+ GLMessage_DataType *arg_modeRGB = glmsg.add_args();
+ arg_modeRGB->set_isarray(false);
+ arg_modeRGB->set_type(GLMessage::DataType::ENUM);
+ arg_modeRGB->add_intvalue((int)modeRGB);
+
+ // copy argument modeAlpha
+ GLMessage_DataType *arg_modeAlpha = glmsg.add_args();
+ arg_modeAlpha->set_isarray(false);
+ arg_modeAlpha->set_type(GLMessage::DataType::ENUM);
+ arg_modeAlpha->add_intvalue((int)modeAlpha);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glBlendEquationSeparateiEXT(buf, modeRGB, modeAlpha);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glBlendFunciEXT(GLuint buf, GLenum src, GLenum dst) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glBlendFunciEXT);
+
+ // copy argument buf
+ GLMessage_DataType *arg_buf = glmsg.add_args();
+ arg_buf->set_isarray(false);
+ arg_buf->set_type(GLMessage::DataType::INT);
+ arg_buf->add_intvalue(buf);
+
+ // copy argument src
+ GLMessage_DataType *arg_src = glmsg.add_args();
+ arg_src->set_isarray(false);
+ arg_src->set_type(GLMessage::DataType::ENUM);
+ arg_src->add_intvalue((int)src);
+
+ // copy argument dst
+ GLMessage_DataType *arg_dst = glmsg.add_args();
+ arg_dst->set_isarray(false);
+ arg_dst->set_type(GLMessage::DataType::ENUM);
+ arg_dst->add_intvalue((int)dst);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glBlendFunciEXT(buf, src, dst);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glBlendFuncSeparateiEXT(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glBlendFuncSeparateiEXT);
+
+ // copy argument buf
+ GLMessage_DataType *arg_buf = glmsg.add_args();
+ arg_buf->set_isarray(false);
+ arg_buf->set_type(GLMessage::DataType::INT);
+ arg_buf->add_intvalue(buf);
+
+ // copy argument srcRGB
+ GLMessage_DataType *arg_srcRGB = glmsg.add_args();
+ arg_srcRGB->set_isarray(false);
+ arg_srcRGB->set_type(GLMessage::DataType::ENUM);
+ arg_srcRGB->add_intvalue((int)srcRGB);
+
+ // copy argument dstRGB
+ GLMessage_DataType *arg_dstRGB = glmsg.add_args();
+ arg_dstRGB->set_isarray(false);
+ arg_dstRGB->set_type(GLMessage::DataType::ENUM);
+ arg_dstRGB->add_intvalue((int)dstRGB);
+
+ // copy argument srcAlpha
+ GLMessage_DataType *arg_srcAlpha = glmsg.add_args();
+ arg_srcAlpha->set_isarray(false);
+ arg_srcAlpha->set_type(GLMessage::DataType::ENUM);
+ arg_srcAlpha->add_intvalue((int)srcAlpha);
+
+ // copy argument dstAlpha
+ GLMessage_DataType *arg_dstAlpha = glmsg.add_args();
+ arg_dstAlpha->set_isarray(false);
+ arg_dstAlpha->set_type(GLMessage::DataType::ENUM);
+ arg_dstAlpha->add_intvalue((int)dstAlpha);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glBlendFuncSeparateiEXT(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glColorMaskiEXT(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glColorMaskiEXT);
+
+ // copy argument index
+ GLMessage_DataType *arg_index = glmsg.add_args();
+ arg_index->set_isarray(false);
+ arg_index->set_type(GLMessage::DataType::INT);
+ arg_index->add_intvalue(index);
+
+ // copy argument r
+ GLMessage_DataType *arg_r = glmsg.add_args();
+ arg_r->set_isarray(false);
+ arg_r->set_type(GLMessage::DataType::BOOL);
+ arg_r->add_boolvalue(r);
+
+ // copy argument g
+ GLMessage_DataType *arg_g = glmsg.add_args();
+ arg_g->set_isarray(false);
+ arg_g->set_type(GLMessage::DataType::BOOL);
+ arg_g->add_boolvalue(g);
+
+ // copy argument b
+ GLMessage_DataType *arg_b = glmsg.add_args();
+ arg_b->set_isarray(false);
+ arg_b->set_type(GLMessage::DataType::BOOL);
+ arg_b->add_boolvalue(b);
+
+ // copy argument a
+ GLMessage_DataType *arg_a = glmsg.add_args();
+ arg_a->set_isarray(false);
+ arg_a->set_type(GLMessage::DataType::BOOL);
+ arg_a->add_boolvalue(a);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glColorMaskiEXT(index, r, g, b, a);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+GLboolean GLTrace_glIsEnablediEXT(GLenum target, GLuint index) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glIsEnablediEXT);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument index
+ GLMessage_DataType *arg_index = glmsg.add_args();
+ arg_index->set_isarray(false);
+ arg_index->set_type(GLMessage::DataType::INT);
+ arg_index->add_intvalue(index);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ GLboolean retValue = glContext->hooks->gl.glIsEnablediEXT(target, index);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ // set return value
+ GLMessage_DataType *rt = glmsg.mutable_returnvalue();
+ rt->set_isarray(false);
+ rt->set_type(GLMessage::DataType::BOOL);
+ rt->add_boolvalue(retValue);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+
+ return retValue;
+}
+
void GLTrace_glDrawArraysInstancedEXT(GLenum mode, GLint start, GLsizei count, GLsizei primcount) {
GLMessage glmsg;
GLTraceContext *glContext = getGLTraceContext();
@@ -13870,6 +17415,52 @@ void GLTrace_glDrawElementsInstancedEXT(GLenum mode, GLsizei count, GLenum type,
glContext->traceGLMessage(&glmsg);
}
+void GLTrace_glFramebufferTextureEXT(GLenum target, GLenum attachment, GLuint texture, GLint level) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glFramebufferTextureEXT);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument attachment
+ GLMessage_DataType *arg_attachment = glmsg.add_args();
+ arg_attachment->set_isarray(false);
+ arg_attachment->set_type(GLMessage::DataType::ENUM);
+ arg_attachment->add_intvalue((int)attachment);
+
+ // copy argument texture
+ GLMessage_DataType *arg_texture = glmsg.add_args();
+ arg_texture->set_isarray(false);
+ arg_texture->set_type(GLMessage::DataType::INT);
+ arg_texture->add_intvalue(texture);
+
+ // copy argument level
+ GLMessage_DataType *arg_level = glmsg.add_args();
+ arg_level->set_isarray(false);
+ arg_level->set_type(GLMessage::DataType::INT);
+ arg_level->add_intvalue(level);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glFramebufferTextureEXT(target, attachment, texture, level);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
void GLTrace_glVertexAttribDivisorEXT(GLuint index, GLuint divisor) {
GLMessage glmsg;
GLTraceContext *glContext = getGLTraceContext();
@@ -14328,6 +17919,76 @@ void GLTrace_glGetIntegeri_vEXT(GLenum target, GLuint index, GLint * data) {
glContext->traceGLMessage(&glmsg);
}
+void GLTrace_glPrimitiveBoundingBoxEXT(GLfloat minX, GLfloat minY, GLfloat minZ, GLfloat minW, GLfloat maxX, GLfloat maxY, GLfloat maxZ, GLfloat maxW) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glPrimitiveBoundingBoxEXT);
+
+ // copy argument minX
+ GLMessage_DataType *arg_minX = glmsg.add_args();
+ arg_minX->set_isarray(false);
+ arg_minX->set_type(GLMessage::DataType::FLOAT);
+ arg_minX->add_floatvalue(minX);
+
+ // copy argument minY
+ GLMessage_DataType *arg_minY = glmsg.add_args();
+ arg_minY->set_isarray(false);
+ arg_minY->set_type(GLMessage::DataType::FLOAT);
+ arg_minY->add_floatvalue(minY);
+
+ // copy argument minZ
+ GLMessage_DataType *arg_minZ = glmsg.add_args();
+ arg_minZ->set_isarray(false);
+ arg_minZ->set_type(GLMessage::DataType::FLOAT);
+ arg_minZ->add_floatvalue(minZ);
+
+ // copy argument minW
+ GLMessage_DataType *arg_minW = glmsg.add_args();
+ arg_minW->set_isarray(false);
+ arg_minW->set_type(GLMessage::DataType::FLOAT);
+ arg_minW->add_floatvalue(minW);
+
+ // copy argument maxX
+ GLMessage_DataType *arg_maxX = glmsg.add_args();
+ arg_maxX->set_isarray(false);
+ arg_maxX->set_type(GLMessage::DataType::FLOAT);
+ arg_maxX->add_floatvalue(maxX);
+
+ // copy argument maxY
+ GLMessage_DataType *arg_maxY = glmsg.add_args();
+ arg_maxY->set_isarray(false);
+ arg_maxY->set_type(GLMessage::DataType::FLOAT);
+ arg_maxY->add_floatvalue(maxY);
+
+ // copy argument maxZ
+ GLMessage_DataType *arg_maxZ = glmsg.add_args();
+ arg_maxZ->set_isarray(false);
+ arg_maxZ->set_type(GLMessage::DataType::FLOAT);
+ arg_maxZ->add_floatvalue(maxZ);
+
+ // copy argument maxW
+ GLMessage_DataType *arg_maxW = glmsg.add_args();
+ arg_maxW->set_isarray(false);
+ arg_maxW->set_type(GLMessage::DataType::FLOAT);
+ arg_maxW->add_floatvalue(maxW);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glPrimitiveBoundingBoxEXT(minX, minY, minZ, minW, maxX, maxY, maxZ, maxW);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
GLenum GLTrace_glGetGraphicsResetStatusEXT(void) {
GLMessage glmsg;
GLTraceContext *glContext = getGLTraceContext();
@@ -16566,6 +20227,460 @@ void GLTrace_glProgramUniformMatrix4x3fvEXT(GLuint program, GLint location, GLsi
glContext->traceGLMessage(&glmsg);
}
+void GLTrace_glPatchParameteriEXT(GLenum pname, GLint value) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glPatchParameteriEXT);
+
+ // copy argument pname
+ GLMessage_DataType *arg_pname = glmsg.add_args();
+ arg_pname->set_isarray(false);
+ arg_pname->set_type(GLMessage::DataType::ENUM);
+ arg_pname->add_intvalue((int)pname);
+
+ // copy argument value
+ GLMessage_DataType *arg_value = glmsg.add_args();
+ arg_value->set_isarray(false);
+ arg_value->set_type(GLMessage::DataType::INT);
+ arg_value->add_intvalue(value);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glPatchParameteriEXT(pname, value);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glTexParameterIivEXT(GLenum target, GLenum pname, const GLint * params) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glTexParameterIivEXT);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument pname
+ GLMessage_DataType *arg_pname = glmsg.add_args();
+ arg_pname->set_isarray(false);
+ arg_pname->set_type(GLMessage::DataType::ENUM);
+ arg_pname->add_intvalue((int)pname);
+
+ // copy argument params
+ GLMessage_DataType *arg_params = glmsg.add_args();
+ arg_params->set_isarray(false);
+ arg_params->set_type(GLMessage::DataType::INT64);
+ arg_params->add_int64value((uintptr_t)params);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glTexParameterIivEXT(target, pname, params);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) params,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glTexParameterIuivEXT(GLenum target, GLenum pname, const GLuint * params) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glTexParameterIuivEXT);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument pname
+ GLMessage_DataType *arg_pname = glmsg.add_args();
+ arg_pname->set_isarray(false);
+ arg_pname->set_type(GLMessage::DataType::ENUM);
+ arg_pname->add_intvalue((int)pname);
+
+ // copy argument params
+ GLMessage_DataType *arg_params = glmsg.add_args();
+ arg_params->set_isarray(false);
+ arg_params->set_type(GLMessage::DataType::INT64);
+ arg_params->add_int64value((uintptr_t)params);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glTexParameterIuivEXT(target, pname, params);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) params,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glGetTexParameterIivEXT(GLenum target, GLenum pname, GLint * params) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGetTexParameterIivEXT);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument pname
+ GLMessage_DataType *arg_pname = glmsg.add_args();
+ arg_pname->set_isarray(false);
+ arg_pname->set_type(GLMessage::DataType::ENUM);
+ arg_pname->add_intvalue((int)pname);
+
+ // copy argument params
+ GLMessage_DataType *arg_params = glmsg.add_args();
+ arg_params->set_isarray(false);
+ arg_params->set_type(GLMessage::DataType::INT64);
+ arg_params->add_int64value((uintptr_t)params);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glGetTexParameterIivEXT(target, pname, params);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) params,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glGetTexParameterIuivEXT(GLenum target, GLenum pname, GLuint * params) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGetTexParameterIuivEXT);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument pname
+ GLMessage_DataType *arg_pname = glmsg.add_args();
+ arg_pname->set_isarray(false);
+ arg_pname->set_type(GLMessage::DataType::ENUM);
+ arg_pname->add_intvalue((int)pname);
+
+ // copy argument params
+ GLMessage_DataType *arg_params = glmsg.add_args();
+ arg_params->set_isarray(false);
+ arg_params->set_type(GLMessage::DataType::INT64);
+ arg_params->add_int64value((uintptr_t)params);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glGetTexParameterIuivEXT(target, pname, params);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) params,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glSamplerParameterIivEXT(GLuint sampler, GLenum pname, const GLint * param) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glSamplerParameterIivEXT);
+
+ // copy argument sampler
+ GLMessage_DataType *arg_sampler = glmsg.add_args();
+ arg_sampler->set_isarray(false);
+ arg_sampler->set_type(GLMessage::DataType::INT);
+ arg_sampler->add_intvalue(sampler);
+
+ // copy argument pname
+ GLMessage_DataType *arg_pname = glmsg.add_args();
+ arg_pname->set_isarray(false);
+ arg_pname->set_type(GLMessage::DataType::ENUM);
+ arg_pname->add_intvalue((int)pname);
+
+ // copy argument param
+ GLMessage_DataType *arg_param = glmsg.add_args();
+ arg_param->set_isarray(false);
+ arg_param->set_type(GLMessage::DataType::INT64);
+ arg_param->add_int64value((uintptr_t)param);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glSamplerParameterIivEXT(sampler, pname, param);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) param,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glSamplerParameterIuivEXT(GLuint sampler, GLenum pname, const GLuint * param) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glSamplerParameterIuivEXT);
+
+ // copy argument sampler
+ GLMessage_DataType *arg_sampler = glmsg.add_args();
+ arg_sampler->set_isarray(false);
+ arg_sampler->set_type(GLMessage::DataType::INT);
+ arg_sampler->add_intvalue(sampler);
+
+ // copy argument pname
+ GLMessage_DataType *arg_pname = glmsg.add_args();
+ arg_pname->set_isarray(false);
+ arg_pname->set_type(GLMessage::DataType::ENUM);
+ arg_pname->add_intvalue((int)pname);
+
+ // copy argument param
+ GLMessage_DataType *arg_param = glmsg.add_args();
+ arg_param->set_isarray(false);
+ arg_param->set_type(GLMessage::DataType::INT64);
+ arg_param->add_int64value((uintptr_t)param);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glSamplerParameterIuivEXT(sampler, pname, param);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) param,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glGetSamplerParameterIivEXT(GLuint sampler, GLenum pname, GLint * params) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGetSamplerParameterIivEXT);
+
+ // copy argument sampler
+ GLMessage_DataType *arg_sampler = glmsg.add_args();
+ arg_sampler->set_isarray(false);
+ arg_sampler->set_type(GLMessage::DataType::INT);
+ arg_sampler->add_intvalue(sampler);
+
+ // copy argument pname
+ GLMessage_DataType *arg_pname = glmsg.add_args();
+ arg_pname->set_isarray(false);
+ arg_pname->set_type(GLMessage::DataType::ENUM);
+ arg_pname->add_intvalue((int)pname);
+
+ // copy argument params
+ GLMessage_DataType *arg_params = glmsg.add_args();
+ arg_params->set_isarray(false);
+ arg_params->set_type(GLMessage::DataType::INT64);
+ arg_params->add_int64value((uintptr_t)params);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glGetSamplerParameterIivEXT(sampler, pname, params);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) params,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glGetSamplerParameterIuivEXT(GLuint sampler, GLenum pname, GLuint * params) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glGetSamplerParameterIuivEXT);
+
+ // copy argument sampler
+ GLMessage_DataType *arg_sampler = glmsg.add_args();
+ arg_sampler->set_isarray(false);
+ arg_sampler->set_type(GLMessage::DataType::INT);
+ arg_sampler->add_intvalue(sampler);
+
+ // copy argument pname
+ GLMessage_DataType *arg_pname = glmsg.add_args();
+ arg_pname->set_isarray(false);
+ arg_pname->set_type(GLMessage::DataType::ENUM);
+ arg_pname->add_intvalue((int)pname);
+
+ // copy argument params
+ GLMessage_DataType *arg_params = glmsg.add_args();
+ arg_params->set_isarray(false);
+ arg_params->set_type(GLMessage::DataType::INT64);
+ arg_params->add_int64value((uintptr_t)params);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glGetSamplerParameterIuivEXT(sampler, pname, params);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ (void *) params,
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glTexBufferEXT(GLenum target, GLenum internalformat, GLuint buffer) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glTexBufferEXT);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument internalformat
+ GLMessage_DataType *arg_internalformat = glmsg.add_args();
+ arg_internalformat->set_isarray(false);
+ arg_internalformat->set_type(GLMessage::DataType::ENUM);
+ arg_internalformat->add_intvalue((int)internalformat);
+
+ // copy argument buffer
+ GLMessage_DataType *arg_buffer = glmsg.add_args();
+ arg_buffer->set_isarray(false);
+ arg_buffer->set_type(GLMessage::DataType::INT);
+ arg_buffer->add_intvalue(buffer);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glTexBufferEXT(target, internalformat, buffer);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
+void GLTrace_glTexBufferRangeEXT(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glTexBufferRangeEXT);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument internalformat
+ GLMessage_DataType *arg_internalformat = glmsg.add_args();
+ arg_internalformat->set_isarray(false);
+ arg_internalformat->set_type(GLMessage::DataType::ENUM);
+ arg_internalformat->add_intvalue((int)internalformat);
+
+ // copy argument buffer
+ GLMessage_DataType *arg_buffer = glmsg.add_args();
+ arg_buffer->set_isarray(false);
+ arg_buffer->set_type(GLMessage::DataType::INT);
+ arg_buffer->add_intvalue(buffer);
+
+ // copy argument offset
+ GLMessage_DataType *arg_offset = glmsg.add_args();
+ arg_offset->set_isarray(false);
+ arg_offset->set_type(GLMessage::DataType::INT);
+ arg_offset->add_intvalue(offset);
+
+ // copy argument size
+ GLMessage_DataType *arg_size = glmsg.add_args();
+ arg_size->set_isarray(false);
+ arg_size->set_type(GLMessage::DataType::INT);
+ arg_size->add_intvalue(size);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glTexBufferRangeEXT(target, internalformat, buffer, offset, size);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
void GLTrace_glTexStorage1DEXT(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width) {
GLMessage glmsg;
GLTraceContext *glContext = getGLTraceContext();
@@ -16896,6 +21011,76 @@ void GLTrace_glTextureStorage3DEXT(GLuint texture, GLenum target, GLsizei levels
glContext->traceGLMessage(&glmsg);
}
+void GLTrace_glTextureViewEXT(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers) {
+ GLMessage glmsg;
+ GLTraceContext *glContext = getGLTraceContext();
+
+ glmsg.set_function(GLMessage::glTextureViewEXT);
+
+ // copy argument texture
+ GLMessage_DataType *arg_texture = glmsg.add_args();
+ arg_texture->set_isarray(false);
+ arg_texture->set_type(GLMessage::DataType::INT);
+ arg_texture->add_intvalue(texture);
+
+ // copy argument target
+ GLMessage_DataType *arg_target = glmsg.add_args();
+ arg_target->set_isarray(false);
+ arg_target->set_type(GLMessage::DataType::ENUM);
+ arg_target->add_intvalue((int)target);
+
+ // copy argument origtexture
+ GLMessage_DataType *arg_origtexture = glmsg.add_args();
+ arg_origtexture->set_isarray(false);
+ arg_origtexture->set_type(GLMessage::DataType::INT);
+ arg_origtexture->add_intvalue(origtexture);
+
+ // copy argument internalformat
+ GLMessage_DataType *arg_internalformat = glmsg.add_args();
+ arg_internalformat->set_isarray(false);
+ arg_internalformat->set_type(GLMessage::DataType::ENUM);
+ arg_internalformat->add_intvalue((int)internalformat);
+
+ // copy argument minlevel
+ GLMessage_DataType *arg_minlevel = glmsg.add_args();
+ arg_minlevel->set_isarray(false);
+ arg_minlevel->set_type(GLMessage::DataType::INT);
+ arg_minlevel->add_intvalue(minlevel);
+
+ // copy argument numlevels
+ GLMessage_DataType *arg_numlevels = glmsg.add_args();
+ arg_numlevels->set_isarray(false);
+ arg_numlevels->set_type(GLMessage::DataType::INT);
+ arg_numlevels->add_intvalue(numlevels);
+
+ // copy argument minlayer
+ GLMessage_DataType *arg_minlayer = glmsg.add_args();
+ arg_minlayer->set_isarray(false);
+ arg_minlayer->set_type(GLMessage::DataType::INT);
+ arg_minlayer->add_intvalue(minlayer);
+
+ // copy argument numlayers
+ GLMessage_DataType *arg_numlayers = glmsg.add_args();
+ arg_numlayers->set_isarray(false);
+ arg_numlayers->set_type(GLMessage::DataType::INT);
+ arg_numlayers->add_intvalue(numlayers);
+
+ // call function
+ nsecs_t wallStartTime = systemTime(SYSTEM_TIME_MONOTONIC);
+ nsecs_t threadStartTime = systemTime(SYSTEM_TIME_THREAD);
+ glContext->hooks->gl.glTextureViewEXT(texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers);
+ nsecs_t threadEndTime = systemTime(SYSTEM_TIME_THREAD);
+ nsecs_t wallEndTime = systemTime(SYSTEM_TIME_MONOTONIC);
+
+ void *pointerArgs[] = {
+ };
+
+ fixupGLMessage(glContext, wallStartTime, wallEndTime,
+ threadStartTime, threadEndTime,
+ &glmsg, pointerArgs);
+ glContext->traceGLMessage(&glmsg);
+}
+
void GLTrace_glRenderbufferStorageMultisampleIMG(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height) {
GLMessage glmsg;
GLTraceContext *glContext = getGLTraceContext();
diff --git a/opengl/libs/GLES_trace/src/gltrace_api.h b/opengl/libs/GLES_trace/src/gltrace_api.h
index 3530579..a9ca3c4 100644
--- a/opengl/libs/GLES_trace/src/gltrace_api.h
+++ b/opengl/libs/GLES_trace/src/gltrace_api.h
@@ -267,6 +267,74 @@ void GLTrace_glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, c
void GLTrace_glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
void GLTrace_glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
void GLTrace_glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint * params);
+void GLTrace_glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z);
+void GLTrace_glDispatchComputeIndirect(GLintptr indirect);
+void GLTrace_glDrawArraysIndirect(GLenum mode, const void * indirect);
+void GLTrace_glDrawElementsIndirect(GLenum mode, GLenum type, const void * indirect);
+void GLTrace_glFramebufferParameteri(GLenum target, GLenum pname, GLint param);
+void GLTrace_glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint * params);
+void GLTrace_glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint * params);
+GLuint GLTrace_glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar * name);
+void GLTrace_glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei * length, GLchar * name);
+void GLTrace_glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum * props, GLsizei bufSize, GLsizei * length, GLint * params);
+GLint GLTrace_glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar * name);
+void GLTrace_glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program);
+void GLTrace_glActiveShaderProgram(GLuint pipeline, GLuint program);
+GLuint GLTrace_glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar *const* strings);
+void GLTrace_glBindProgramPipeline(GLuint pipeline);
+void GLTrace_glDeleteProgramPipelines(GLsizei n, const GLuint * pipelines);
+void GLTrace_glGenProgramPipelines(GLsizei n, GLuint * pipelines);
+GLboolean GLTrace_glIsProgramPipeline(GLuint pipeline);
+void GLTrace_glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint * params);
+void GLTrace_glProgramUniform1i(GLuint program, GLint location, GLint v0);
+void GLTrace_glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1);
+void GLTrace_glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
+void GLTrace_glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+void GLTrace_glProgramUniform1ui(GLuint program, GLint location, GLuint v0);
+void GLTrace_glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1);
+void GLTrace_glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
+void GLTrace_glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+void GLTrace_glProgramUniform1f(GLuint program, GLint location, GLfloat v0);
+void GLTrace_glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1);
+void GLTrace_glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+void GLTrace_glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+void GLTrace_glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint * value);
+void GLTrace_glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint * value);
+void GLTrace_glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint * value);
+void GLTrace_glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint * value);
+void GLTrace_glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint * value);
+void GLTrace_glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint * value);
+void GLTrace_glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint * value);
+void GLTrace_glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint * value);
+void GLTrace_glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat * value);
+void GLTrace_glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat * value);
+void GLTrace_glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat * value);
+void GLTrace_glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat * value);
+void GLTrace_glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
+void GLTrace_glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
+void GLTrace_glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
+void GLTrace_glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
+void GLTrace_glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
+void GLTrace_glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
+void GLTrace_glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
+void GLTrace_glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
+void GLTrace_glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
+void GLTrace_glValidateProgramPipeline(GLuint pipeline);
+void GLTrace_glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei * length, GLchar * infoLog);
+void GLTrace_glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
+void GLTrace_glGetBooleani_v(GLenum target, GLuint index, GLboolean * data);
+void GLTrace_glMemoryBarrier(GLbitfield barriers);
+void GLTrace_glMemoryBarrierByRegion(GLbitfield barriers);
+void GLTrace_glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
+void GLTrace_glGetMultisamplefv(GLenum pname, GLuint index, GLfloat * val);
+void GLTrace_glSampleMaski(GLuint maskNumber, GLbitfield mask);
+void GLTrace_glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint * params);
+void GLTrace_glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat * params);
+void GLTrace_glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
+void GLTrace_glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
+void GLTrace_glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
+void GLTrace_glVertexAttribBinding(GLuint attribindex, GLuint bindingindex);
+void GLTrace_glVertexBindingDivisor(GLuint bindingindex, GLuint divisor);
// Declarations for GL2Ext APIs
@@ -328,6 +396,7 @@ GLenum GLTrace_glClientWaitSyncAPPLE(GLsync sync, GLbitfield flags, GLuint64 tim
void GLTrace_glWaitSyncAPPLE(GLsync sync, GLbitfield flags, GLuint64 timeout);
void GLTrace_glGetInteger64vAPPLE(GLenum pname, GLint64 * params);
void GLTrace_glGetSyncivAPPLE(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei * length, GLint * values);
+void GLTrace_glCopyImageSubDataEXT(GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth);
void GLTrace_glLabelObjectEXT(GLenum type, GLuint object, GLsizei length, const GLchar * label);
void GLTrace_glGetObjectLabelEXT(GLenum type, GLuint object, GLsizei bufSize, GLsizei * length, GLchar * label);
void GLTrace_glInsertEventMarkerEXT(GLsizei length, const GLchar * marker);
@@ -346,8 +415,17 @@ void GLTrace_glGetQueryObjectuivEXT(GLuint id, GLenum pname, GLuint * params);
void GLTrace_glGetQueryObjecti64vEXT(GLuint id, GLenum pname, GLint64 * params);
void GLTrace_glGetQueryObjectui64vEXT(GLuint id, GLenum pname, GLuint64 * params);
void GLTrace_glDrawBuffersEXT(GLsizei n, const GLenum * bufs);
+void GLTrace_glEnableiEXT(GLenum target, GLuint index);
+void GLTrace_glDisableiEXT(GLenum target, GLuint index);
+void GLTrace_glBlendEquationiEXT(GLuint buf, GLenum mode);
+void GLTrace_glBlendEquationSeparateiEXT(GLuint buf, GLenum modeRGB, GLenum modeAlpha);
+void GLTrace_glBlendFunciEXT(GLuint buf, GLenum src, GLenum dst);
+void GLTrace_glBlendFuncSeparateiEXT(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
+void GLTrace_glColorMaskiEXT(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
+GLboolean GLTrace_glIsEnablediEXT(GLenum target, GLuint index);
void GLTrace_glDrawArraysInstancedEXT(GLenum mode, GLint start, GLsizei count, GLsizei primcount);
void GLTrace_glDrawElementsInstancedEXT(GLenum mode, GLsizei count, GLenum type, const void * indices, GLsizei primcount);
+void GLTrace_glFramebufferTextureEXT(GLenum target, GLenum attachment, GLuint texture, GLint level);
void GLTrace_glVertexAttribDivisorEXT(GLuint index, GLuint divisor);
void * GLTrace_glMapBufferRangeEXT(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
void GLTrace_glFlushMappedBufferRangeEXT(GLenum target, GLintptr offset, GLsizeiptr length);
@@ -358,6 +436,7 @@ void GLTrace_glFramebufferTexture2DMultisampleEXT(GLenum target, GLenum attachme
void GLTrace_glReadBufferIndexedEXT(GLenum src, GLint index);
void GLTrace_glDrawBuffersIndexedEXT(GLint n, const GLenum * location, const GLint * indices);
void GLTrace_glGetIntegeri_vEXT(GLenum target, GLuint index, GLint * data);
+void GLTrace_glPrimitiveBoundingBoxEXT(GLfloat minX, GLfloat minY, GLfloat minZ, GLfloat minW, GLfloat maxX, GLfloat maxY, GLfloat maxZ, GLfloat maxW);
GLenum GLTrace_glGetGraphicsResetStatusEXT(void);
void GLTrace_glReadnPixelsEXT(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void * data);
void GLTrace_glGetnUniformfvEXT(GLuint program, GLint location, GLsizei bufSize, GLfloat * params);
@@ -406,12 +485,24 @@ void GLTrace_glProgramUniformMatrix2x4fvEXT(GLuint program, GLint location, GLsi
void GLTrace_glProgramUniformMatrix4x2fvEXT(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
void GLTrace_glProgramUniformMatrix3x4fvEXT(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
void GLTrace_glProgramUniformMatrix4x3fvEXT(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
+void GLTrace_glPatchParameteriEXT(GLenum pname, GLint value);
+void GLTrace_glTexParameterIivEXT(GLenum target, GLenum pname, const GLint * params);
+void GLTrace_glTexParameterIuivEXT(GLenum target, GLenum pname, const GLuint * params);
+void GLTrace_glGetTexParameterIivEXT(GLenum target, GLenum pname, GLint * params);
+void GLTrace_glGetTexParameterIuivEXT(GLenum target, GLenum pname, GLuint * params);
+void GLTrace_glSamplerParameterIivEXT(GLuint sampler, GLenum pname, const GLint * param);
+void GLTrace_glSamplerParameterIuivEXT(GLuint sampler, GLenum pname, const GLuint * param);
+void GLTrace_glGetSamplerParameterIivEXT(GLuint sampler, GLenum pname, GLint * params);
+void GLTrace_glGetSamplerParameterIuivEXT(GLuint sampler, GLenum pname, GLuint * params);
+void GLTrace_glTexBufferEXT(GLenum target, GLenum internalformat, GLuint buffer);
+void GLTrace_glTexBufferRangeEXT(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
void GLTrace_glTexStorage1DEXT(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
void GLTrace_glTexStorage2DEXT(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
void GLTrace_glTexStorage3DEXT(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
void GLTrace_glTextureStorage1DEXT(GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
void GLTrace_glTextureStorage2DEXT(GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
void GLTrace_glTextureStorage3DEXT(GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
+void GLTrace_glTextureViewEXT(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers);
void GLTrace_glRenderbufferStorageMultisampleIMG(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
void GLTrace_glFramebufferTexture2DMultisampleIMG(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
void GLTrace_glBeginPerfQueryINTEL(GLuint queryHandle);