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 "common/frame_capture_utils_autogen.h"
12
13 #include "common/frame_capture_utils.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::TClipDepthMode:
52 WriteParamValueReplay<ParamType::TClipDepthMode>(os, call,
53 param.value.ClipDepthModeVal);
54 break;
55 case ParamType::TClipOrigin:
56 WriteParamValueReplay<ParamType::TClipOrigin>(os, call, param.value.ClipOriginVal);
57 break;
58 case ParamType::TCompositorTiming:
59 WriteParamValueReplay<ParamType::TCompositorTiming>(os, call,
60 param.value.CompositorTimingVal);
61 break;
62 case ParamType::TContextID:
63 WriteParamValueReplay<ParamType::TContextID>(os, call, param.value.ContextIDVal);
64 break;
65 case ParamType::TCullFaceMode:
66 WriteParamValueReplay<ParamType::TCullFaceMode>(os, call, param.value.CullFaceModeVal);
67 break;
68 case ParamType::TDrawElementsType:
69 WriteParamValueReplay<ParamType::TDrawElementsType>(os, call,
70 param.value.DrawElementsTypeVal);
71 break;
72 case ParamType::TEGLAttribConstPointer:
73 WriteParamValueReplay<ParamType::TEGLAttribConstPointer>(
74 os, call, param.value.EGLAttribConstPointerVal);
75 break;
76 case ParamType::TEGLAttribKHRPointer:
77 WriteParamValueReplay<ParamType::TEGLAttribKHRPointer>(
78 os, call, param.value.EGLAttribKHRPointerVal);
79 break;
80 case ParamType::TEGLAttribPointer:
81 WriteParamValueReplay<ParamType::TEGLAttribPointer>(os, call,
82 param.value.EGLAttribPointerVal);
83 break;
84 case ParamType::TEGLBoolean:
85 WriteParamValueReplay<ParamType::TEGLBoolean>(os, call, param.value.EGLBooleanVal);
86 break;
87 case ParamType::TEGLBooleanPointer:
88 WriteParamValueReplay<ParamType::TEGLBooleanPointer>(os, call,
89 param.value.EGLBooleanPointerVal);
90 break;
91 case ParamType::TEGLClientBuffer:
92 WriteParamValueReplay<ParamType::TEGLClientBuffer>(os, call,
93 param.value.EGLClientBufferVal);
94 break;
95 case ParamType::TEGLConfigPointer:
96 WriteParamValueReplay<ParamType::TEGLConfigPointer>(os, call,
97 param.value.EGLConfigPointerVal);
98 break;
99 case ParamType::TEGLContext:
100 WriteParamValueReplay<ParamType::TEGLContext>(os, call, param.value.EGLContextVal);
101 break;
102 case ParamType::TEGLDEBUGPROCKHR:
103 WriteParamValueReplay<ParamType::TEGLDEBUGPROCKHR>(os, call,
104 param.value.EGLDEBUGPROCKHRVal);
105 break;
106 case ParamType::TEGLDeviceEXT:
107 WriteParamValueReplay<ParamType::TEGLDeviceEXT>(os, call, param.value.EGLDeviceEXTVal);
108 break;
109 case ParamType::TEGLDisplay:
110 WriteParamValueReplay<ParamType::TEGLDisplay>(os, call, param.value.EGLDisplayVal);
111 break;
112 case ParamType::TEGLFrameTokenANGLE:
113 WriteParamValueReplay<ParamType::TEGLFrameTokenANGLE>(
114 os, call, param.value.EGLFrameTokenANGLEVal);
115 break;
116 case ParamType::TEGLGetBlobFuncANDROID:
117 WriteParamValueReplay<ParamType::TEGLGetBlobFuncANDROID>(
118 os, call, param.value.EGLGetBlobFuncANDROIDVal);
119 break;
120 case ParamType::TEGLImage:
121 WriteParamValueReplay<ParamType::TEGLImage>(os, call, param.value.EGLImageVal);
122 break;
123 case ParamType::TEGLImageKHR:
124 WriteParamValueReplay<ParamType::TEGLImageKHR>(os, call, param.value.EGLImageKHRVal);
125 break;
126 case ParamType::TEGLLabelKHR:
127 WriteParamValueReplay<ParamType::TEGLLabelKHR>(os, call, param.value.EGLLabelKHRVal);
128 break;
129 case ParamType::TEGLNativeDisplayType:
130 WriteParamValueReplay<ParamType::TEGLNativeDisplayType>(
131 os, call, param.value.EGLNativeDisplayTypeVal);
132 break;
133 case ParamType::TEGLNativePixmapType:
134 WriteParamValueReplay<ParamType::TEGLNativePixmapType>(
135 os, call, param.value.EGLNativePixmapTypeVal);
136 break;
137 case ParamType::TEGLNativeWindowType:
138 WriteParamValueReplay<ParamType::TEGLNativeWindowType>(
139 os, call, param.value.EGLNativeWindowTypeVal);
140 break;
141 case ParamType::TEGLObjectKHR:
142 WriteParamValueReplay<ParamType::TEGLObjectKHR>(os, call, param.value.EGLObjectKHRVal);
143 break;
144 case ParamType::TEGLSetBlobFuncANDROID:
145 WriteParamValueReplay<ParamType::TEGLSetBlobFuncANDROID>(
146 os, call, param.value.EGLSetBlobFuncANDROIDVal);
147 break;
148 case ParamType::TEGLStreamKHR:
149 WriteParamValueReplay<ParamType::TEGLStreamKHR>(os, call, param.value.EGLStreamKHRVal);
150 break;
151 case ParamType::TEGLSurface:
152 WriteParamValueReplay<ParamType::TEGLSurface>(os, call, param.value.EGLSurfaceVal);
153 break;
154 case ParamType::TEGLSync:
155 WriteParamValueReplay<ParamType::TEGLSync>(os, call, param.value.EGLSyncVal);
156 break;
157 case ParamType::TEGLSyncKHR:
158 WriteParamValueReplay<ParamType::TEGLSyncKHR>(os, call, param.value.EGLSyncKHRVal);
159 break;
160 case ParamType::TEGLTime:
161 WriteParamValueReplay<ParamType::TEGLTime>(os, call, param.value.EGLTimeVal);
162 break;
163 case ParamType::TEGLTimeKHR:
164 WriteParamValueReplay<ParamType::TEGLTimeKHR>(os, call, param.value.EGLTimeKHRVal);
165 break;
166 case ParamType::TEGLenum:
167 WriteParamValueReplay<ParamType::TEGLenum>(os, call, param.value.EGLenumVal);
168 break;
169 case ParamType::TEGLint:
170 WriteParamValueReplay<ParamType::TEGLint>(os, call, param.value.EGLintVal);
171 break;
172 case ParamType::TEGLintConstPointer:
173 WriteParamValueReplay<ParamType::TEGLintConstPointer>(
174 os, call, param.value.EGLintConstPointerVal);
175 break;
176 case ParamType::TEGLintPointer:
177 WriteParamValueReplay<ParamType::TEGLintPointer>(os, call,
178 param.value.EGLintPointerVal);
179 break;
180 case ParamType::TEGLnsecsANDROID:
181 WriteParamValueReplay<ParamType::TEGLnsecsANDROID>(os, call,
182 param.value.EGLnsecsANDROIDVal);
183 break;
184 case ParamType::TEGLnsecsANDROIDPointer:
185 WriteParamValueReplay<ParamType::TEGLnsecsANDROIDPointer>(
186 os, call, param.value.EGLnsecsANDROIDPointerVal);
187 break;
188 case ParamType::TEGLuint64KHR:
189 WriteParamValueReplay<ParamType::TEGLuint64KHR>(os, call, param.value.EGLuint64KHRVal);
190 break;
191 case ParamType::TEGLuint64KHRPointer:
192 WriteParamValueReplay<ParamType::TEGLuint64KHRPointer>(
193 os, call, param.value.EGLuint64KHRPointerVal);
194 break;
195 case ParamType::TFenceNVID:
196 WriteParamValueReplay<ParamType::TFenceNVID>(os, call, param.value.FenceNVIDVal);
197 break;
198 case ParamType::TFenceNVIDConstPointer:
199 WriteParamValueReplay<ParamType::TFenceNVIDConstPointer>(
200 os, call, param.value.FenceNVIDConstPointerVal);
201 break;
202 case ParamType::TFenceNVIDPointer:
203 WriteParamValueReplay<ParamType::TFenceNVIDPointer>(os, call,
204 param.value.FenceNVIDPointerVal);
205 break;
206 case ParamType::TFramebufferID:
207 WriteParamValueReplay<ParamType::TFramebufferID>(os, call,
208 param.value.FramebufferIDVal);
209 break;
210 case ParamType::TFramebufferIDConstPointer:
211 WriteParamValueReplay<ParamType::TFramebufferIDConstPointer>(
212 os, call, param.value.FramebufferIDConstPointerVal);
213 break;
214 case ParamType::TFramebufferIDPointer:
215 WriteParamValueReplay<ParamType::TFramebufferIDPointer>(
216 os, call, param.value.FramebufferIDPointerVal);
217 break;
218 case ParamType::TGLDEBUGPROC:
219 WriteParamValueReplay<ParamType::TGLDEBUGPROC>(os, call, param.value.GLDEBUGPROCVal);
220 break;
221 case ParamType::TGLDEBUGPROCKHR:
222 WriteParamValueReplay<ParamType::TGLDEBUGPROCKHR>(os, call,
223 param.value.GLDEBUGPROCKHRVal);
224 break;
225 case ParamType::TGLbitfield:
226 WriteParamValueReplay<ParamType::TGLbitfield>(os, call, param.value.GLbitfieldVal);
227 break;
228 case ParamType::TGLboolean:
229 WriteParamValueReplay<ParamType::TGLboolean>(os, call, param.value.GLbooleanVal);
230 break;
231 case ParamType::TGLbooleanConstPointer:
232 WriteParamValueReplay<ParamType::TGLbooleanConstPointer>(
233 os, call, param.value.GLbooleanConstPointerVal);
234 break;
235 case ParamType::TGLbooleanPointer:
236 WriteParamValueReplay<ParamType::TGLbooleanPointer>(os, call,
237 param.value.GLbooleanPointerVal);
238 break;
239 case ParamType::TGLbyte:
240 WriteParamValueReplay<ParamType::TGLbyte>(os, call, param.value.GLbyteVal);
241 break;
242 case ParamType::TGLbyteConstPointer:
243 WriteParamValueReplay<ParamType::TGLbyteConstPointer>(
244 os, call, param.value.GLbyteConstPointerVal);
245 break;
246 case ParamType::TGLcharConstPointer:
247 WriteParamValueReplay<ParamType::TGLcharConstPointer>(
248 os, call, param.value.GLcharConstPointerVal);
249 break;
250 case ParamType::TGLcharConstPointerPointer:
251 WriteParamValueReplay<ParamType::TGLcharConstPointerPointer>(
252 os, call, param.value.GLcharConstPointerPointerVal);
253 break;
254 case ParamType::TGLcharPointer:
255 WriteParamValueReplay<ParamType::TGLcharPointer>(os, call,
256 param.value.GLcharPointerVal);
257 break;
258 case ParamType::TGLclampx:
259 WriteParamValueReplay<ParamType::TGLclampx>(os, call, param.value.GLclampxVal);
260 break;
261 case ParamType::TGLdouble:
262 WriteParamValueReplay<ParamType::TGLdouble>(os, call, param.value.GLdoubleVal);
263 break;
264 case ParamType::TGLdoubleConstPointer:
265 WriteParamValueReplay<ParamType::TGLdoubleConstPointer>(
266 os, call, param.value.GLdoubleConstPointerVal);
267 break;
268 case ParamType::TGLdoublePointer:
269 WriteParamValueReplay<ParamType::TGLdoublePointer>(os, call,
270 param.value.GLdoublePointerVal);
271 break;
272 case ParamType::TGLeglClientBufferEXT:
273 WriteParamValueReplay<ParamType::TGLeglClientBufferEXT>(
274 os, call, param.value.GLeglClientBufferEXTVal);
275 break;
276 case ParamType::TGLenum:
277 WriteParamValueReplay<ParamType::TGLenum>(os, call, param.value.GLenumVal);
278 break;
279 case ParamType::TGLenumConstPointer:
280 WriteParamValueReplay<ParamType::TGLenumConstPointer>(
281 os, call, param.value.GLenumConstPointerVal);
282 break;
283 case ParamType::TGLenumPointer:
284 WriteParamValueReplay<ParamType::TGLenumPointer>(os, call,
285 param.value.GLenumPointerVal);
286 break;
287 case ParamType::TGLfixed:
288 WriteParamValueReplay<ParamType::TGLfixed>(os, call, param.value.GLfixedVal);
289 break;
290 case ParamType::TGLfixedConstPointer:
291 WriteParamValueReplay<ParamType::TGLfixedConstPointer>(
292 os, call, param.value.GLfixedConstPointerVal);
293 break;
294 case ParamType::TGLfixedPointer:
295 WriteParamValueReplay<ParamType::TGLfixedPointer>(os, call,
296 param.value.GLfixedPointerVal);
297 break;
298 case ParamType::TGLfloat:
299 WriteParamValueReplay<ParamType::TGLfloat>(os, call, param.value.GLfloatVal);
300 break;
301 case ParamType::TGLfloatConstPointer:
302 WriteParamValueReplay<ParamType::TGLfloatConstPointer>(
303 os, call, param.value.GLfloatConstPointerVal);
304 break;
305 case ParamType::TGLfloatPointer:
306 WriteParamValueReplay<ParamType::TGLfloatPointer>(os, call,
307 param.value.GLfloatPointerVal);
308 break;
309 case ParamType::TGLint:
310 WriteParamValueReplay<ParamType::TGLint>(os, call, param.value.GLintVal);
311 break;
312 case ParamType::TGLint64:
313 WriteParamValueReplay<ParamType::TGLint64>(os, call, param.value.GLint64Val);
314 break;
315 case ParamType::TGLint64Pointer:
316 WriteParamValueReplay<ParamType::TGLint64Pointer>(os, call,
317 param.value.GLint64PointerVal);
318 break;
319 case ParamType::TGLintConstPointer:
320 WriteParamValueReplay<ParamType::TGLintConstPointer>(os, call,
321 param.value.GLintConstPointerVal);
322 break;
323 case ParamType::TGLintPointer:
324 WriteParamValueReplay<ParamType::TGLintPointer>(os, call, param.value.GLintPointerVal);
325 break;
326 case ParamType::TGLintptr:
327 WriteParamValueReplay<ParamType::TGLintptr>(os, call, param.value.GLintptrVal);
328 break;
329 case ParamType::TGLintptrConstPointer:
330 WriteParamValueReplay<ParamType::TGLintptrConstPointer>(
331 os, call, param.value.GLintptrConstPointerVal);
332 break;
333 case ParamType::TGLshort:
334 WriteParamValueReplay<ParamType::TGLshort>(os, call, param.value.GLshortVal);
335 break;
336 case ParamType::TGLshortConstPointer:
337 WriteParamValueReplay<ParamType::TGLshortConstPointer>(
338 os, call, param.value.GLshortConstPointerVal);
339 break;
340 case ParamType::TGLsizei:
341 WriteParamValueReplay<ParamType::TGLsizei>(os, call, param.value.GLsizeiVal);
342 break;
343 case ParamType::TGLsizeiConstPointer:
344 WriteParamValueReplay<ParamType::TGLsizeiConstPointer>(
345 os, call, param.value.GLsizeiConstPointerVal);
346 break;
347 case ParamType::TGLsizeiPointer:
348 WriteParamValueReplay<ParamType::TGLsizeiPointer>(os, call,
349 param.value.GLsizeiPointerVal);
350 break;
351 case ParamType::TGLsizeiptr:
352 WriteParamValueReplay<ParamType::TGLsizeiptr>(os, call, param.value.GLsizeiptrVal);
353 break;
354 case ParamType::TGLsizeiptrConstPointer:
355 WriteParamValueReplay<ParamType::TGLsizeiptrConstPointer>(
356 os, call, param.value.GLsizeiptrConstPointerVal);
357 break;
358 case ParamType::TGLsync:
359 WriteParamValueReplay<ParamType::TGLsync>(os, call, param.value.GLsyncVal);
360 break;
361 case ParamType::TGLubyte:
362 WriteParamValueReplay<ParamType::TGLubyte>(os, call, param.value.GLubyteVal);
363 break;
364 case ParamType::TGLubyteConstPointer:
365 WriteParamValueReplay<ParamType::TGLubyteConstPointer>(
366 os, call, param.value.GLubyteConstPointerVal);
367 break;
368 case ParamType::TGLubytePointer:
369 WriteParamValueReplay<ParamType::TGLubytePointer>(os, call,
370 param.value.GLubytePointerVal);
371 break;
372 case ParamType::TGLuint:
373 WriteParamValueReplay<ParamType::TGLuint>(os, call, param.value.GLuintVal);
374 break;
375 case ParamType::TGLuint64:
376 WriteParamValueReplay<ParamType::TGLuint64>(os, call, param.value.GLuint64Val);
377 break;
378 case ParamType::TGLuint64ConstPointer:
379 WriteParamValueReplay<ParamType::TGLuint64ConstPointer>(
380 os, call, param.value.GLuint64ConstPointerVal);
381 break;
382 case ParamType::TGLuint64Pointer:
383 WriteParamValueReplay<ParamType::TGLuint64Pointer>(os, call,
384 param.value.GLuint64PointerVal);
385 break;
386 case ParamType::TGLuintConstPointer:
387 WriteParamValueReplay<ParamType::TGLuintConstPointer>(
388 os, call, param.value.GLuintConstPointerVal);
389 break;
390 case ParamType::TGLuintPointer:
391 WriteParamValueReplay<ParamType::TGLuintPointer>(os, call,
392 param.value.GLuintPointerVal);
393 break;
394 case ParamType::TGLushort:
395 WriteParamValueReplay<ParamType::TGLushort>(os, call, param.value.GLushortVal);
396 break;
397 case ParamType::TGLushortConstPointer:
398 WriteParamValueReplay<ParamType::TGLushortConstPointer>(
399 os, call, param.value.GLushortConstPointerVal);
400 break;
401 case ParamType::TGLushortPointer:
402 WriteParamValueReplay<ParamType::TGLushortPointer>(os, call,
403 param.value.GLushortPointerVal);
404 break;
405 case ParamType::TGraphicsResetStatus:
406 WriteParamValueReplay<ParamType::TGraphicsResetStatus>(
407 os, call, param.value.GraphicsResetStatusVal);
408 break;
409 case ParamType::THandleType:
410 WriteParamValueReplay<ParamType::THandleType>(os, call, param.value.HandleTypeVal);
411 break;
412 case ParamType::TImageID:
413 WriteParamValueReplay<ParamType::TImageID>(os, call, param.value.ImageIDVal);
414 break;
415 case ParamType::TLightParameter:
416 WriteParamValueReplay<ParamType::TLightParameter>(os, call,
417 param.value.LightParameterVal);
418 break;
419 case ParamType::TLogicalOperation:
420 WriteParamValueReplay<ParamType::TLogicalOperation>(os, call,
421 param.value.LogicalOperationVal);
422 break;
423 case ParamType::TMaterialParameter:
424 WriteParamValueReplay<ParamType::TMaterialParameter>(os, call,
425 param.value.MaterialParameterVal);
426 break;
427 case ParamType::TMatrixType:
428 WriteParamValueReplay<ParamType::TMatrixType>(os, call, param.value.MatrixTypeVal);
429 break;
430 case ParamType::TMemoryObjectID:
431 WriteParamValueReplay<ParamType::TMemoryObjectID>(os, call,
432 param.value.MemoryObjectIDVal);
433 break;
434 case ParamType::TMemoryObjectIDConstPointer:
435 WriteParamValueReplay<ParamType::TMemoryObjectIDConstPointer>(
436 os, call, param.value.MemoryObjectIDConstPointerVal);
437 break;
438 case ParamType::TMemoryObjectIDPointer:
439 WriteParamValueReplay<ParamType::TMemoryObjectIDPointer>(
440 os, call, param.value.MemoryObjectIDPointerVal);
441 break;
442 case ParamType::TObjectType:
443 WriteParamValueReplay<ParamType::TObjectType>(os, call, param.value.ObjectTypeVal);
444 break;
445 case ParamType::TPointParameter:
446 WriteParamValueReplay<ParamType::TPointParameter>(os, call,
447 param.value.PointParameterVal);
448 break;
449 case ParamType::TPolygonMode:
450 WriteParamValueReplay<ParamType::TPolygonMode>(os, call, param.value.PolygonModeVal);
451 break;
452 case ParamType::TPrimitiveMode:
453 WriteParamValueReplay<ParamType::TPrimitiveMode>(os, call,
454 param.value.PrimitiveModeVal);
455 break;
456 case ParamType::TProgramPipelineID:
457 WriteParamValueReplay<ParamType::TProgramPipelineID>(os, call,
458 param.value.ProgramPipelineIDVal);
459 break;
460 case ParamType::TProgramPipelineIDConstPointer:
461 WriteParamValueReplay<ParamType::TProgramPipelineIDConstPointer>(
462 os, call, param.value.ProgramPipelineIDConstPointerVal);
463 break;
464 case ParamType::TProgramPipelineIDPointer:
465 WriteParamValueReplay<ParamType::TProgramPipelineIDPointer>(
466 os, call, param.value.ProgramPipelineIDPointerVal);
467 break;
468 case ParamType::TProvokingVertexConvention:
469 WriteParamValueReplay<ParamType::TProvokingVertexConvention>(
470 os, call, param.value.ProvokingVertexConventionVal);
471 break;
472 case ParamType::TQueryID:
473 WriteParamValueReplay<ParamType::TQueryID>(os, call, param.value.QueryIDVal);
474 break;
475 case ParamType::TQueryIDConstPointer:
476 WriteParamValueReplay<ParamType::TQueryIDConstPointer>(
477 os, call, param.value.QueryIDConstPointerVal);
478 break;
479 case ParamType::TQueryIDPointer:
480 WriteParamValueReplay<ParamType::TQueryIDPointer>(os, call,
481 param.value.QueryIDPointerVal);
482 break;
483 case ParamType::TQueryType:
484 WriteParamValueReplay<ParamType::TQueryType>(os, call, param.value.QueryTypeVal);
485 break;
486 case ParamType::TRenderbufferID:
487 WriteParamValueReplay<ParamType::TRenderbufferID>(os, call,
488 param.value.RenderbufferIDVal);
489 break;
490 case ParamType::TRenderbufferIDConstPointer:
491 WriteParamValueReplay<ParamType::TRenderbufferIDConstPointer>(
492 os, call, param.value.RenderbufferIDConstPointerVal);
493 break;
494 case ParamType::TRenderbufferIDPointer:
495 WriteParamValueReplay<ParamType::TRenderbufferIDPointer>(
496 os, call, param.value.RenderbufferIDPointerVal);
497 break;
498 case ParamType::TSamplerID:
499 WriteParamValueReplay<ParamType::TSamplerID>(os, call, param.value.SamplerIDVal);
500 break;
501 case ParamType::TSamplerIDConstPointer:
502 WriteParamValueReplay<ParamType::TSamplerIDConstPointer>(
503 os, call, param.value.SamplerIDConstPointerVal);
504 break;
505 case ParamType::TSamplerIDPointer:
506 WriteParamValueReplay<ParamType::TSamplerIDPointer>(os, call,
507 param.value.SamplerIDPointerVal);
508 break;
509 case ParamType::TSemaphoreID:
510 WriteParamValueReplay<ParamType::TSemaphoreID>(os, call, param.value.SemaphoreIDVal);
511 break;
512 case ParamType::TSemaphoreIDConstPointer:
513 WriteParamValueReplay<ParamType::TSemaphoreIDConstPointer>(
514 os, call, param.value.SemaphoreIDConstPointerVal);
515 break;
516 case ParamType::TSemaphoreIDPointer:
517 WriteParamValueReplay<ParamType::TSemaphoreIDPointer>(
518 os, call, param.value.SemaphoreIDPointerVal);
519 break;
520 case ParamType::TShaderProgramID:
521 WriteParamValueReplay<ParamType::TShaderProgramID>(os, call,
522 param.value.ShaderProgramIDVal);
523 break;
524 case ParamType::TShaderProgramIDConstPointer:
525 WriteParamValueReplay<ParamType::TShaderProgramIDConstPointer>(
526 os, call, param.value.ShaderProgramIDConstPointerVal);
527 break;
528 case ParamType::TShaderProgramIDPointer:
529 WriteParamValueReplay<ParamType::TShaderProgramIDPointer>(
530 os, call, param.value.ShaderProgramIDPointerVal);
531 break;
532 case ParamType::TShaderType:
533 WriteParamValueReplay<ParamType::TShaderType>(os, call, param.value.ShaderTypeVal);
534 break;
535 case ParamType::TShadingModel:
536 WriteParamValueReplay<ParamType::TShadingModel>(os, call, param.value.ShadingModelVal);
537 break;
538 case ParamType::TSurfaceID:
539 WriteParamValueReplay<ParamType::TSurfaceID>(os, call, param.value.SurfaceIDVal);
540 break;
541 case ParamType::TSyncID:
542 WriteParamValueReplay<ParamType::TSyncID>(os, call, param.value.SyncIDVal);
543 break;
544 case ParamType::TTextureEnvParameter:
545 WriteParamValueReplay<ParamType::TTextureEnvParameter>(
546 os, call, param.value.TextureEnvParameterVal);
547 break;
548 case ParamType::TTextureEnvTarget:
549 WriteParamValueReplay<ParamType::TTextureEnvTarget>(os, call,
550 param.value.TextureEnvTargetVal);
551 break;
552 case ParamType::TTextureID:
553 WriteParamValueReplay<ParamType::TTextureID>(os, call, param.value.TextureIDVal);
554 break;
555 case ParamType::TTextureIDConstPointer:
556 WriteParamValueReplay<ParamType::TTextureIDConstPointer>(
557 os, call, param.value.TextureIDConstPointerVal);
558 break;
559 case ParamType::TTextureIDPointer:
560 WriteParamValueReplay<ParamType::TTextureIDPointer>(os, call,
561 param.value.TextureIDPointerVal);
562 break;
563 case ParamType::TTextureTarget:
564 WriteParamValueReplay<ParamType::TTextureTarget>(os, call,
565 param.value.TextureTargetVal);
566 break;
567 case ParamType::TTextureType:
568 WriteParamValueReplay<ParamType::TTextureType>(os, call, param.value.TextureTypeVal);
569 break;
570 case ParamType::TTimestamp:
571 WriteParamValueReplay<ParamType::TTimestamp>(os, call, param.value.TimestampVal);
572 break;
573 case ParamType::TTransformFeedbackID:
574 WriteParamValueReplay<ParamType::TTransformFeedbackID>(
575 os, call, param.value.TransformFeedbackIDVal);
576 break;
577 case ParamType::TTransformFeedbackIDConstPointer:
578 WriteParamValueReplay<ParamType::TTransformFeedbackIDConstPointer>(
579 os, call, param.value.TransformFeedbackIDConstPointerVal);
580 break;
581 case ParamType::TTransformFeedbackIDPointer:
582 WriteParamValueReplay<ParamType::TTransformFeedbackIDPointer>(
583 os, call, param.value.TransformFeedbackIDPointerVal);
584 break;
585 case ParamType::TUniformBlockIndex:
586 WriteParamValueReplay<ParamType::TUniformBlockIndex>(os, call,
587 param.value.UniformBlockIndexVal);
588 break;
589 case ParamType::TUniformLocation:
590 WriteParamValueReplay<ParamType::TUniformLocation>(os, call,
591 param.value.UniformLocationVal);
592 break;
593 case ParamType::TVertexArrayID:
594 WriteParamValueReplay<ParamType::TVertexArrayID>(os, call,
595 param.value.VertexArrayIDVal);
596 break;
597 case ParamType::TVertexArrayIDConstPointer:
598 WriteParamValueReplay<ParamType::TVertexArrayIDConstPointer>(
599 os, call, param.value.VertexArrayIDConstPointerVal);
600 break;
601 case ParamType::TVertexArrayIDPointer:
602 WriteParamValueReplay<ParamType::TVertexArrayIDPointer>(
603 os, call, param.value.VertexArrayIDPointerVal);
604 break;
605 case ParamType::TVertexAttribType:
606 WriteParamValueReplay<ParamType::TVertexAttribType>(os, call,
607 param.value.VertexAttribTypeVal);
608 break;
609 case ParamType::TcharConstPointer:
610 WriteParamValueReplay<ParamType::TcharConstPointer>(os, call,
611 param.value.charConstPointerVal);
612 break;
613 case ParamType::Tegl_ConfigPointer:
614 WriteParamValueReplay<ParamType::Tegl_ConfigPointer>(os, call,
615 param.value.egl_ConfigPointerVal);
616 break;
617 case ParamType::Tegl_DevicePointer:
618 WriteParamValueReplay<ParamType::Tegl_DevicePointer>(os, call,
619 param.value.egl_DevicePointerVal);
620 break;
621 case ParamType::Tegl_DisplayPointer:
622 WriteParamValueReplay<ParamType::Tegl_DisplayPointer>(
623 os, call, param.value.egl_DisplayPointerVal);
624 break;
625 case ParamType::Tegl_StreamPointer:
626 WriteParamValueReplay<ParamType::Tegl_StreamPointer>(os, call,
627 param.value.egl_StreamPointerVal);
628 break;
629 case ParamType::Tegl_SyncID:
630 WriteParamValueReplay<ParamType::Tegl_SyncID>(os, call, param.value.egl_SyncIDVal);
631 break;
632 case ParamType::TvoidConstPointer:
633 WriteParamValueReplay<ParamType::TvoidConstPointer>(os, call,
634 param.value.voidConstPointerVal);
635 break;
636 case ParamType::TvoidConstPointerPointer:
637 WriteParamValueReplay<ParamType::TvoidConstPointerPointer>(
638 os, call, param.value.voidConstPointerPointerVal);
639 break;
640 case ParamType::TvoidPointer:
641 WriteParamValueReplay<ParamType::TvoidPointer>(os, call, param.value.voidPointerVal);
642 break;
643 case ParamType::TvoidPointerPointer:
644 WriteParamValueReplay<ParamType::TvoidPointerPointer>(
645 os, call, param.value.voidPointerPointerVal);
646 break;
647 default:
648 os << "unknown";
649 break;
650 }
651 }
652
ParamTypeToString(ParamType paramType)653 const char *ParamTypeToString(ParamType paramType)
654 {
655 switch (paramType)
656 {
657 case ParamType::TAHardwareBufferConstPointer:
658 return "const GLenum *";
659 case ParamType::TAlphaTestFunc:
660 return "GLenum";
661 case ParamType::TBufferBinding:
662 return "GLenum";
663 case ParamType::TBufferID:
664 return "GLuint";
665 case ParamType::TBufferIDConstPointer:
666 return "const GLuint *";
667 case ParamType::TBufferIDPointer:
668 return "GLuint *";
669 case ParamType::TBufferUsage:
670 return "GLenum";
671 case ParamType::TClientVertexArrayType:
672 return "GLenum";
673 case ParamType::TClipDepthMode:
674 return "GLenum";
675 case ParamType::TClipOrigin:
676 return "GLenum";
677 case ParamType::TCompositorTiming:
678 return "GLenum";
679 case ParamType::TContextID:
680 return "GLuint";
681 case ParamType::TCullFaceMode:
682 return "GLenum";
683 case ParamType::TDrawElementsType:
684 return "GLenum";
685 case ParamType::TEGLAttribConstPointer:
686 return "const EGLAttrib *";
687 case ParamType::TEGLAttribKHRPointer:
688 return "EGLAttribKHR *";
689 case ParamType::TEGLAttribPointer:
690 return "EGLAttrib *";
691 case ParamType::TEGLBoolean:
692 return "EGLBoolean";
693 case ParamType::TEGLBooleanPointer:
694 return "EGLBoolean *";
695 case ParamType::TEGLClientBuffer:
696 return "EGLClientBuffer";
697 case ParamType::TEGLConfigPointer:
698 return "EGLConfig *";
699 case ParamType::TEGLContext:
700 return "EGLContext";
701 case ParamType::TEGLDEBUGPROCKHR:
702 return "EGLDEBUGPROCKHR";
703 case ParamType::TEGLDeviceEXT:
704 return "EGLDeviceEXT";
705 case ParamType::TEGLDisplay:
706 return "EGLDisplay";
707 case ParamType::TEGLFrameTokenANGLE:
708 return "EGLFrameTokenANGLE";
709 case ParamType::TEGLGetBlobFuncANDROID:
710 return "EGLGetBlobFuncANDROID";
711 case ParamType::TEGLImage:
712 return "EGLImage";
713 case ParamType::TEGLImageKHR:
714 return "EGLImageKHR";
715 case ParamType::TEGLLabelKHR:
716 return "EGLLabelKHR";
717 case ParamType::TEGLNativeDisplayType:
718 return "EGLNativeDisplayType";
719 case ParamType::TEGLNativePixmapType:
720 return "EGLNativePixmapType";
721 case ParamType::TEGLNativeWindowType:
722 return "EGLNativeWindowType";
723 case ParamType::TEGLObjectKHR:
724 return "EGLObjectKHR";
725 case ParamType::TEGLSetBlobFuncANDROID:
726 return "EGLSetBlobFuncANDROID";
727 case ParamType::TEGLStreamKHR:
728 return "EGLStreamKHR";
729 case ParamType::TEGLSurface:
730 return "EGLSurface";
731 case ParamType::TEGLSync:
732 return "EGLSync";
733 case ParamType::TEGLSyncKHR:
734 return "EGLSyncKHR";
735 case ParamType::TEGLTime:
736 return "EGLTime";
737 case ParamType::TEGLTimeKHR:
738 return "EGLTimeKHR";
739 case ParamType::TEGLenum:
740 return "EGLenum";
741 case ParamType::TEGLint:
742 return "EGLint";
743 case ParamType::TEGLintConstPointer:
744 return "const EGLint *";
745 case ParamType::TEGLintPointer:
746 return "EGLint *";
747 case ParamType::TEGLnsecsANDROID:
748 return "EGLnsecsANDROID";
749 case ParamType::TEGLnsecsANDROIDPointer:
750 return "EGLnsecsANDROID *";
751 case ParamType::TEGLuint64KHR:
752 return "EGLuint64KHR";
753 case ParamType::TEGLuint64KHRPointer:
754 return "EGLuint64KHR *";
755 case ParamType::TFenceNVID:
756 return "GLuint";
757 case ParamType::TFenceNVIDConstPointer:
758 return "const GLuint *";
759 case ParamType::TFenceNVIDPointer:
760 return "GLuint *";
761 case ParamType::TFramebufferID:
762 return "GLuint";
763 case ParamType::TFramebufferIDConstPointer:
764 return "const GLuint *";
765 case ParamType::TFramebufferIDPointer:
766 return "GLuint *";
767 case ParamType::TGLDEBUGPROC:
768 return "GLDEBUGPROC";
769 case ParamType::TGLDEBUGPROCKHR:
770 return "GLDEBUGPROCKHR";
771 case ParamType::TGLbitfield:
772 return "GLbitfield";
773 case ParamType::TGLboolean:
774 return "GLboolean";
775 case ParamType::TGLbooleanConstPointer:
776 return "const GLboolean *";
777 case ParamType::TGLbooleanPointer:
778 return "GLboolean *";
779 case ParamType::TGLbyte:
780 return "GLbyte";
781 case ParamType::TGLbyteConstPointer:
782 return "const GLbyte *";
783 case ParamType::TGLcharConstPointer:
784 return "const GLchar *";
785 case ParamType::TGLcharConstPointerPointer:
786 return "const GLchar * const *";
787 case ParamType::TGLcharPointer:
788 return "GLchar *";
789 case ParamType::TGLclampx:
790 return "GLclampx";
791 case ParamType::TGLdouble:
792 return "GLdouble";
793 case ParamType::TGLdoubleConstPointer:
794 return "const GLdouble *";
795 case ParamType::TGLdoublePointer:
796 return "GLdouble *";
797 case ParamType::TGLeglClientBufferEXT:
798 return "GLeglClientBufferEXT";
799 case ParamType::TGLenum:
800 return "GLenum";
801 case ParamType::TGLenumConstPointer:
802 return "const GLenum *";
803 case ParamType::TGLenumPointer:
804 return "GLenum *";
805 case ParamType::TGLfixed:
806 return "GLfixed";
807 case ParamType::TGLfixedConstPointer:
808 return "const GLfixed *";
809 case ParamType::TGLfixedPointer:
810 return "GLfixed *";
811 case ParamType::TGLfloat:
812 return "GLfloat";
813 case ParamType::TGLfloatConstPointer:
814 return "const GLfloat *";
815 case ParamType::TGLfloatPointer:
816 return "GLfloat *";
817 case ParamType::TGLint:
818 return "GLint";
819 case ParamType::TGLint64:
820 return "GLint64";
821 case ParamType::TGLint64Pointer:
822 return "GLint64 *";
823 case ParamType::TGLintConstPointer:
824 return "const GLint *";
825 case ParamType::TGLintPointer:
826 return "GLint *";
827 case ParamType::TGLintptr:
828 return "GLintptr";
829 case ParamType::TGLintptrConstPointer:
830 return "const GLintptr *";
831 case ParamType::TGLshort:
832 return "GLshort";
833 case ParamType::TGLshortConstPointer:
834 return "const GLshort *";
835 case ParamType::TGLsizei:
836 return "GLsizei";
837 case ParamType::TGLsizeiConstPointer:
838 return "const GLsizei *";
839 case ParamType::TGLsizeiPointer:
840 return "GLsizei *";
841 case ParamType::TGLsizeiptr:
842 return "GLsizeiptr";
843 case ParamType::TGLsizeiptrConstPointer:
844 return "const GLsizeiptr *";
845 case ParamType::TGLsync:
846 return "GLsync";
847 case ParamType::TGLubyte:
848 return "GLubyte";
849 case ParamType::TGLubyteConstPointer:
850 return "const GLubyte *";
851 case ParamType::TGLubytePointer:
852 return "GLubyte *";
853 case ParamType::TGLuint:
854 return "GLuint";
855 case ParamType::TGLuint64:
856 return "GLuint64";
857 case ParamType::TGLuint64ConstPointer:
858 return "const GLuint64 *";
859 case ParamType::TGLuint64Pointer:
860 return "GLuint64 *";
861 case ParamType::TGLuintConstPointer:
862 return "const GLuint *";
863 case ParamType::TGLuintPointer:
864 return "GLuint *";
865 case ParamType::TGLushort:
866 return "GLushort";
867 case ParamType::TGLushortConstPointer:
868 return "const GLushort *";
869 case ParamType::TGLushortPointer:
870 return "GLushort *";
871 case ParamType::TGraphicsResetStatus:
872 return "GLenum";
873 case ParamType::THandleType:
874 return "GLenum";
875 case ParamType::TImageID:
876 return "GLuint";
877 case ParamType::TLightParameter:
878 return "GLenum";
879 case ParamType::TLogicalOperation:
880 return "GLenum";
881 case ParamType::TMaterialParameter:
882 return "GLenum";
883 case ParamType::TMatrixType:
884 return "GLenum";
885 case ParamType::TMemoryObjectID:
886 return "GLuint";
887 case ParamType::TMemoryObjectIDConstPointer:
888 return "const GLuint *";
889 case ParamType::TMemoryObjectIDPointer:
890 return "GLuint *";
891 case ParamType::TObjectType:
892 return "GLenum";
893 case ParamType::TPointParameter:
894 return "GLenum";
895 case ParamType::TPolygonMode:
896 return "GLenum";
897 case ParamType::TPrimitiveMode:
898 return "GLenum";
899 case ParamType::TProgramPipelineID:
900 return "GLuint";
901 case ParamType::TProgramPipelineIDConstPointer:
902 return "const GLuint *";
903 case ParamType::TProgramPipelineIDPointer:
904 return "GLuint *";
905 case ParamType::TProvokingVertexConvention:
906 return "GLenum";
907 case ParamType::TQueryID:
908 return "GLuint";
909 case ParamType::TQueryIDConstPointer:
910 return "const GLuint *";
911 case ParamType::TQueryIDPointer:
912 return "GLuint *";
913 case ParamType::TQueryType:
914 return "GLenum";
915 case ParamType::TRenderbufferID:
916 return "GLuint";
917 case ParamType::TRenderbufferIDConstPointer:
918 return "const GLuint *";
919 case ParamType::TRenderbufferIDPointer:
920 return "GLuint *";
921 case ParamType::TSamplerID:
922 return "GLuint";
923 case ParamType::TSamplerIDConstPointer:
924 return "const GLuint *";
925 case ParamType::TSamplerIDPointer:
926 return "GLuint *";
927 case ParamType::TSemaphoreID:
928 return "GLuint";
929 case ParamType::TSemaphoreIDConstPointer:
930 return "const GLuint *";
931 case ParamType::TSemaphoreIDPointer:
932 return "GLuint *";
933 case ParamType::TShaderProgramID:
934 return "GLuint";
935 case ParamType::TShaderProgramIDConstPointer:
936 return "const GLuint *";
937 case ParamType::TShaderProgramIDPointer:
938 return "GLuint *";
939 case ParamType::TShaderType:
940 return "GLenum";
941 case ParamType::TShadingModel:
942 return "GLenum";
943 case ParamType::TSurfaceID:
944 return "GLuint";
945 case ParamType::TSyncID:
946 return "GLuint";
947 case ParamType::TTextureEnvParameter:
948 return "GLenum";
949 case ParamType::TTextureEnvTarget:
950 return "GLenum";
951 case ParamType::TTextureID:
952 return "GLuint";
953 case ParamType::TTextureIDConstPointer:
954 return "const GLuint *";
955 case ParamType::TTextureIDPointer:
956 return "GLuint *";
957 case ParamType::TTextureTarget:
958 return "GLenum";
959 case ParamType::TTextureType:
960 return "GLenum";
961 case ParamType::TTimestamp:
962 return "GLenum";
963 case ParamType::TTransformFeedbackID:
964 return "GLuint";
965 case ParamType::TTransformFeedbackIDConstPointer:
966 return "const GLuint *";
967 case ParamType::TTransformFeedbackIDPointer:
968 return "GLuint *";
969 case ParamType::TUniformBlockIndex:
970 return "GLenum";
971 case ParamType::TUniformLocation:
972 return "GLenum";
973 case ParamType::TVertexArrayID:
974 return "GLuint";
975 case ParamType::TVertexArrayIDConstPointer:
976 return "const GLuint *";
977 case ParamType::TVertexArrayIDPointer:
978 return "GLuint *";
979 case ParamType::TVertexAttribType:
980 return "GLenum";
981 case ParamType::TcharConstPointer:
982 return "const GLenum *";
983 case ParamType::Tegl_ConfigPointer:
984 return "GLenum *";
985 case ParamType::Tegl_DevicePointer:
986 return "GLenum *";
987 case ParamType::Tegl_DisplayPointer:
988 return "GLenum *";
989 case ParamType::Tegl_StreamPointer:
990 return "GLenum *";
991 case ParamType::Tegl_SyncID:
992 return "GLuint";
993 case ParamType::TvoidConstPointer:
994 return "const void *";
995 case ParamType::TvoidConstPointerPointer:
996 return "const void * const *";
997 case ParamType::TvoidPointer:
998 return "void *";
999 case ParamType::TvoidPointerPointer:
1000 return "void **";
1001 default:
1002 UNREACHABLE();
1003 return "unknown";
1004 }
1005 }
1006
GetResourceIDTypeFromParamType(ParamType paramType)1007 ResourceIDType GetResourceIDTypeFromParamType(ParamType paramType)
1008 {
1009 switch (paramType)
1010 {
1011 case ParamType::TBufferID:
1012 return ResourceIDType::Buffer;
1013 case ParamType::TBufferIDConstPointer:
1014 return ResourceIDType::Buffer;
1015 case ParamType::TBufferIDPointer:
1016 return ResourceIDType::Buffer;
1017 case ParamType::TContextID:
1018 return ResourceIDType::Context;
1019 case ParamType::TFenceNVID:
1020 return ResourceIDType::FenceNV;
1021 case ParamType::TFenceNVIDConstPointer:
1022 return ResourceIDType::FenceNV;
1023 case ParamType::TFenceNVIDPointer:
1024 return ResourceIDType::FenceNV;
1025 case ParamType::TFramebufferID:
1026 return ResourceIDType::Framebuffer;
1027 case ParamType::TFramebufferIDConstPointer:
1028 return ResourceIDType::Framebuffer;
1029 case ParamType::TFramebufferIDPointer:
1030 return ResourceIDType::Framebuffer;
1031 case ParamType::TImageID:
1032 return ResourceIDType::Image;
1033 case ParamType::TMemoryObjectID:
1034 return ResourceIDType::MemoryObject;
1035 case ParamType::TMemoryObjectIDConstPointer:
1036 return ResourceIDType::MemoryObject;
1037 case ParamType::TMemoryObjectIDPointer:
1038 return ResourceIDType::MemoryObject;
1039 case ParamType::TProgramPipelineID:
1040 return ResourceIDType::ProgramPipeline;
1041 case ParamType::TProgramPipelineIDConstPointer:
1042 return ResourceIDType::ProgramPipeline;
1043 case ParamType::TProgramPipelineIDPointer:
1044 return ResourceIDType::ProgramPipeline;
1045 case ParamType::TQueryID:
1046 return ResourceIDType::Query;
1047 case ParamType::TQueryIDConstPointer:
1048 return ResourceIDType::Query;
1049 case ParamType::TQueryIDPointer:
1050 return ResourceIDType::Query;
1051 case ParamType::TRenderbufferID:
1052 return ResourceIDType::Renderbuffer;
1053 case ParamType::TRenderbufferIDConstPointer:
1054 return ResourceIDType::Renderbuffer;
1055 case ParamType::TRenderbufferIDPointer:
1056 return ResourceIDType::Renderbuffer;
1057 case ParamType::TSamplerID:
1058 return ResourceIDType::Sampler;
1059 case ParamType::TSamplerIDConstPointer:
1060 return ResourceIDType::Sampler;
1061 case ParamType::TSamplerIDPointer:
1062 return ResourceIDType::Sampler;
1063 case ParamType::TSemaphoreID:
1064 return ResourceIDType::Semaphore;
1065 case ParamType::TSemaphoreIDConstPointer:
1066 return ResourceIDType::Semaphore;
1067 case ParamType::TSemaphoreIDPointer:
1068 return ResourceIDType::Semaphore;
1069 case ParamType::TShaderProgramID:
1070 return ResourceIDType::ShaderProgram;
1071 case ParamType::TShaderProgramIDConstPointer:
1072 return ResourceIDType::ShaderProgram;
1073 case ParamType::TShaderProgramIDPointer:
1074 return ResourceIDType::ShaderProgram;
1075 case ParamType::TSurfaceID:
1076 return ResourceIDType::Surface;
1077 case ParamType::TSyncID:
1078 return ResourceIDType::Sync;
1079 case ParamType::TTextureID:
1080 return ResourceIDType::Texture;
1081 case ParamType::TTextureIDConstPointer:
1082 return ResourceIDType::Texture;
1083 case ParamType::TTextureIDPointer:
1084 return ResourceIDType::Texture;
1085 case ParamType::TTransformFeedbackID:
1086 return ResourceIDType::TransformFeedback;
1087 case ParamType::TTransformFeedbackIDConstPointer:
1088 return ResourceIDType::TransformFeedback;
1089 case ParamType::TTransformFeedbackIDPointer:
1090 return ResourceIDType::TransformFeedback;
1091 case ParamType::TVertexArrayID:
1092 return ResourceIDType::VertexArray;
1093 case ParamType::TVertexArrayIDConstPointer:
1094 return ResourceIDType::VertexArray;
1095 case ParamType::TVertexArrayIDPointer:
1096 return ResourceIDType::VertexArray;
1097 case ParamType::Tegl_SyncID:
1098 return ResourceIDType::egl_Sync;
1099 default:
1100 return ResourceIDType::InvalidEnum;
1101 }
1102 }
1103
GetResourceIDTypeName(ResourceIDType resourceIDType)1104 const char *GetResourceIDTypeName(ResourceIDType resourceIDType)
1105 {
1106 switch (resourceIDType)
1107 {
1108 case ResourceIDType::Buffer:
1109 return "Buffer";
1110 case ResourceIDType::Context:
1111 return "Context";
1112 case ResourceIDType::FenceNV:
1113 return "FenceNV";
1114 case ResourceIDType::Framebuffer:
1115 return "Framebuffer";
1116 case ResourceIDType::Image:
1117 return "Image";
1118 case ResourceIDType::MemoryObject:
1119 return "MemoryObject";
1120 case ResourceIDType::ProgramPipeline:
1121 return "ProgramPipeline";
1122 case ResourceIDType::Query:
1123 return "Query";
1124 case ResourceIDType::Renderbuffer:
1125 return "Renderbuffer";
1126 case ResourceIDType::Sampler:
1127 return "Sampler";
1128 case ResourceIDType::Semaphore:
1129 return "Semaphore";
1130 case ResourceIDType::ShaderProgram:
1131 return "ShaderProgram";
1132 case ResourceIDType::Surface:
1133 return "Surface";
1134 case ResourceIDType::Sync:
1135 return "Sync";
1136 case ResourceIDType::Texture:
1137 return "Texture";
1138 case ResourceIDType::TransformFeedback:
1139 return "TransformFeedback";
1140 case ResourceIDType::VertexArray:
1141 return "VertexArray";
1142 case ResourceIDType::egl_Sync:
1143 return "egl_Sync";
1144 default:
1145 UNREACHABLE();
1146 return "GetResourceIDTypeName error";
1147 }
1148 }
1149 } // namespace angle
1150