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