/* * Copyright (C) 2011 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package android.gltrace; option optimize_for = LITE_RUNTIME; option java_package = "com.android.ide.eclipse.gltrace"; option java_outer_classname = "GLProtoBuf"; message GLMessage { enum Function { glActiveTexture = 0; glAlphaFunc = 1; glAlphaFuncx = 2; glAlphaFuncxOES = 3; glAttachShader = 4; glBeginPerfMonitorAMD = 5; glBindAttribLocation = 6; glBindBuffer = 7; glBindFramebuffer = 8; glBindFramebufferOES = 9; glBindRenderbuffer = 10; glBindRenderbufferOES = 11; glBindTexture = 12; glBindVertexArrayOES = 13; glBlendColor = 14; glBlendEquation = 15; glBlendEquationOES = 16; glBlendEquationSeparate = 17; glBlendEquationSeparateOES = 18; glBlendFunc = 19; glBlendFuncSeparate = 20; glBlendFuncSeparateOES = 21; glBufferData = 22; glBufferSubData = 23; glCheckFramebufferStatus = 24; glCheckFramebufferStatusOES = 25; glClearColor = 26; glClearColorx = 27; glClearColorxOES = 28; glClearDepthf = 29; glClearDepthfOES = 30; glClearDepthx = 31; glClearDepthxOES = 32; glClear = 33; glClearStencil = 34; glClientActiveTexture = 35; glClipPlanef = 36; glClipPlanefIMG = 37; glClipPlanefOES = 38; glClipPlanex = 39; glClipPlanexIMG = 40; glClipPlanexOES = 41; glColor4f = 42; glColor4ub = 43; glColor4x = 44; glColor4xOES = 45; glColorMask = 46; glColorPointer = 47; glCompileShader = 48; glCompressedTexImage2D = 49; glCompressedTexImage3DOES = 50; glCompressedTexSubImage2D = 51; glCompressedTexSubImage3DOES = 52; glCopyTexImage2D = 53; glCopyTexSubImage2D = 54; glCopyTexSubImage3DOES = 55; glCoverageMaskNV = 56; glCoverageOperationNV = 57; glCreateProgram = 58; glCreateShader = 59; glCullFace = 60; glCurrentPaletteMatrixOES = 61; glDeleteBuffers = 62; glDeleteFencesNV = 63; glDeleteFramebuffers = 64; glDeleteFramebuffersOES = 65; glDeletePerfMonitorsAMD = 66; glDeleteProgram = 67; glDeleteRenderbuffers = 68; glDeleteRenderbuffersOES = 69; glDeleteShader = 70; glDeleteTextures = 71; glDeleteVertexArraysOES = 72; glDepthFunc = 73; glDepthMask = 74; glDepthRangef = 75; glDepthRangefOES = 76; glDepthRangex = 77; glDepthRangexOES = 78; glDetachShader = 79; glDisableClientState = 80; glDisableDriverControlQCOM = 81; glDisable = 82; glDisableVertexAttribArray = 83; glDiscardFramebufferEXT = 84; glDrawArrays = 85; glDrawElements = 86; glDrawTexfOES = 87; glDrawTexfvOES = 88; glDrawTexiOES = 89; glDrawTexivOES = 90; glDrawTexsOES = 91; glDrawTexsvOES = 92; glDrawTexxOES = 93; glDrawTexxvOES = 94; glEGLImageTargetRenderbufferStorageOES = 95; glEGLImageTargetTexture2DOES = 96; glEnableClientState = 97; glEnableDriverControlQCOM = 98; glEnable = 99; glEnableVertexAttribArray = 100; glEndPerfMonitorAMD = 101; glEndTilingQCOM = 102; glExtGetBufferPointervQCOM = 103; glExtGetBuffersQCOM = 104; glExtGetFramebuffersQCOM = 105; glExtGetProgramBinarySourceQCOM = 106; glExtGetProgramsQCOM = 107; glExtGetRenderbuffersQCOM = 108; glExtGetShadersQCOM = 109; glExtGetTexLevelParameterivQCOM = 110; glExtGetTexSubImageQCOM = 111; glExtGetTexturesQCOM = 112; glExtIsProgramBinaryQCOM = 113; glExtTexObjectStateOverrideiQCOM = 114; glFinishFenceNV = 115; glFinish = 116; glFlush = 117; glFogf = 118; glFogfv = 119; glFogx = 120; glFogxOES = 121; glFogxv = 122; glFogxvOES = 123; glFramebufferRenderbuffer = 124; glFramebufferRenderbufferOES = 125; glFramebufferTexture2D = 126; glFramebufferTexture2DMultisampleIMG = 127; glFramebufferTexture2DOES = 128; glFramebufferTexture3DOES = 129; glFrontFace = 130; glFrustumf = 131; glFrustumfOES = 132; glFrustumx = 133; glFrustumxOES = 134; glGenBuffers = 135; glGenerateMipmap = 136; glGenerateMipmapOES = 137; glGenFencesNV = 138; glGenFramebuffers = 139; glGenFramebuffersOES = 140; glGenPerfMonitorsAMD = 141; glGenRenderbuffers = 142; glGenRenderbuffersOES = 143; glGenTextures = 144; glGenVertexArraysOES = 145; glGetActiveAttrib = 146; glGetActiveUniform = 147; glGetAttachedShaders = 148; glGetAttribLocation = 149; glGetBooleanv = 150; glGetBufferParameteriv = 151; glGetBufferPointervOES = 152; glGetClipPlanef = 153; glGetClipPlanefOES = 154; glGetClipPlanex = 155; glGetClipPlanexOES = 156; glGetDriverControlsQCOM = 157; glGetDriverControlStringQCOM = 158; glGetError = 159; glGetFenceivNV = 160; glGetFixedv = 161; glGetFixedvOES = 162; glGetFloatv = 163; glGetFramebufferAttachmentParameteriv = 164; glGetFramebufferAttachmentParameterivOES = 165; glGetIntegerv = 166; glGetLightfv = 167; glGetLightxv = 168; glGetLightxvOES = 169; glGetMaterialfv = 170; glGetMaterialxv = 171; glGetMaterialxvOES = 172; glGetPerfMonitorCounterDataAMD = 173; glGetPerfMonitorCounterInfoAMD = 174; glGetPerfMonitorCountersAMD = 175; glGetPerfMonitorCounterStringAMD = 176; glGetPerfMonitorGroupsAMD = 177; glGetPerfMonitorGroupStringAMD = 178; glGetPointerv = 179; glGetProgramBinaryOES = 180; glGetProgramInfoLog = 181; glGetProgramiv = 182; glGetRenderbufferParameteriv = 183; glGetRenderbufferParameterivOES = 184; glGetShaderInfoLog = 185; glGetShaderiv = 186; glGetShaderPrecisionFormat = 187; glGetShaderSource = 188; glGetString = 189; glGetTexEnvfv = 190; glGetTexEnviv = 191; glGetTexEnvxv = 192; glGetTexEnvxvOES = 193; glGetTexGenfvOES = 194; glGetTexGenivOES = 195; glGetTexGenxvOES = 196; glGetTexParameterfv = 197; glGetTexParameteriv = 198; glGetTexParameterxv = 199; glGetTexParameterxvOES = 200; glGetUniformfv = 201; glGetUniformiv = 202; glGetUniformLocation = 203; glGetVertexAttribfv = 204; glGetVertexAttribiv = 205; glGetVertexAttribPointerv = 206; glHint = 207; glIsBuffer = 208; glIsEnabled = 209; glIsFenceNV = 210; glIsFramebuffer = 211; glIsFramebufferOES = 212; glIsProgram = 213; glIsRenderbuffer = 214; glIsRenderbufferOES = 215; glIsShader = 216; glIsTexture = 217; glIsVertexArrayOES = 218; glLightf = 219; glLightfv = 220; glLightModelf = 221; glLightModelfv = 222; glLightModelx = 223; glLightModelxOES = 224; glLightModelxv = 225; glLightModelxvOES = 226; glLightx = 227; glLightxOES = 228; glLightxv = 229; glLightxvOES = 230; glLineWidth = 231; glLineWidthx = 232; glLineWidthxOES = 233; glLinkProgram = 234; glLoadIdentity = 235; glLoadMatrixf = 236; glLoadMatrixx = 237; glLoadMatrixxOES = 238; glLoadPaletteFromModelViewMatrixOES = 239; glLogicOp = 240; glMapBufferOES = 241; glMaterialf = 242; glMaterialfv = 243; glMaterialx = 244; glMaterialxOES = 245; glMaterialxv = 246; glMaterialxvOES = 247; glMatrixIndexPointerOES = 248; glMatrixMode = 249; glMultiDrawArraysEXT = 250; glMultiDrawElementsEXT = 251; glMultiTexCoord4f = 252; glMultiTexCoord4x = 253; glMultiTexCoord4xOES = 254; glMultMatrixf = 255; glMultMatrixx = 256; glMultMatrixxOES = 257; glNormal3f = 258; glNormal3x = 259; glNormal3xOES = 260; glNormalPointer = 261; glOrthof = 262; glOrthofOES = 263; glOrthox = 264; glOrthoxOES = 265; glPixelStorei = 266; glPointParameterf = 267; glPointParameterfv = 268; glPointParameterx = 269; glPointParameterxOES = 270; glPointParameterxv = 271; glPointParameterxvOES = 272; glPointSize = 273; glPointSizePointerOES = 274; glPointSizex = 275; glPointSizexOES = 276; glPolygonOffset = 277; glPolygonOffsetx = 278; glPolygonOffsetxOES = 279; glPopMatrix = 280; glProgramBinaryOES = 281; glPushMatrix = 282; glQueryMatrixxOES = 283; glReadPixels = 284; glReleaseShaderCompiler = 285; glRenderbufferStorage = 286; glRenderbufferStorageMultisampleIMG = 287; glRenderbufferStorageOES = 288; glRotatef = 289; glRotatex = 290; glRotatexOES = 291; glSampleCoverage = 292; glSampleCoveragex = 293; glSampleCoveragexOES = 294; glScalef = 295; glScalex = 296; glScalexOES = 297; glScissor = 298; glSelectPerfMonitorCountersAMD = 299; glSetFenceNV = 300; glShadeModel = 301; glShaderBinary = 302; glShaderSource = 303; glStartTilingQCOM = 304; glStencilFunc = 305; glStencilFuncSeparate = 306; glStencilMask = 307; glStencilMaskSeparate = 308; glStencilOp = 309; glStencilOpSeparate = 310; glTestFenceNV = 311; glTexCoordPointer = 312; glTexEnvf = 313; glTexEnvfv = 314; glTexEnvi = 315; glTexEnviv = 316; glTexEnvx = 317; glTexEnvxOES = 318; glTexEnvxv = 319; glTexEnvxvOES = 320; glTexGenfOES = 321; glTexGenfvOES = 322; glTexGeniOES = 323; glTexGenivOES = 324; glTexGenxOES = 325; glTexGenxvOES = 326; glTexImage2D = 327; glTexImage3DOES = 328; glTexParameterf = 329; glTexParameterfv = 330; glTexParameteri = 331; glTexParameteriv = 332; glTexParameterx = 333; glTexParameterxOES = 334; glTexParameterxv = 335; glTexParameterxvOES = 336; glTexSubImage2D = 337; glTexSubImage3DOES = 338; glTranslatef = 339; glTranslatex = 340; glTranslatexOES = 341; glUniform1f = 342; glUniform1fv = 343; glUniform1i = 344; glUniform1iv = 345; glUniform2f = 346; glUniform2fv = 347; glUniform2i = 348; glUniform2iv = 349; glUniform3f = 350; glUniform3fv = 351; glUniform3i = 352; glUniform3iv = 353; glUniform4f = 354; glUniform4fv = 355; glUniform4i = 356; glUniform4iv = 357; glUniformMatrix2fv = 358; glUniformMatrix3fv = 359; glUniformMatrix4fv = 360; glUnmapBufferOES = 361; glUseProgram = 362; glValidateProgram = 363; glVertexAttrib1f = 364; glVertexAttrib1fv = 365; glVertexAttrib2f = 366; glVertexAttrib2fv = 367; glVertexAttrib3f = 368; glVertexAttrib3fv = 369; glVertexAttrib4f = 370; glVertexAttrib4fv = 371; glVertexAttribPointer = 372; glVertexPointer = 373; glViewport = 374; glWeightPointerOES = 375; glReadBuffer = 376; glDrawRangeElements = 377; glTexImage3D = 378; glTexSubImage3D = 379; glCopyTexSubImage3D = 380; glCompressedTexImage3D = 381; glCompressedTexSubImage3D = 382; glGenQueries = 383; glDeleteQueries = 384; glIsQuery = 385; glBeginQuery = 386; glEndQuery = 387; glGetQueryiv = 388; glGetQueryObjectuiv = 389; glUnmapBuffer = 390; glGetBufferPointerv = 391; glDrawBuffers = 392; glUniformMatrix2x3fv = 393; glUniformMatrix3x2fv = 394; glUniformMatrix2x4fv = 395; glUniformMatrix4x2fv = 396; glUniformMatrix3x4fv = 397; glUniformMatrix4x3fv = 398; glBlitFramebuffer = 399; glRenderbufferStorageMultisample = 400; glFramebufferTextureLayer = 401; glMapBufferRange = 402; glFlushMappedBufferRange = 403; glBindVertexArray = 404; glDeleteVertexArrays = 405; glGenVertexArrays = 406; glIsVertexArray = 407; glGetIntegeri_v = 408; glBeginTransformFeedback = 409; glEndTransformFeedback = 410; glBindBufferRange = 411; glBindBufferBase = 412; glTransformFeedbackVaryings = 413; glGetTransformFeedbackVarying = 414; glVertexAttribIPointer = 415; glGetVertexAttribIiv = 416; glGetVertexAttribIuiv = 417; glVertexAttribI4i = 418; glVertexAttribI4ui = 419; glVertexAttribI4iv = 420; glVertexAttribI4uiv = 421; glGetUniformuiv = 422; glGetFragDataLocation = 423; glUniform1ui = 424; glUniform2ui = 425; glUniform3ui = 426; glUniform4ui = 427; glUniform1uiv = 428; glUniform2uiv = 429; glUniform3uiv = 430; glUniform4uiv = 431; glClearBufferiv = 432; glClearBufferuiv = 433; glClearBufferfv = 434; glClearBufferfi = 435; glGetStringi = 436; glCopyBufferSubData = 437; glGetUniformIndices = 438; glGetActiveUniformsiv = 439; glGetUniformBlockIndex = 440; glGetActiveUniformBlockiv = 441; glGetActiveUniformBlockName = 442; glUniformBlockBinding = 443; glDrawArraysInstanced = 444; glDrawElementsInstanced = 445; glFenceSync = 446; glIsSync = 447; glDeleteSync = 448; glClientWaitSync = 449; glWaitSync = 450; glGetInteger64v = 451; glGetSynciv = 452; glGetInteger64i_v = 453; glGetBufferParameteri64v = 454; glGenSamplers = 455; glDeleteSamplers = 456; glIsSampler = 457; glBindSampler = 458; glSamplerParameteri = 459; glSamplerParameteriv = 460; glSamplerParameterf = 461; glSamplerParameterfv = 462; glGetSamplerParameteriv = 463; glGetSamplerParameterfv = 464; glVertexAttribDivisor = 465; glBindTransformFeedback = 466; glDeleteTransformFeedbacks = 467; glGenTransformFeedbacks = 468; glIsTransformFeedback = 469; glPauseTransformFeedback = 470; glResumeTransformFeedback = 471; glGetProgramBinary = 472; glProgramBinary = 473; glProgramParameteri = 474; glInvalidateFramebuffer = 475; glInvalidateSubFramebuffer = 476; glTexStorage2D = 477; glTexStorage3D = 478; glGetInternalformativ = 479; glBeginPerfQueryINTEL = 480; glCreatePerfQueryINTEL = 481; glDeletePerfQueryINTEL = 482; glEndPerfQueryINTEL = 483; glGetFirstPerfQueryIdINTEL = 484; glGetNextPerfQueryIdINTEL = 485; glGetPerfCounterInfoINTEL = 486; glGetPerfQueryDataINTEL = 487; glGetPerfQueryIdByNameINTEL = 488; glGetPerfQueryInfoINTEL = 489; glBlendBarrierKHR = 490; glBlendBarrierNV = 491; glBlendParameteriNV = 492; glBlitFramebufferNV = 493; glFenceSyncAPPLE = 494; glIsSyncAPPLE = 495; glDeleteSyncAPPLE = 496; glClientWaitSyncAPPLE = 497; glWaitSyncAPPLE = 498; glGetInteger64vAPPLE = 499; glGetSyncivAPPLE = 500; glCopyBufferSubDataNV = 501; glActiveShaderProgramEXT = 502; glAlphaFuncQCOM = 503; glBeginQueryEXT = 504; glBindProgramPipelineEXT = 505; glBlitFramebufferANGLE = 506; glCreateShaderProgramvEXT = 507; glDeleteProgramPipelinesEXT = 508; glDeleteQueriesEXT = 509; glDrawBuffersNV = 510; glEndQueryEXT = 511; glFramebufferTexture2DMultisampleEXT = 512; glGenProgramPipelinesEXT = 513; glGenQueriesEXT = 514; glGetGraphicsResetStatusEXT = 515; glGetObjectLabelEXT = 516; glGetProgramPipelineInfoLogEXT = 517; glGetProgramPipelineivEXT = 518; glGetQueryObjectuivEXT = 519; glGetQueryivEXT = 520; glGetnUniformfvEXT = 521; glGetnUniformivEXT = 521; glInsertEventMarkerEXT = 522; glIsProgramPipelineEXT = 523; glIsQueryEXT = 524; glLabelObjectEXT = 525; glPopGroupMarkerEXT = 526; glProgramParameteriEXT = 527; glProgramUniform1fEXT = 528; glProgramUniform1fvEXT = 529; glProgramUniform1iEXT = 530; glProgramUniform1ivEXT = 531; glProgramUniform2fEXT = 532; glProgramUniform2fvEXT = 533; glProgramUniform2iEXT = 534; glProgramUniform2ivEXT = 535; glProgramUniform3fEXT = 536; glProgramUniform3fvEXT = 537; glProgramUniform3iEXT = 538; glProgramUniform3ivEXT = 539; glProgramUniform4fEXT = 540; glProgramUniform4fvEXT = 541; glProgramUniform4iEXT = 542; glProgramUniform4ivEXT = 543; glProgramUniformMatrix2fvEXT = 544; glProgramUniformMatrix3fvEXT = 545; glProgramUniformMatrix4fvEXT = 546; glPushGroupMarkerEXT = 547; glReadBufferNV = 548; glReadnPixelsEXT = 549; glRenderbufferStorageMultisampleANGLE = 550; glRenderbufferStorageMultisampleAPPLE = 551; glRenderbufferStorageMultisampleEXT = 552; glResolveMultisampleFramebufferAPPLE = 553; glTexStorage1DEXT = 554; glTexStorage2DEXT = 555; glTexStorage3DEXT = 556; glTextureStorage1DEXT = 557; glTextureStorage2DEXT = 558; glTextureStorage3DEXT = 559; glUseProgramStagesEXT = 560; glValidateProgramPipelineEXT = 561; glCopyTextureLevelsAPPLE = 562; glDebugMessageControlKHR = 563; glDebugMessageInsertKHR = 564; glDebugMessageCallbackKHR = 565; glGetDebugMessageLogKHR = 566; glPushDebugGroupKHR = 567; glPopDebugGroupKHR = 568; glObjectLabelKHR = 569; glGetObjectLabelKHR = 570; glObjectPtrLabelKHR = 571; glGetObjectPtrLabelKHR = 572; glGetPointervKHR = 573; glDrawArraysInstancedANGLE = 574; glDrawElementsInstancedANGLE = 575; glVertexAttribDivisorANGLE = 576; glDrawArraysInstancedEXT = 577; glDrawElementsInstancedEXT = 578; glVertexAttribDivisorEXT = 579; glDrawArraysInstancedNV = 580; glDrawElementsInstancedNV = 581; glVertexAttribDivisorNV = 582; glDrawBuffersEXT = 583; glReadBufferIndexedEXT = 584; glDrawBuffersIndexedEXT = 585; glGetIntegeri_vEXT = 586; glMapBufferRangeEXT = 587; glFlushMappedBufferRangeEXT = 588; glQueryCounterEXT = 589; glGetQueryObjecti64vEXT = 590; glGetQueryObjectivEXT = 591; glGetQueryObjectui64vEXT = 592; glGetTranslatedShaderSourceANGLE = 593; glMinSampleShadingOES = 594; glMultiTexCoord1bOES = 595; glMultiTexCoord1bvOES = 596; glMultiTexCoord2bOES = 597; glMultiTexCoord2bvOES = 598; glMultiTexCoord3bOES = 599; glMultiTexCoord3bvOES = 600; glMultiTexCoord4bOES = 601; glMultiTexCoord4bvOES = 602; glTexCoord1bOES = 603; glTexCoord1bvOES = 604; glTexCoord2bOES = 605; glTexCoord2bvOES = 606; glTexCoord3bOES = 607; glTexCoord3bvOES = 608; glTexCoord4bOES = 609; glTexCoord4bvOES = 610; glVertex2bOES = 611; glVertex2bvOES = 612; glVertex3bOES = 613; glVertex3bvOES = 614; glVertex4bOES = 615; glVertex4bvOES = 616; glProgramUniform1uiEXT = 617; glProgramUniform2uiEXT = 618; glProgramUniform3uiEXT = 619; glProgramUniform4uiEXT = 620; glProgramUniform1uivEXT = 621; glProgramUniform2uivEXT = 622; glProgramUniform3uivEXT = 623; glProgramUniform4uivEXT = 624; glProgramUniformMatrix2x3fvEXT = 625; glProgramUniformMatrix3x2fvEXT = 626; glProgramUniformMatrix2x4fvEXT = 627; glProgramUniformMatrix4x2fvEXT = 628; glProgramUniformMatrix3x4fvEXT = 629; glProgramUniformMatrix4x3fvEXT = 630; glRenderbufferStorageMultisampleNV = 631; glSampleCoverageOES = 632; glTexStorage3DMultisampleOES = 633; glUniformMatrix2x3fvNV = 634; glUniformMatrix3x2fvNV = 635; glUniformMatrix2x4fvNV = 636; glUniformMatrix4x2fvNV = 637; glUniformMatrix3x4fvNV = 638; glUniformMatrix4x3fvNV = 639; eglGetDisplay = 2000; eglInitialize = 2001; eglTerminate = 2002; eglGetConfigs = 2003; eglChooseConfig = 2004; eglGetConfigAttrib = 2005; eglCreateWindowSurface = 2006; eglCreatePixmapSurface = 2007; eglCreatePbufferSurface = 2008; eglDestroySurface = 2009; eglQuerySurface = 2010; eglCreateContext = 2011; eglDestroyContext = 2012; eglMakeCurrent = 2013; eglGetCurrentContext = 2014; eglGetCurrentSurface = 2015; eglGetCurrentDisplay = 2016; eglQueryContext = 2017; eglWaitGL = 2018; eglWaitNative = 2019; eglSwapBuffers = 2020; eglCopyBuffers = 2021; eglGetError = 2022; eglQueryString = 2023; eglGetProcAddress = 2024; eglSurfaceAttrib = 2025; eglBindTexImage = 2026; eglReleaseTexImage = 2027; eglSwapInterval = 2028; eglBindAPI = 2029; eglQueryAPI = 2030; eglWaitClient = 2031; eglReleaseThread = 2032; eglCreatePbufferFromClientBuffer = 2033; eglLockSurfaceKHR = 2034; eglUnlockSurfaceKHR = 2035; eglCreateImageKHR = 2036; eglDestroyImageKHR = 2037; eglCreateSyncKHR = 2038; eglDestroySyncKHR = 2039; eglClientWaitSyncKHR = 2040; eglGetSyncAttribKHR = 2041; eglSetSwapRectangleANDROID = 2042; eglGetRenderBufferANDROID = 2043; eglGetSystemTimeFrequencyNV = 2044; eglGetSystemTimeNV = 2045; invalid = 3000; glVertexAttribPointerData = 3001; } // A GL call's return data and arguments are formatted into this DataType message DataType { enum Type { VOID = 1; // GLvoid CHAR = 2; // GLchar BYTE = 3; // GLbyte, GLubyte INT = 4; // GLbitfield, GLshort, GLint, GLsizei, GLushort, GLuint, GLfixed FLOAT = 5; // GLfloat, GLclampf BOOL = 6; // GLboolean ENUM = 7; // GLenum INT64 = 8; // GLint64, GLuint64 }; required Type type = 1 [default = VOID]; required bool isArray = 2 [default = false]; repeated int32 intValue = 3; repeated float floatValue = 4; repeated bytes charValue = 5; repeated bytes rawBytes = 6; repeated bool boolValue = 7; repeated int64 int64Value = 8; } message FrameBuffer { required int32 width = 1; required int32 height = 2; repeated bytes contents = 3; } required int32 context_id = 1; // GL context ID required int64 start_time = 2; // time when call was invoked required int32 duration = 3; // duration of the call (MONOTONIC TIME) required Function function = 4 [default = invalid]; // GL function called repeated DataType args = 5; // GL function's arguments optional DataType returnValue = 6; // GL function's return value optional FrameBuffer fb = 7; // contents of the framebuffer optional int32 threadtime = 8; // duration of the call (THREAD TIME) };