1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // This file is auto-generated from
6 // gpu/command_buffer/build_gles2_cmd_buffer.py
9 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_VALIDATION_IMPLEMENTATION_AUTOGEN_H_ // NOLINT
10 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_VALIDATION_IMPLEMENTATION_AUTOGEN_H_ // NOLINT
12 static const GLenum valid_attachment_table[] = {
15 GL_STENCIL_ATTACHMENT,
18 static const GLenum valid_backbuffer_attachment_table[] = {
24 static const GLenum valid_blit_filter_table[] = {
29 static const GLenum valid_buffer_parameter_table[] = {
34 static const GLenum valid_buffer_target_table[] = {
36 GL_ELEMENT_ARRAY_BUFFER,
39 static const GLenum valid_buffer_usage_table[] = {
45 static const GLenum valid_capability_table[] = {
50 GL_POLYGON_OFFSET_FILL,
51 GL_SAMPLE_ALPHA_TO_COVERAGE,
57 static const GLenum valid_cmp_function_table[] = {
68 static const GLenum valid_draw_mode_table[] = {
78 static const GLenum valid_dst_blend_factor_table[] = {
82 GL_ONE_MINUS_SRC_COLOR,
84 GL_ONE_MINUS_DST_COLOR,
86 GL_ONE_MINUS_SRC_ALPHA,
88 GL_ONE_MINUS_DST_ALPHA,
90 GL_ONE_MINUS_CONSTANT_COLOR,
92 GL_ONE_MINUS_CONSTANT_ALPHA,
95 static const GLenum valid_equation_table[] = {
98 GL_FUNC_REVERSE_SUBTRACT,
101 static const GLenum valid_face_mode_table[] = {
106 static const GLenum valid_face_type_table[] = {
112 static const GLboolean valid_false_only_table[] = {
116 static const GLenum valid_frame_buffer_parameter_table[] = {
117 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE,
118 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME,
119 GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL,
120 GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE,
123 static const GLenum valid_frame_buffer_target_table[] = {
127 static const GLenum valid_g_l_state_table[] = {
129 GL_ALIASED_LINE_WIDTH_RANGE,
130 GL_ALIASED_POINT_SIZE_RANGE,
132 GL_ARRAY_BUFFER_BINDING,
134 GL_COMPRESSED_TEXTURE_FORMATS,
138 GL_ELEMENT_ARRAY_BUFFER_BINDING,
139 GL_FRAMEBUFFER_BINDING,
140 GL_GENERATE_MIPMAP_HINT,
142 GL_IMPLEMENTATION_COLOR_READ_FORMAT,
143 GL_IMPLEMENTATION_COLOR_READ_TYPE,
144 GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS,
145 GL_MAX_CUBE_MAP_TEXTURE_SIZE,
146 GL_MAX_FRAGMENT_UNIFORM_VECTORS,
147 GL_MAX_RENDERBUFFER_SIZE,
148 GL_MAX_TEXTURE_IMAGE_UNITS,
150 GL_MAX_VARYING_VECTORS,
151 GL_MAX_VERTEX_ATTRIBS,
152 GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS,
153 GL_MAX_VERTEX_UNIFORM_VECTORS,
154 GL_MAX_VIEWPORT_DIMS,
155 GL_NUM_COMPRESSED_TEXTURE_FORMATS,
156 GL_NUM_SHADER_BINARY_FORMATS,
159 GL_RENDERBUFFER_BINDING,
161 GL_SAMPLE_COVERAGE_INVERT,
162 GL_SAMPLE_COVERAGE_VALUE,
165 GL_SHADER_BINARY_FORMATS,
169 GL_TEXTURE_BINDING_2D,
170 GL_TEXTURE_BINDING_CUBE_MAP,
172 GL_UNPACK_FLIP_Y_CHROMIUM,
173 GL_UNPACK_PREMULTIPLY_ALPHA_CHROMIUM,
174 GL_UNPACK_UNPREMULTIPLY_ALPHA_CHROMIUM,
175 GL_VERTEX_ARRAY_BINDING_OES,
178 GL_BLEND_EQUATION_RGB,
179 GL_BLEND_EQUATION_ALPHA,
184 GL_COLOR_CLEAR_VALUE,
185 GL_DEPTH_CLEAR_VALUE,
186 GL_STENCIL_CLEAR_VALUE,
193 GL_GENERATE_MIPMAP_HINT,
197 GL_POLYGON_OFFSET_FACTOR,
198 GL_POLYGON_OFFSET_UNITS,
199 GL_SAMPLE_COVERAGE_VALUE,
200 GL_SAMPLE_COVERAGE_INVERT,
204 GL_STENCIL_VALUE_MASK,
205 GL_STENCIL_BACK_FUNC,
207 GL_STENCIL_BACK_VALUE_MASK,
208 GL_STENCIL_WRITEMASK,
209 GL_STENCIL_BACK_WRITEMASK,
211 GL_STENCIL_PASS_DEPTH_FAIL,
212 GL_STENCIL_PASS_DEPTH_PASS,
213 GL_STENCIL_BACK_FAIL,
214 GL_STENCIL_BACK_PASS_DEPTH_FAIL,
215 GL_STENCIL_BACK_PASS_DEPTH_PASS,
221 GL_POLYGON_OFFSET_FILL,
222 GL_SAMPLE_ALPHA_TO_COVERAGE,
228 static const GLenum valid_get_max_index_type_table[] = {
234 static const GLenum valid_get_tex_param_target_table[] = {
239 static const GLenum valid_hint_mode_table[] = {
245 static const GLenum valid_hint_target_table[] = {
246 GL_GENERATE_MIPMAP_HINT,
249 static const GLenum valid_index_type_table[] = {
254 static const GLenum valid_pixel_store_table[] = {
257 GL_UNPACK_FLIP_Y_CHROMIUM,
258 GL_UNPACK_PREMULTIPLY_ALPHA_CHROMIUM,
259 GL_UNPACK_UNPREMULTIPLY_ALPHA_CHROMIUM,
262 static const GLint valid_pixel_store_alignment_table[] = {
269 static const GLenum valid_pixel_type_table[] = {
271 GL_UNSIGNED_SHORT_5_6_5,
272 GL_UNSIGNED_SHORT_4_4_4_4,
273 GL_UNSIGNED_SHORT_5_5_5_1,
276 static const GLenum valid_program_parameter_table[] = {
282 GL_ACTIVE_ATTRIBUTES,
283 GL_ACTIVE_ATTRIBUTE_MAX_LENGTH,
285 GL_ACTIVE_UNIFORM_MAX_LENGTH,
288 static const GLenum valid_query_object_parameter_table[] = {
290 GL_QUERY_RESULT_AVAILABLE_EXT,
293 static const GLenum valid_query_parameter_table[] = {
294 GL_CURRENT_QUERY_EXT,
297 static const GLenum valid_query_target_table[] = {
298 GL_ANY_SAMPLES_PASSED_EXT,
299 GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT,
300 GL_COMMANDS_ISSUED_CHROMIUM,
301 GL_LATENCY_QUERY_CHROMIUM,
302 GL_ASYNC_PIXEL_UNPACK_COMPLETED_CHROMIUM,
303 GL_ASYNC_PIXEL_PACK_COMPLETED_CHROMIUM,
306 static const GLenum valid_read_pixel_format_table[] = {
312 static const GLenum valid_read_pixel_type_table[] = {
314 GL_UNSIGNED_SHORT_5_6_5,
315 GL_UNSIGNED_SHORT_4_4_4_4,
316 GL_UNSIGNED_SHORT_5_5_5_1,
319 static const GLenum valid_render_buffer_format_table[] = {
323 GL_DEPTH_COMPONENT16,
327 static const GLenum valid_render_buffer_parameter_table[] = {
328 GL_RENDERBUFFER_RED_SIZE,
329 GL_RENDERBUFFER_GREEN_SIZE,
330 GL_RENDERBUFFER_BLUE_SIZE,
331 GL_RENDERBUFFER_ALPHA_SIZE,
332 GL_RENDERBUFFER_DEPTH_SIZE,
333 GL_RENDERBUFFER_STENCIL_SIZE,
334 GL_RENDERBUFFER_WIDTH,
335 GL_RENDERBUFFER_HEIGHT,
336 GL_RENDERBUFFER_INTERNAL_FORMAT,
339 static const GLenum valid_render_buffer_target_table[] = {
343 static const GLenum valid_reset_status_table[] = {
344 GL_GUILTY_CONTEXT_RESET_ARB,
345 GL_INNOCENT_CONTEXT_RESET_ARB,
346 GL_UNKNOWN_CONTEXT_RESET_ARB,
349 static const GLenum valid_shader_parameter_table[] = {
354 GL_SHADER_SOURCE_LENGTH,
355 GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE,
358 static const GLenum valid_shader_precision_table[] = {
367 static const GLenum valid_shader_type_table[] = {
372 static const GLenum valid_src_blend_factor_table[] = {
376 GL_ONE_MINUS_SRC_COLOR,
378 GL_ONE_MINUS_DST_COLOR,
380 GL_ONE_MINUS_SRC_ALPHA,
382 GL_ONE_MINUS_DST_ALPHA,
384 GL_ONE_MINUS_CONSTANT_COLOR,
386 GL_ONE_MINUS_CONSTANT_ALPHA,
387 GL_SRC_ALPHA_SATURATE,
390 static const GLenum valid_stencil_op_table[] = {
401 static const GLenum valid_string_type_table[] = {
405 GL_SHADING_LANGUAGE_VERSION,
409 static const GLenum valid_texture_bind_target_table[] = {
414 static const GLint valid_texture_border_table[] = {
418 static const GLenum valid_texture_format_table[] = {
426 static const GLenum valid_texture_internal_format_table[] = {
434 static const GLenum valid_texture_internal_format_storage_table[] = {
440 GL_LUMINANCE8_ALPHA8_EXT,
445 static const GLenum valid_texture_mag_filter_mode_table[] = {
450 static const GLenum valid_texture_min_filter_mode_table[] = {
453 GL_NEAREST_MIPMAP_NEAREST,
454 GL_LINEAR_MIPMAP_NEAREST,
455 GL_NEAREST_MIPMAP_LINEAR,
456 GL_LINEAR_MIPMAP_LINEAR,
459 static const GLenum valid_texture_parameter_table[] = {
460 GL_TEXTURE_MAG_FILTER,
461 GL_TEXTURE_MIN_FILTER,
462 GL_TEXTURE_POOL_CHROMIUM,
467 static const GLenum valid_texture_pool_table[] = {
468 GL_TEXTURE_POOL_MANAGED_CHROMIUM,
469 GL_TEXTURE_POOL_UNMANAGED_CHROMIUM,
472 static const GLenum valid_texture_target_table[] = {
474 GL_TEXTURE_CUBE_MAP_POSITIVE_X,
475 GL_TEXTURE_CUBE_MAP_NEGATIVE_X,
476 GL_TEXTURE_CUBE_MAP_POSITIVE_Y,
477 GL_TEXTURE_CUBE_MAP_NEGATIVE_Y,
478 GL_TEXTURE_CUBE_MAP_POSITIVE_Z,
479 GL_TEXTURE_CUBE_MAP_NEGATIVE_Z,
482 static const GLenum valid_texture_usage_table[] = {
484 GL_FRAMEBUFFER_ATTACHMENT_ANGLE,
487 static const GLenum valid_texture_wrap_mode_table[] = {
493 static const GLint valid_vertex_attrib_size_table[] = {
500 static const GLenum valid_vertex_attrib_type_table[] = {
508 static const GLenum valid_vertex_attribute_table[] = {
509 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED,
510 GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING,
511 GL_VERTEX_ATTRIB_ARRAY_ENABLED,
512 GL_VERTEX_ATTRIB_ARRAY_SIZE,
513 GL_VERTEX_ATTRIB_ARRAY_STRIDE,
514 GL_VERTEX_ATTRIB_ARRAY_TYPE,
515 GL_CURRENT_VERTEX_ATTRIB,
518 static const GLenum valid_vertex_pointer_table[] = {
519 GL_VERTEX_ATTRIB_ARRAY_POINTER,
522 static const GLint valid_zero_only_table[] = {
526 Validators::Validators()
528 valid_attachment_table, arraysize(valid_attachment_table)),
529 backbuffer_attachment(
530 valid_backbuffer_attachment_table, arraysize(
531 valid_backbuffer_attachment_table)),
533 valid_blit_filter_table, arraysize(valid_blit_filter_table)),
535 valid_buffer_parameter_table, arraysize(
536 valid_buffer_parameter_table)),
538 valid_buffer_target_table, arraysize(valid_buffer_target_table)),
540 valid_buffer_usage_table, arraysize(valid_buffer_usage_table)),
542 valid_capability_table, arraysize(valid_capability_table)),
544 valid_cmp_function_table, arraysize(valid_cmp_function_table)),
545 compressed_texture_format(),
547 valid_draw_mode_table, arraysize(valid_draw_mode_table)),
549 valid_dst_blend_factor_table, arraysize(
550 valid_dst_blend_factor_table)),
552 valid_equation_table, arraysize(valid_equation_table)),
554 valid_face_mode_table, arraysize(valid_face_mode_table)),
556 valid_face_type_table, arraysize(valid_face_type_table)),
558 valid_false_only_table, arraysize(valid_false_only_table)),
559 frame_buffer_parameter(
560 valid_frame_buffer_parameter_table, arraysize(
561 valid_frame_buffer_parameter_table)),
563 valid_frame_buffer_target_table, arraysize(
564 valid_frame_buffer_target_table)),
566 valid_g_l_state_table, arraysize(valid_g_l_state_table)),
568 valid_get_max_index_type_table, arraysize(
569 valid_get_max_index_type_table)),
570 get_tex_param_target(
571 valid_get_tex_param_target_table, arraysize(
572 valid_get_tex_param_target_table)),
574 valid_hint_mode_table, arraysize(valid_hint_mode_table)),
576 valid_hint_target_table, arraysize(valid_hint_target_table)),
578 valid_index_type_table, arraysize(valid_index_type_table)),
580 valid_pixel_store_table, arraysize(valid_pixel_store_table)),
581 pixel_store_alignment(
582 valid_pixel_store_alignment_table, arraysize(
583 valid_pixel_store_alignment_table)),
585 valid_pixel_type_table, arraysize(valid_pixel_type_table)),
587 valid_program_parameter_table, arraysize(
588 valid_program_parameter_table)),
589 query_object_parameter(
590 valid_query_object_parameter_table, arraysize(
591 valid_query_object_parameter_table)),
593 valid_query_parameter_table, arraysize(valid_query_parameter_table)),
595 valid_query_target_table, arraysize(valid_query_target_table)),
597 valid_read_pixel_format_table, arraysize(
598 valid_read_pixel_format_table)),
600 valid_read_pixel_type_table, arraysize(valid_read_pixel_type_table)),
601 render_buffer_format(
602 valid_render_buffer_format_table, arraysize(
603 valid_render_buffer_format_table)),
604 render_buffer_parameter(
605 valid_render_buffer_parameter_table, arraysize(
606 valid_render_buffer_parameter_table)),
607 render_buffer_target(
608 valid_render_buffer_target_table, arraysize(
609 valid_render_buffer_target_table)),
611 valid_reset_status_table, arraysize(valid_reset_status_table)),
612 shader_binary_format(),
614 valid_shader_parameter_table, arraysize(
615 valid_shader_parameter_table)),
617 valid_shader_precision_table, arraysize(
618 valid_shader_precision_table)),
620 valid_shader_type_table, arraysize(valid_shader_type_table)),
622 valid_src_blend_factor_table, arraysize(
623 valid_src_blend_factor_table)),
625 valid_stencil_op_table, arraysize(valid_stencil_op_table)),
627 valid_string_type_table, arraysize(valid_string_type_table)),
629 valid_texture_bind_target_table, arraysize(
630 valid_texture_bind_target_table)),
632 valid_texture_border_table, arraysize(valid_texture_border_table)),
634 valid_texture_format_table, arraysize(valid_texture_format_table)),
635 texture_internal_format(
636 valid_texture_internal_format_table, arraysize(
637 valid_texture_internal_format_table)),
638 texture_internal_format_storage(
639 valid_texture_internal_format_storage_table, arraysize(
640 valid_texture_internal_format_storage_table)),
641 texture_mag_filter_mode(
642 valid_texture_mag_filter_mode_table, arraysize(
643 valid_texture_mag_filter_mode_table)),
644 texture_min_filter_mode(
645 valid_texture_min_filter_mode_table, arraysize(
646 valid_texture_min_filter_mode_table)),
648 valid_texture_parameter_table, arraysize(
649 valid_texture_parameter_table)),
651 valid_texture_pool_table, arraysize(valid_texture_pool_table)),
653 valid_texture_target_table, arraysize(valid_texture_target_table)),
655 valid_texture_usage_table, arraysize(valid_texture_usage_table)),
657 valid_texture_wrap_mode_table, arraysize(
658 valid_texture_wrap_mode_table)),
660 valid_vertex_attrib_size_table, arraysize(
661 valid_vertex_attrib_size_table)),
663 valid_vertex_attrib_type_table, arraysize(
664 valid_vertex_attrib_type_table)),
666 valid_vertex_attribute_table, arraysize(
667 valid_vertex_attribute_table)),
669 valid_vertex_pointer_table, arraysize(valid_vertex_pointer_table)),
671 valid_zero_only_table, arraysize(valid_zero_only_table)) {
674 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_VALIDATION_IMPLEMENTATION_AUTOGEN_H_ // NOLINT