1 // GENERATED FILE - DO NOT EDIT.
2 // Generated by generate_entry_points.py using data from gl.xml and gl_angle_ext.xml.
3 //
4 // Copyright 2020 The ANGLE Project Authors. All rights reserved.
5 // Use of this source code is governed by a BSD-style license that can be
6 // found in the LICENSE file.
7 //
8 // frame_capture_utils_autogen.cpp:
9 // ANGLE Frame capture types and helper functions.
10
11 #include "libANGLE/capture/frame_capture_utils_autogen.h"
12
13 #include "libANGLE/capture/FrameCapture.h"
14
15 namespace angle
16 {
WriteParamCaptureReplay(std::ostream & os,const CallCapture & call,const ParamCapture & param)17 void WriteParamCaptureReplay(std::ostream &os, const CallCapture &call, const ParamCapture ¶m)
18 {
19 switch (param.type)
20 {
21 case ParamType::TAHardwareBufferConstPointer:
22 WriteParamValueReplay<ParamType::TAHardwareBufferConstPointer>(
23 os, call, param.value.AHardwareBufferConstPointerVal);
24 break;
25 case ParamType::TAlphaTestFunc:
26 WriteParamValueReplay<ParamType::TAlphaTestFunc>(os, call,
27 param.value.AlphaTestFuncVal);
28 break;
29 case ParamType::TBufferBinding:
30 WriteParamValueReplay<ParamType::TBufferBinding>(os, call,
31 param.value.BufferBindingVal);
32 break;
33 case ParamType::TBufferID:
34 WriteParamValueReplay<ParamType::TBufferID>(os, call, param.value.BufferIDVal);
35 break;
36 case ParamType::TBufferIDConstPointer:
37 WriteParamValueReplay<ParamType::TBufferIDConstPointer>(
38 os, call, param.value.BufferIDConstPointerVal);
39 break;
40 case ParamType::TBufferIDPointer:
41 WriteParamValueReplay<ParamType::TBufferIDPointer>(os, call,
42 param.value.BufferIDPointerVal);
43 break;
44 case ParamType::TBufferUsage:
45 WriteParamValueReplay<ParamType::TBufferUsage>(os, call, param.value.BufferUsageVal);
46 break;
47 case ParamType::TClientVertexArrayType:
48 WriteParamValueReplay<ParamType::TClientVertexArrayType>(
49 os, call, param.value.ClientVertexArrayTypeVal);
50 break;
51 case ParamType::TCompositorTiming:
52 WriteParamValueReplay<ParamType::TCompositorTiming>(os, call,
53 param.value.CompositorTimingVal);
54 break;
55 case ParamType::TCullFaceMode:
56 WriteParamValueReplay<ParamType::TCullFaceMode>(os, call, param.value.CullFaceModeVal);
57 break;
58 case ParamType::TDrawElementsType:
59 WriteParamValueReplay<ParamType::TDrawElementsType>(os, call,
60 param.value.DrawElementsTypeVal);
61 break;
62 case ParamType::TEGLAttrib:
63 WriteParamValueReplay<ParamType::TEGLAttrib>(os, call, param.value.EGLAttribVal);
64 break;
65 case ParamType::TEGLAttribKHR:
66 WriteParamValueReplay<ParamType::TEGLAttribKHR>(os, call, param.value.EGLAttribKHRVal);
67 break;
68 case ParamType::TEGLClientBuffer:
69 WriteParamValueReplay<ParamType::TEGLClientBuffer>(os, call,
70 param.value.EGLClientBufferVal);
71 break;
72 case ParamType::TEGLConfig:
73 WriteParamValueReplay<ParamType::TEGLConfig>(os, call, param.value.EGLConfigVal);
74 break;
75 case ParamType::TEGLContext:
76 WriteParamValueReplay<ParamType::TEGLContext>(os, call, param.value.EGLContextVal);
77 break;
78 case ParamType::TEGLDEBUGPROCKHR:
79 WriteParamValueReplay<ParamType::TEGLDEBUGPROCKHR>(os, call,
80 param.value.EGLDEBUGPROCKHRVal);
81 break;
82 case ParamType::TEGLDeviceEXT:
83 WriteParamValueReplay<ParamType::TEGLDeviceEXT>(os, call, param.value.EGLDeviceEXTVal);
84 break;
85 case ParamType::TEGLDisplay:
86 WriteParamValueReplay<ParamType::TEGLDisplay>(os, call, param.value.EGLDisplayVal);
87 break;
88 case ParamType::TEGLFrameTokenANGLE:
89 WriteParamValueReplay<ParamType::TEGLFrameTokenANGLE>(
90 os, call, param.value.EGLFrameTokenANGLEVal);
91 break;
92 case ParamType::TEGLGetBlobFuncANDROID:
93 WriteParamValueReplay<ParamType::TEGLGetBlobFuncANDROID>(
94 os, call, param.value.EGLGetBlobFuncANDROIDVal);
95 break;
96 case ParamType::TEGLImage:
97 WriteParamValueReplay<ParamType::TEGLImage>(os, call, param.value.EGLImageVal);
98 break;
99 case ParamType::TEGLLabelKHR:
100 WriteParamValueReplay<ParamType::TEGLLabelKHR>(os, call, param.value.EGLLabelKHRVal);
101 break;
102 case ParamType::TEGLNativeDisplayType:
103 WriteParamValueReplay<ParamType::TEGLNativeDisplayType>(
104 os, call, param.value.EGLNativeDisplayTypeVal);
105 break;
106 case ParamType::TEGLNativePixmapType:
107 WriteParamValueReplay<ParamType::TEGLNativePixmapType>(
108 os, call, param.value.EGLNativePixmapTypeVal);
109 break;
110 case ParamType::TEGLNativeWindowType:
111 WriteParamValueReplay<ParamType::TEGLNativeWindowType>(
112 os, call, param.value.EGLNativeWindowTypeVal);
113 break;
114 case ParamType::TEGLObjectKHR:
115 WriteParamValueReplay<ParamType::TEGLObjectKHR>(os, call, param.value.EGLObjectKHRVal);
116 break;
117 case ParamType::TEGLSetBlobFuncANDROID:
118 WriteParamValueReplay<ParamType::TEGLSetBlobFuncANDROID>(
119 os, call, param.value.EGLSetBlobFuncANDROIDVal);
120 break;
121 case ParamType::TEGLStreamKHR:
122 WriteParamValueReplay<ParamType::TEGLStreamKHR>(os, call, param.value.EGLStreamKHRVal);
123 break;
124 case ParamType::TEGLSurface:
125 WriteParamValueReplay<ParamType::TEGLSurface>(os, call, param.value.EGLSurfaceVal);
126 break;
127 case ParamType::TEGLSync:
128 WriteParamValueReplay<ParamType::TEGLSync>(os, call, param.value.EGLSyncVal);
129 break;
130 case ParamType::TEGLTime:
131 WriteParamValueReplay<ParamType::TEGLTime>(os, call, param.value.EGLTimeVal);
132 break;
133 case ParamType::TEGLTimeKHR:
134 WriteParamValueReplay<ParamType::TEGLTimeKHR>(os, call, param.value.EGLTimeKHRVal);
135 break;
136 case ParamType::TEGLenum:
137 WriteParamValueReplay<ParamType::TEGLenum>(os, call, param.value.EGLenumVal);
138 break;
139 case ParamType::TEGLint:
140 WriteParamValueReplay<ParamType::TEGLint>(os, call, param.value.EGLintVal);
141 break;
142 case ParamType::TEGLnsecsANDROID:
143 WriteParamValueReplay<ParamType::TEGLnsecsANDROID>(os, call,
144 param.value.EGLnsecsANDROIDVal);
145 break;
146 case ParamType::TEGLuint64KHR:
147 WriteParamValueReplay<ParamType::TEGLuint64KHR>(os, call, param.value.EGLuint64KHRVal);
148 break;
149 case ParamType::TFenceNVID:
150 WriteParamValueReplay<ParamType::TFenceNVID>(os, call, param.value.FenceNVIDVal);
151 break;
152 case ParamType::TFenceNVIDConstPointer:
153 WriteParamValueReplay<ParamType::TFenceNVIDConstPointer>(
154 os, call, param.value.FenceNVIDConstPointerVal);
155 break;
156 case ParamType::TFenceNVIDPointer:
157 WriteParamValueReplay<ParamType::TFenceNVIDPointer>(os, call,
158 param.value.FenceNVIDPointerVal);
159 break;
160 case ParamType::TFramebufferID:
161 WriteParamValueReplay<ParamType::TFramebufferID>(os, call,
162 param.value.FramebufferIDVal);
163 break;
164 case ParamType::TFramebufferIDConstPointer:
165 WriteParamValueReplay<ParamType::TFramebufferIDConstPointer>(
166 os, call, param.value.FramebufferIDConstPointerVal);
167 break;
168 case ParamType::TFramebufferIDPointer:
169 WriteParamValueReplay<ParamType::TFramebufferIDPointer>(
170 os, call, param.value.FramebufferIDPointerVal);
171 break;
172 case ParamType::TGLDEBUGPROC:
173 WriteParamValueReplay<ParamType::TGLDEBUGPROC>(os, call, param.value.GLDEBUGPROCVal);
174 break;
175 case ParamType::TGLDEBUGPROCKHR:
176 WriteParamValueReplay<ParamType::TGLDEBUGPROCKHR>(os, call,
177 param.value.GLDEBUGPROCKHRVal);
178 break;
179 case ParamType::TGLbitfield:
180 WriteParamValueReplay<ParamType::TGLbitfield>(os, call, param.value.GLbitfieldVal);
181 break;
182 case ParamType::TGLboolean:
183 WriteParamValueReplay<ParamType::TGLboolean>(os, call, param.value.GLbooleanVal);
184 break;
185 case ParamType::TGLbooleanConstPointer:
186 WriteParamValueReplay<ParamType::TGLbooleanConstPointer>(
187 os, call, param.value.GLbooleanConstPointerVal);
188 break;
189 case ParamType::TGLbooleanPointer:
190 WriteParamValueReplay<ParamType::TGLbooleanPointer>(os, call,
191 param.value.GLbooleanPointerVal);
192 break;
193 case ParamType::TGLbyte:
194 WriteParamValueReplay<ParamType::TGLbyte>(os, call, param.value.GLbyteVal);
195 break;
196 case ParamType::TGLbyteConstPointer:
197 WriteParamValueReplay<ParamType::TGLbyteConstPointer>(
198 os, call, param.value.GLbyteConstPointerVal);
199 break;
200 case ParamType::TGLcharConstPointer:
201 WriteParamValueReplay<ParamType::TGLcharConstPointer>(
202 os, call, param.value.GLcharConstPointerVal);
203 break;
204 case ParamType::TGLcharConstPointerPointer:
205 WriteParamValueReplay<ParamType::TGLcharConstPointerPointer>(
206 os, call, param.value.GLcharConstPointerPointerVal);
207 break;
208 case ParamType::TGLcharPointer:
209 WriteParamValueReplay<ParamType::TGLcharPointer>(os, call,
210 param.value.GLcharPointerVal);
211 break;
212 case ParamType::TGLclampx:
213 WriteParamValueReplay<ParamType::TGLclampx>(os, call, param.value.GLclampxVal);
214 break;
215 case ParamType::TGLdouble:
216 WriteParamValueReplay<ParamType::TGLdouble>(os, call, param.value.GLdoubleVal);
217 break;
218 case ParamType::TGLdoubleConstPointer:
219 WriteParamValueReplay<ParamType::TGLdoubleConstPointer>(
220 os, call, param.value.GLdoubleConstPointerVal);
221 break;
222 case ParamType::TGLdoublePointer:
223 WriteParamValueReplay<ParamType::TGLdoublePointer>(os, call,
224 param.value.GLdoublePointerVal);
225 break;
226 case ParamType::TGLeglClientBufferEXT:
227 WriteParamValueReplay<ParamType::TGLeglClientBufferEXT>(
228 os, call, param.value.GLeglClientBufferEXTVal);
229 break;
230 case ParamType::TGLeglImageOES:
231 WriteParamValueReplay<ParamType::TGLeglImageOES>(os, call,
232 param.value.GLeglImageOESVal);
233 break;
234 case ParamType::TGLenum:
235 WriteParamValueReplay<ParamType::TGLenum>(os, call, param.value.GLenumVal);
236 break;
237 case ParamType::TGLenumConstPointer:
238 WriteParamValueReplay<ParamType::TGLenumConstPointer>(
239 os, call, param.value.GLenumConstPointerVal);
240 break;
241 case ParamType::TGLenumPointer:
242 WriteParamValueReplay<ParamType::TGLenumPointer>(os, call,
243 param.value.GLenumPointerVal);
244 break;
245 case ParamType::TGLfixed:
246 WriteParamValueReplay<ParamType::TGLfixed>(os, call, param.value.GLfixedVal);
247 break;
248 case ParamType::TGLfixedConstPointer:
249 WriteParamValueReplay<ParamType::TGLfixedConstPointer>(
250 os, call, param.value.GLfixedConstPointerVal);
251 break;
252 case ParamType::TGLfixedPointer:
253 WriteParamValueReplay<ParamType::TGLfixedPointer>(os, call,
254 param.value.GLfixedPointerVal);
255 break;
256 case ParamType::TGLfloat:
257 WriteParamValueReplay<ParamType::TGLfloat>(os, call, param.value.GLfloatVal);
258 break;
259 case ParamType::TGLfloatConstPointer:
260 WriteParamValueReplay<ParamType::TGLfloatConstPointer>(
261 os, call, param.value.GLfloatConstPointerVal);
262 break;
263 case ParamType::TGLfloatPointer:
264 WriteParamValueReplay<ParamType::TGLfloatPointer>(os, call,
265 param.value.GLfloatPointerVal);
266 break;
267 case ParamType::TGLint:
268 WriteParamValueReplay<ParamType::TGLint>(os, call, param.value.GLintVal);
269 break;
270 case ParamType::TGLint64Pointer:
271 WriteParamValueReplay<ParamType::TGLint64Pointer>(os, call,
272 param.value.GLint64PointerVal);
273 break;
274 case ParamType::TGLintConstPointer:
275 WriteParamValueReplay<ParamType::TGLintConstPointer>(os, call,
276 param.value.GLintConstPointerVal);
277 break;
278 case ParamType::TGLintPointer:
279 WriteParamValueReplay<ParamType::TGLintPointer>(os, call, param.value.GLintPointerVal);
280 break;
281 case ParamType::TGLintptr:
282 WriteParamValueReplay<ParamType::TGLintptr>(os, call, param.value.GLintptrVal);
283 break;
284 case ParamType::TGLintptrConstPointer:
285 WriteParamValueReplay<ParamType::TGLintptrConstPointer>(
286 os, call, param.value.GLintptrConstPointerVal);
287 break;
288 case ParamType::TGLshort:
289 WriteParamValueReplay<ParamType::TGLshort>(os, call, param.value.GLshortVal);
290 break;
291 case ParamType::TGLshortConstPointer:
292 WriteParamValueReplay<ParamType::TGLshortConstPointer>(
293 os, call, param.value.GLshortConstPointerVal);
294 break;
295 case ParamType::TGLsizei:
296 WriteParamValueReplay<ParamType::TGLsizei>(os, call, param.value.GLsizeiVal);
297 break;
298 case ParamType::TGLsizeiConstPointer:
299 WriteParamValueReplay<ParamType::TGLsizeiConstPointer>(
300 os, call, param.value.GLsizeiConstPointerVal);
301 break;
302 case ParamType::TGLsizeiPointer:
303 WriteParamValueReplay<ParamType::TGLsizeiPointer>(os, call,
304 param.value.GLsizeiPointerVal);
305 break;
306 case ParamType::TGLsizeiptr:
307 WriteParamValueReplay<ParamType::TGLsizeiptr>(os, call, param.value.GLsizeiptrVal);
308 break;
309 case ParamType::TGLsizeiptrConstPointer:
310 WriteParamValueReplay<ParamType::TGLsizeiptrConstPointer>(
311 os, call, param.value.GLsizeiptrConstPointerVal);
312 break;
313 case ParamType::TGLsync:
314 WriteParamValueReplay<ParamType::TGLsync>(os, call, param.value.GLsyncVal);
315 break;
316 case ParamType::TGLubyte:
317 WriteParamValueReplay<ParamType::TGLubyte>(os, call, param.value.GLubyteVal);
318 break;
319 case ParamType::TGLubyteConstPointer:
320 WriteParamValueReplay<ParamType::TGLubyteConstPointer>(
321 os, call, param.value.GLubyteConstPointerVal);
322 break;
323 case ParamType::TGLubytePointer:
324 WriteParamValueReplay<ParamType::TGLubytePointer>(os, call,
325 param.value.GLubytePointerVal);
326 break;
327 case ParamType::TGLuint:
328 WriteParamValueReplay<ParamType::TGLuint>(os, call, param.value.GLuintVal);
329 break;
330 case ParamType::TGLuint64:
331 WriteParamValueReplay<ParamType::TGLuint64>(os, call, param.value.GLuint64Val);
332 break;
333 case ParamType::TGLuint64ConstPointer:
334 WriteParamValueReplay<ParamType::TGLuint64ConstPointer>(
335 os, call, param.value.GLuint64ConstPointerVal);
336 break;
337 case ParamType::TGLuint64Pointer:
338 WriteParamValueReplay<ParamType::TGLuint64Pointer>(os, call,
339 param.value.GLuint64PointerVal);
340 break;
341 case ParamType::TGLuintConstPointer:
342 WriteParamValueReplay<ParamType::TGLuintConstPointer>(
343 os, call, param.value.GLuintConstPointerVal);
344 break;
345 case ParamType::TGLuintPointer:
346 WriteParamValueReplay<ParamType::TGLuintPointer>(os, call,
347 param.value.GLuintPointerVal);
348 break;
349 case ParamType::TGLushort:
350 WriteParamValueReplay<ParamType::TGLushort>(os, call, param.value.GLushortVal);
351 break;
352 case ParamType::TGLushortConstPointer:
353 WriteParamValueReplay<ParamType::TGLushortConstPointer>(
354 os, call, param.value.GLushortConstPointerVal);
355 break;
356 case ParamType::TGLushortPointer:
357 WriteParamValueReplay<ParamType::TGLushortPointer>(os, call,
358 param.value.GLushortPointerVal);
359 break;
360 case ParamType::TGLvoidConstPointer:
361 WriteParamValueReplay<ParamType::TGLvoidConstPointer>(
362 os, call, param.value.GLvoidConstPointerVal);
363 break;
364 case ParamType::TGLvoidConstPointerPointer:
365 WriteParamValueReplay<ParamType::TGLvoidConstPointerPointer>(
366 os, call, param.value.GLvoidConstPointerPointerVal);
367 break;
368 case ParamType::TGraphicsResetStatus:
369 WriteParamValueReplay<ParamType::TGraphicsResetStatus>(
370 os, call, param.value.GraphicsResetStatusVal);
371 break;
372 case ParamType::THandleType:
373 WriteParamValueReplay<ParamType::THandleType>(os, call, param.value.HandleTypeVal);
374 break;
375 case ParamType::TLightParameter:
376 WriteParamValueReplay<ParamType::TLightParameter>(os, call,
377 param.value.LightParameterVal);
378 break;
379 case ParamType::TLogicalOperation:
380 WriteParamValueReplay<ParamType::TLogicalOperation>(os, call,
381 param.value.LogicalOperationVal);
382 break;
383 case ParamType::TMaterialParameter:
384 WriteParamValueReplay<ParamType::TMaterialParameter>(os, call,
385 param.value.MaterialParameterVal);
386 break;
387 case ParamType::TMatrixType:
388 WriteParamValueReplay<ParamType::TMatrixType>(os, call, param.value.MatrixTypeVal);
389 break;
390 case ParamType::TMemoryObjectID:
391 WriteParamValueReplay<ParamType::TMemoryObjectID>(os, call,
392 param.value.MemoryObjectIDVal);
393 break;
394 case ParamType::TMemoryObjectIDConstPointer:
395 WriteParamValueReplay<ParamType::TMemoryObjectIDConstPointer>(
396 os, call, param.value.MemoryObjectIDConstPointerVal);
397 break;
398 case ParamType::TMemoryObjectIDPointer:
399 WriteParamValueReplay<ParamType::TMemoryObjectIDPointer>(
400 os, call, param.value.MemoryObjectIDPointerVal);
401 break;
402 case ParamType::TObjectType:
403 WriteParamValueReplay<ParamType::TObjectType>(os, call, param.value.ObjectTypeVal);
404 break;
405 case ParamType::TPointParameter:
406 WriteParamValueReplay<ParamType::TPointParameter>(os, call,
407 param.value.PointParameterVal);
408 break;
409 case ParamType::TPrimitiveMode:
410 WriteParamValueReplay<ParamType::TPrimitiveMode>(os, call,
411 param.value.PrimitiveModeVal);
412 break;
413 case ParamType::TProgramPipelineID:
414 WriteParamValueReplay<ParamType::TProgramPipelineID>(os, call,
415 param.value.ProgramPipelineIDVal);
416 break;
417 case ParamType::TProgramPipelineIDConstPointer:
418 WriteParamValueReplay<ParamType::TProgramPipelineIDConstPointer>(
419 os, call, param.value.ProgramPipelineIDConstPointerVal);
420 break;
421 case ParamType::TProgramPipelineIDPointer:
422 WriteParamValueReplay<ParamType::TProgramPipelineIDPointer>(
423 os, call, param.value.ProgramPipelineIDPointerVal);
424 break;
425 case ParamType::TProvokingVertexConvention:
426 WriteParamValueReplay<ParamType::TProvokingVertexConvention>(
427 os, call, param.value.ProvokingVertexConventionVal);
428 break;
429 case ParamType::TQueryID:
430 WriteParamValueReplay<ParamType::TQueryID>(os, call, param.value.QueryIDVal);
431 break;
432 case ParamType::TQueryIDConstPointer:
433 WriteParamValueReplay<ParamType::TQueryIDConstPointer>(
434 os, call, param.value.QueryIDConstPointerVal);
435 break;
436 case ParamType::TQueryIDPointer:
437 WriteParamValueReplay<ParamType::TQueryIDPointer>(os, call,
438 param.value.QueryIDPointerVal);
439 break;
440 case ParamType::TQueryType:
441 WriteParamValueReplay<ParamType::TQueryType>(os, call, param.value.QueryTypeVal);
442 break;
443 case ParamType::TRenderbufferID:
444 WriteParamValueReplay<ParamType::TRenderbufferID>(os, call,
445 param.value.RenderbufferIDVal);
446 break;
447 case ParamType::TRenderbufferIDConstPointer:
448 WriteParamValueReplay<ParamType::TRenderbufferIDConstPointer>(
449 os, call, param.value.RenderbufferIDConstPointerVal);
450 break;
451 case ParamType::TRenderbufferIDPointer:
452 WriteParamValueReplay<ParamType::TRenderbufferIDPointer>(
453 os, call, param.value.RenderbufferIDPointerVal);
454 break;
455 case ParamType::TSamplerID:
456 WriteParamValueReplay<ParamType::TSamplerID>(os, call, param.value.SamplerIDVal);
457 break;
458 case ParamType::TSamplerIDConstPointer:
459 WriteParamValueReplay<ParamType::TSamplerIDConstPointer>(
460 os, call, param.value.SamplerIDConstPointerVal);
461 break;
462 case ParamType::TSamplerIDPointer:
463 WriteParamValueReplay<ParamType::TSamplerIDPointer>(os, call,
464 param.value.SamplerIDPointerVal);
465 break;
466 case ParamType::TSemaphoreID:
467 WriteParamValueReplay<ParamType::TSemaphoreID>(os, call, param.value.SemaphoreIDVal);
468 break;
469 case ParamType::TSemaphoreIDConstPointer:
470 WriteParamValueReplay<ParamType::TSemaphoreIDConstPointer>(
471 os, call, param.value.SemaphoreIDConstPointerVal);
472 break;
473 case ParamType::TSemaphoreIDPointer:
474 WriteParamValueReplay<ParamType::TSemaphoreIDPointer>(
475 os, call, param.value.SemaphoreIDPointerVal);
476 break;
477 case ParamType::TShaderProgramID:
478 WriteParamValueReplay<ParamType::TShaderProgramID>(os, call,
479 param.value.ShaderProgramIDVal);
480 break;
481 case ParamType::TShaderProgramIDConstPointer:
482 WriteParamValueReplay<ParamType::TShaderProgramIDConstPointer>(
483 os, call, param.value.ShaderProgramIDConstPointerVal);
484 break;
485 case ParamType::TShaderProgramIDPointer:
486 WriteParamValueReplay<ParamType::TShaderProgramIDPointer>(
487 os, call, param.value.ShaderProgramIDPointerVal);
488 break;
489 case ParamType::TShaderType:
490 WriteParamValueReplay<ParamType::TShaderType>(os, call, param.value.ShaderTypeVal);
491 break;
492 case ParamType::TShadingModel:
493 WriteParamValueReplay<ParamType::TShadingModel>(os, call, param.value.ShadingModelVal);
494 break;
495 case ParamType::TTextureEnvParameter:
496 WriteParamValueReplay<ParamType::TTextureEnvParameter>(
497 os, call, param.value.TextureEnvParameterVal);
498 break;
499 case ParamType::TTextureEnvTarget:
500 WriteParamValueReplay<ParamType::TTextureEnvTarget>(os, call,
501 param.value.TextureEnvTargetVal);
502 break;
503 case ParamType::TTextureID:
504 WriteParamValueReplay<ParamType::TTextureID>(os, call, param.value.TextureIDVal);
505 break;
506 case ParamType::TTextureIDConstPointer:
507 WriteParamValueReplay<ParamType::TTextureIDConstPointer>(
508 os, call, param.value.TextureIDConstPointerVal);
509 break;
510 case ParamType::TTextureIDPointer:
511 WriteParamValueReplay<ParamType::TTextureIDPointer>(os, call,
512 param.value.TextureIDPointerVal);
513 break;
514 case ParamType::TTextureTarget:
515 WriteParamValueReplay<ParamType::TTextureTarget>(os, call,
516 param.value.TextureTargetVal);
517 break;
518 case ParamType::TTextureType:
519 WriteParamValueReplay<ParamType::TTextureType>(os, call, param.value.TextureTypeVal);
520 break;
521 case ParamType::TTimestamp:
522 WriteParamValueReplay<ParamType::TTimestamp>(os, call, param.value.TimestampVal);
523 break;
524 case ParamType::TTransformFeedbackID:
525 WriteParamValueReplay<ParamType::TTransformFeedbackID>(
526 os, call, param.value.TransformFeedbackIDVal);
527 break;
528 case ParamType::TTransformFeedbackIDConstPointer:
529 WriteParamValueReplay<ParamType::TTransformFeedbackIDConstPointer>(
530 os, call, param.value.TransformFeedbackIDConstPointerVal);
531 break;
532 case ParamType::TTransformFeedbackIDPointer:
533 WriteParamValueReplay<ParamType::TTransformFeedbackIDPointer>(
534 os, call, param.value.TransformFeedbackIDPointerVal);
535 break;
536 case ParamType::TUniformBlockIndex:
537 WriteParamValueReplay<ParamType::TUniformBlockIndex>(os, call,
538 param.value.UniformBlockIndexVal);
539 break;
540 case ParamType::TUniformLocation:
541 WriteParamValueReplay<ParamType::TUniformLocation>(os, call,
542 param.value.UniformLocationVal);
543 break;
544 case ParamType::TVertexArrayID:
545 WriteParamValueReplay<ParamType::TVertexArrayID>(os, call,
546 param.value.VertexArrayIDVal);
547 break;
548 case ParamType::TVertexArrayIDConstPointer:
549 WriteParamValueReplay<ParamType::TVertexArrayIDConstPointer>(
550 os, call, param.value.VertexArrayIDConstPointerVal);
551 break;
552 case ParamType::TVertexArrayIDPointer:
553 WriteParamValueReplay<ParamType::TVertexArrayIDPointer>(
554 os, call, param.value.VertexArrayIDPointerVal);
555 break;
556 case ParamType::TVertexAttribType:
557 WriteParamValueReplay<ParamType::TVertexAttribType>(os, call,
558 param.value.VertexAttribTypeVal);
559 break;
560 case ParamType::TcharConstPointer:
561 WriteParamValueReplay<ParamType::TcharConstPointer>(os, call,
562 param.value.charConstPointerVal);
563 break;
564 case ParamType::TvoidConstPointer:
565 WriteParamValueReplay<ParamType::TvoidConstPointer>(os, call,
566 param.value.voidConstPointerVal);
567 break;
568 case ParamType::TvoidConstPointerPointer:
569 WriteParamValueReplay<ParamType::TvoidConstPointerPointer>(
570 os, call, param.value.voidConstPointerPointerVal);
571 break;
572 case ParamType::TvoidPointer:
573 WriteParamValueReplay<ParamType::TvoidPointer>(os, call, param.value.voidPointerVal);
574 break;
575 case ParamType::TvoidPointerPointer:
576 WriteParamValueReplay<ParamType::TvoidPointerPointer>(
577 os, call, param.value.voidPointerPointerVal);
578 break;
579 default:
580 os << "unknown";
581 break;
582 }
583 }
584
ParamTypeToString(ParamType paramType)585 const char *ParamTypeToString(ParamType paramType)
586 {
587 switch (paramType)
588 {
589 case ParamType::TAHardwareBufferConstPointer:
590 return "const GLenum *";
591 case ParamType::TAlphaTestFunc:
592 return "GLenum";
593 case ParamType::TBufferBinding:
594 return "GLenum";
595 case ParamType::TBufferID:
596 return "GLuint";
597 case ParamType::TBufferIDConstPointer:
598 return "const GLuint *";
599 case ParamType::TBufferIDPointer:
600 return "GLuint *";
601 case ParamType::TBufferUsage:
602 return "GLenum";
603 case ParamType::TClientVertexArrayType:
604 return "GLenum";
605 case ParamType::TCompositorTiming:
606 return "GLenum";
607 case ParamType::TCullFaceMode:
608 return "GLenum";
609 case ParamType::TDrawElementsType:
610 return "GLenum";
611 case ParamType::TEGLAttrib:
612 return "GLenum";
613 case ParamType::TEGLAttribKHR:
614 return "GLenum";
615 case ParamType::TEGLClientBuffer:
616 return "GLenum";
617 case ParamType::TEGLConfig:
618 return "GLenum";
619 case ParamType::TEGLContext:
620 return "GLenum";
621 case ParamType::TEGLDEBUGPROCKHR:
622 return "GLenum";
623 case ParamType::TEGLDeviceEXT:
624 return "GLenum";
625 case ParamType::TEGLDisplay:
626 return "GLenum";
627 case ParamType::TEGLFrameTokenANGLE:
628 return "GLenum";
629 case ParamType::TEGLGetBlobFuncANDROID:
630 return "GLuint";
631 case ParamType::TEGLImage:
632 return "GLenum";
633 case ParamType::TEGLLabelKHR:
634 return "GLenum";
635 case ParamType::TEGLNativeDisplayType:
636 return "GLenum";
637 case ParamType::TEGLNativePixmapType:
638 return "GLenum";
639 case ParamType::TEGLNativeWindowType:
640 return "GLenum";
641 case ParamType::TEGLObjectKHR:
642 return "GLenum";
643 case ParamType::TEGLSetBlobFuncANDROID:
644 return "GLuint";
645 case ParamType::TEGLStreamKHR:
646 return "GLenum";
647 case ParamType::TEGLSurface:
648 return "GLenum";
649 case ParamType::TEGLSync:
650 return "GLenum";
651 case ParamType::TEGLTime:
652 return "GLenum";
653 case ParamType::TEGLTimeKHR:
654 return "GLenum";
655 case ParamType::TEGLenum:
656 return "GLenum";
657 case ParamType::TEGLint:
658 return "GLenum";
659 case ParamType::TEGLnsecsANDROID:
660 return "GLuint";
661 case ParamType::TEGLuint64KHR:
662 return "GLenum";
663 case ParamType::TFenceNVID:
664 return "GLuint";
665 case ParamType::TFenceNVIDConstPointer:
666 return "const GLuint *";
667 case ParamType::TFenceNVIDPointer:
668 return "GLuint *";
669 case ParamType::TFramebufferID:
670 return "GLuint";
671 case ParamType::TFramebufferIDConstPointer:
672 return "const GLuint *";
673 case ParamType::TFramebufferIDPointer:
674 return "GLuint *";
675 case ParamType::TGLDEBUGPROC:
676 return "GLDEBUGPROC";
677 case ParamType::TGLDEBUGPROCKHR:
678 return "GLDEBUGPROCKHR";
679 case ParamType::TGLbitfield:
680 return "GLbitfield";
681 case ParamType::TGLboolean:
682 return "GLboolean";
683 case ParamType::TGLbooleanConstPointer:
684 return "const GLboolean *";
685 case ParamType::TGLbooleanPointer:
686 return "GLboolean *";
687 case ParamType::TGLbyte:
688 return "GLbyte";
689 case ParamType::TGLbyteConstPointer:
690 return "const GLbyte *";
691 case ParamType::TGLcharConstPointer:
692 return "const GLchar *";
693 case ParamType::TGLcharConstPointerPointer:
694 return "const GLchar * const *";
695 case ParamType::TGLcharPointer:
696 return "GLchar *";
697 case ParamType::TGLclampx:
698 return "GLclampx";
699 case ParamType::TGLdouble:
700 return "GLdouble";
701 case ParamType::TGLdoubleConstPointer:
702 return "const GLdouble *";
703 case ParamType::TGLdoublePointer:
704 return "GLdouble *";
705 case ParamType::TGLeglClientBufferEXT:
706 return "GLeglClientBufferEXT";
707 case ParamType::TGLeglImageOES:
708 return "GLeglImageOES";
709 case ParamType::TGLenum:
710 return "GLenum";
711 case ParamType::TGLenumConstPointer:
712 return "const GLenum *";
713 case ParamType::TGLenumPointer:
714 return "GLenum *";
715 case ParamType::TGLfixed:
716 return "GLfixed";
717 case ParamType::TGLfixedConstPointer:
718 return "const GLfixed *";
719 case ParamType::TGLfixedPointer:
720 return "GLfixed *";
721 case ParamType::TGLfloat:
722 return "GLfloat";
723 case ParamType::TGLfloatConstPointer:
724 return "const GLfloat *";
725 case ParamType::TGLfloatPointer:
726 return "GLfloat *";
727 case ParamType::TGLint:
728 return "GLint";
729 case ParamType::TGLint64Pointer:
730 return "GLint64 *";
731 case ParamType::TGLintConstPointer:
732 return "const GLint *";
733 case ParamType::TGLintPointer:
734 return "GLint *";
735 case ParamType::TGLintptr:
736 return "GLintptr";
737 case ParamType::TGLintptrConstPointer:
738 return "const GLintptr *";
739 case ParamType::TGLshort:
740 return "GLshort";
741 case ParamType::TGLshortConstPointer:
742 return "const GLshort *";
743 case ParamType::TGLsizei:
744 return "GLsizei";
745 case ParamType::TGLsizeiConstPointer:
746 return "const GLsizei *";
747 case ParamType::TGLsizeiPointer:
748 return "GLsizei *";
749 case ParamType::TGLsizeiptr:
750 return "GLsizeiptr";
751 case ParamType::TGLsizeiptrConstPointer:
752 return "const GLsizeiptr *";
753 case ParamType::TGLsync:
754 return "GLsync";
755 case ParamType::TGLubyte:
756 return "GLubyte";
757 case ParamType::TGLubyteConstPointer:
758 return "const GLubyte *";
759 case ParamType::TGLubytePointer:
760 return "GLubyte *";
761 case ParamType::TGLuint:
762 return "GLuint";
763 case ParamType::TGLuint64:
764 return "GLuint64";
765 case ParamType::TGLuint64ConstPointer:
766 return "const GLuint64 *";
767 case ParamType::TGLuint64Pointer:
768 return "GLuint64 *";
769 case ParamType::TGLuintConstPointer:
770 return "const GLuint *";
771 case ParamType::TGLuintPointer:
772 return "GLuint *";
773 case ParamType::TGLushort:
774 return "GLushort";
775 case ParamType::TGLushortConstPointer:
776 return "const GLushort *";
777 case ParamType::TGLushortPointer:
778 return "GLushort *";
779 case ParamType::TGLvoidConstPointer:
780 return "const GLvoid *";
781 case ParamType::TGLvoidConstPointerPointer:
782 return "const GLvoid * const *";
783 case ParamType::TGraphicsResetStatus:
784 return "GLenum";
785 case ParamType::THandleType:
786 return "GLenum";
787 case ParamType::TLightParameter:
788 return "GLenum";
789 case ParamType::TLogicalOperation:
790 return "GLenum";
791 case ParamType::TMaterialParameter:
792 return "GLenum";
793 case ParamType::TMatrixType:
794 return "GLenum";
795 case ParamType::TMemoryObjectID:
796 return "GLuint";
797 case ParamType::TMemoryObjectIDConstPointer:
798 return "const GLuint *";
799 case ParamType::TMemoryObjectIDPointer:
800 return "GLuint *";
801 case ParamType::TObjectType:
802 return "GLenum";
803 case ParamType::TPointParameter:
804 return "GLenum";
805 case ParamType::TPrimitiveMode:
806 return "GLenum";
807 case ParamType::TProgramPipelineID:
808 return "GLuint";
809 case ParamType::TProgramPipelineIDConstPointer:
810 return "const GLuint *";
811 case ParamType::TProgramPipelineIDPointer:
812 return "GLuint *";
813 case ParamType::TProvokingVertexConvention:
814 return "GLenum";
815 case ParamType::TQueryID:
816 return "GLuint";
817 case ParamType::TQueryIDConstPointer:
818 return "const GLuint *";
819 case ParamType::TQueryIDPointer:
820 return "GLuint *";
821 case ParamType::TQueryType:
822 return "GLenum";
823 case ParamType::TRenderbufferID:
824 return "GLuint";
825 case ParamType::TRenderbufferIDConstPointer:
826 return "const GLuint *";
827 case ParamType::TRenderbufferIDPointer:
828 return "GLuint *";
829 case ParamType::TSamplerID:
830 return "GLuint";
831 case ParamType::TSamplerIDConstPointer:
832 return "const GLuint *";
833 case ParamType::TSamplerIDPointer:
834 return "GLuint *";
835 case ParamType::TSemaphoreID:
836 return "GLuint";
837 case ParamType::TSemaphoreIDConstPointer:
838 return "const GLuint *";
839 case ParamType::TSemaphoreIDPointer:
840 return "GLuint *";
841 case ParamType::TShaderProgramID:
842 return "GLuint";
843 case ParamType::TShaderProgramIDConstPointer:
844 return "const GLuint *";
845 case ParamType::TShaderProgramIDPointer:
846 return "GLuint *";
847 case ParamType::TShaderType:
848 return "GLenum";
849 case ParamType::TShadingModel:
850 return "GLenum";
851 case ParamType::TTextureEnvParameter:
852 return "GLenum";
853 case ParamType::TTextureEnvTarget:
854 return "GLenum";
855 case ParamType::TTextureID:
856 return "GLuint";
857 case ParamType::TTextureIDConstPointer:
858 return "const GLuint *";
859 case ParamType::TTextureIDPointer:
860 return "GLuint *";
861 case ParamType::TTextureTarget:
862 return "GLenum";
863 case ParamType::TTextureType:
864 return "GLenum";
865 case ParamType::TTimestamp:
866 return "GLenum";
867 case ParamType::TTransformFeedbackID:
868 return "GLuint";
869 case ParamType::TTransformFeedbackIDConstPointer:
870 return "const GLuint *";
871 case ParamType::TTransformFeedbackIDPointer:
872 return "GLuint *";
873 case ParamType::TUniformBlockIndex:
874 return "GLenum";
875 case ParamType::TUniformLocation:
876 return "GLenum";
877 case ParamType::TVertexArrayID:
878 return "GLuint";
879 case ParamType::TVertexArrayIDConstPointer:
880 return "const GLuint *";
881 case ParamType::TVertexArrayIDPointer:
882 return "GLuint *";
883 case ParamType::TVertexAttribType:
884 return "GLenum";
885 case ParamType::TcharConstPointer:
886 return "const GLenum *";
887 case ParamType::TvoidConstPointer:
888 return "const void *";
889 case ParamType::TvoidConstPointerPointer:
890 return "const void * const *";
891 case ParamType::TvoidPointer:
892 return "void *";
893 case ParamType::TvoidPointerPointer:
894 return "void **";
895 default:
896 UNREACHABLE();
897 return "unknown";
898 }
899 }
900
GetResourceIDTypeFromParamType(ParamType paramType)901 ResourceIDType GetResourceIDTypeFromParamType(ParamType paramType)
902 {
903 switch (paramType)
904 {
905 case ParamType::TBufferID:
906 return ResourceIDType::Buffer;
907 case ParamType::TBufferIDConstPointer:
908 return ResourceIDType::Buffer;
909 case ParamType::TBufferIDPointer:
910 return ResourceIDType::Buffer;
911 case ParamType::TFenceNVID:
912 return ResourceIDType::FenceNV;
913 case ParamType::TFenceNVIDConstPointer:
914 return ResourceIDType::FenceNV;
915 case ParamType::TFenceNVIDPointer:
916 return ResourceIDType::FenceNV;
917 case ParamType::TFramebufferID:
918 return ResourceIDType::Framebuffer;
919 case ParamType::TFramebufferIDConstPointer:
920 return ResourceIDType::Framebuffer;
921 case ParamType::TFramebufferIDPointer:
922 return ResourceIDType::Framebuffer;
923 case ParamType::TMemoryObjectID:
924 return ResourceIDType::MemoryObject;
925 case ParamType::TMemoryObjectIDConstPointer:
926 return ResourceIDType::MemoryObject;
927 case ParamType::TMemoryObjectIDPointer:
928 return ResourceIDType::MemoryObject;
929 case ParamType::TProgramPipelineID:
930 return ResourceIDType::ProgramPipeline;
931 case ParamType::TProgramPipelineIDConstPointer:
932 return ResourceIDType::ProgramPipeline;
933 case ParamType::TProgramPipelineIDPointer:
934 return ResourceIDType::ProgramPipeline;
935 case ParamType::TQueryID:
936 return ResourceIDType::Query;
937 case ParamType::TQueryIDConstPointer:
938 return ResourceIDType::Query;
939 case ParamType::TQueryIDPointer:
940 return ResourceIDType::Query;
941 case ParamType::TRenderbufferID:
942 return ResourceIDType::Renderbuffer;
943 case ParamType::TRenderbufferIDConstPointer:
944 return ResourceIDType::Renderbuffer;
945 case ParamType::TRenderbufferIDPointer:
946 return ResourceIDType::Renderbuffer;
947 case ParamType::TSamplerID:
948 return ResourceIDType::Sampler;
949 case ParamType::TSamplerIDConstPointer:
950 return ResourceIDType::Sampler;
951 case ParamType::TSamplerIDPointer:
952 return ResourceIDType::Sampler;
953 case ParamType::TSemaphoreID:
954 return ResourceIDType::Semaphore;
955 case ParamType::TSemaphoreIDConstPointer:
956 return ResourceIDType::Semaphore;
957 case ParamType::TSemaphoreIDPointer:
958 return ResourceIDType::Semaphore;
959 case ParamType::TShaderProgramID:
960 return ResourceIDType::ShaderProgram;
961 case ParamType::TShaderProgramIDConstPointer:
962 return ResourceIDType::ShaderProgram;
963 case ParamType::TShaderProgramIDPointer:
964 return ResourceIDType::ShaderProgram;
965 case ParamType::TTextureID:
966 return ResourceIDType::Texture;
967 case ParamType::TTextureIDConstPointer:
968 return ResourceIDType::Texture;
969 case ParamType::TTextureIDPointer:
970 return ResourceIDType::Texture;
971 case ParamType::TTransformFeedbackID:
972 return ResourceIDType::TransformFeedback;
973 case ParamType::TTransformFeedbackIDConstPointer:
974 return ResourceIDType::TransformFeedback;
975 case ParamType::TTransformFeedbackIDPointer:
976 return ResourceIDType::TransformFeedback;
977 case ParamType::TVertexArrayID:
978 return ResourceIDType::VertexArray;
979 case ParamType::TVertexArrayIDConstPointer:
980 return ResourceIDType::VertexArray;
981 case ParamType::TVertexArrayIDPointer:
982 return ResourceIDType::VertexArray;
983 default:
984 return ResourceIDType::InvalidEnum;
985 }
986 }
987
GetResourceIDTypeName(ResourceIDType resourceIDType)988 const char *GetResourceIDTypeName(ResourceIDType resourceIDType)
989 {
990 switch (resourceIDType)
991 {
992 case ResourceIDType::Buffer:
993 return "Buffer";
994 case ResourceIDType::FenceNV:
995 return "FenceNV";
996 case ResourceIDType::Framebuffer:
997 return "Framebuffer";
998 case ResourceIDType::MemoryObject:
999 return "MemoryObject";
1000 case ResourceIDType::ProgramPipeline:
1001 return "ProgramPipeline";
1002 case ResourceIDType::Query:
1003 return "Query";
1004 case ResourceIDType::Renderbuffer:
1005 return "Renderbuffer";
1006 case ResourceIDType::Sampler:
1007 return "Sampler";
1008 case ResourceIDType::Semaphore:
1009 return "Semaphore";
1010 case ResourceIDType::ShaderProgram:
1011 return "ShaderProgram";
1012 case ResourceIDType::Texture:
1013 return "Texture";
1014 case ResourceIDType::TransformFeedback:
1015 return "TransformFeedback";
1016 case ResourceIDType::VertexArray:
1017 return "VertexArray";
1018 default:
1019 UNREACHABLE();
1020 return "GetResourceIDTypeName error";
1021 }
1022 }
1023 } // namespace angle
1024