1 // Copyright 2014 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
7 // It's formatted by clang-format using chromium coding style:
8 // clang-format -i -style=chromium filename
11 // It is included by context_state.h
12 #ifndef GPU_COMMAND_BUFFER_SERVICE_CONTEXT_STATE_AUTOGEN_H_
13 #define GPU_COMMAND_BUFFER_SERVICE_CONTEXT_STATE_AUTOGEN_H_
20 bool cached_cull_face
;
22 bool cached_depth_test
;
25 bool polygon_offset_fill
;
26 bool cached_polygon_offset_fill
;
27 bool sample_alpha_to_coverage
;
28 bool cached_sample_alpha_to_coverage
;
30 bool cached_sample_coverage
;
32 bool cached_scissor_test
;
34 bool cached_stencil_test
;
37 GLfloat blend_color_red
;
38 GLfloat blend_color_green
;
39 GLfloat blend_color_blue
;
40 GLfloat blend_color_alpha
;
41 GLenum blend_equation_rgb
;
42 GLenum blend_equation_alpha
;
43 GLenum blend_source_rgb
;
44 GLenum blend_dest_rgb
;
45 GLenum blend_source_alpha
;
46 GLenum blend_dest_alpha
;
47 GLfloat color_clear_red
;
48 GLfloat color_clear_green
;
49 GLfloat color_clear_blue
;
50 GLfloat color_clear_alpha
;
53 GLboolean color_mask_red
;
54 GLboolean cached_color_mask_red
;
55 GLboolean color_mask_green
;
56 GLboolean cached_color_mask_green
;
57 GLboolean color_mask_blue
;
58 GLboolean cached_color_mask_blue
;
59 GLboolean color_mask_alpha
;
60 GLboolean cached_color_mask_alpha
;
64 GLboolean cached_depth_mask
;
68 GLenum hint_generate_mipmap
;
69 GLenum hint_fragment_shader_derivative
;
72 GLint unpack_alignment
;
73 GLfloat polygon_offset_factor
;
74 GLfloat polygon_offset_units
;
75 GLclampf sample_coverage_value
;
76 GLboolean sample_coverage_invert
;
79 GLsizei scissor_width
;
80 GLsizei scissor_height
;
81 GLenum stencil_front_func
;
82 GLint stencil_front_ref
;
83 GLuint stencil_front_mask
;
84 GLenum stencil_back_func
;
85 GLint stencil_back_ref
;
86 GLuint stencil_back_mask
;
87 GLuint stencil_front_writemask
;
88 GLuint cached_stencil_front_writemask
;
89 GLuint stencil_back_writemask
;
90 GLuint cached_stencil_back_writemask
;
91 GLenum stencil_front_fail_op
;
92 GLenum stencil_front_z_fail_op
;
93 GLenum stencil_front_z_pass_op
;
94 GLenum stencil_back_fail_op
;
95 GLenum stencil_back_z_fail_op
;
96 GLenum stencil_back_z_pass_op
;
99 GLsizei viewport_width
;
100 GLsizei viewport_height
;
102 inline void SetDeviceCapabilityState(GLenum cap
, bool enable
) {
105 if (enable_flags
.cached_blend
== enable
&& !ignore_cached_state
)
107 enable_flags
.cached_blend
= enable
;
110 if (enable_flags
.cached_cull_face
== enable
&& !ignore_cached_state
)
112 enable_flags
.cached_cull_face
= enable
;
115 if (enable_flags
.cached_depth_test
== enable
&& !ignore_cached_state
)
117 enable_flags
.cached_depth_test
= enable
;
120 if (enable_flags
.cached_dither
== enable
&& !ignore_cached_state
)
122 enable_flags
.cached_dither
= enable
;
124 case GL_POLYGON_OFFSET_FILL
:
125 if (enable_flags
.cached_polygon_offset_fill
== enable
&&
126 !ignore_cached_state
)
128 enable_flags
.cached_polygon_offset_fill
= enable
;
130 case GL_SAMPLE_ALPHA_TO_COVERAGE
:
131 if (enable_flags
.cached_sample_alpha_to_coverage
== enable
&&
132 !ignore_cached_state
)
134 enable_flags
.cached_sample_alpha_to_coverage
= enable
;
136 case GL_SAMPLE_COVERAGE
:
137 if (enable_flags
.cached_sample_coverage
== enable
&& !ignore_cached_state
)
139 enable_flags
.cached_sample_coverage
= enable
;
141 case GL_SCISSOR_TEST
:
142 if (enable_flags
.cached_scissor_test
== enable
&& !ignore_cached_state
)
144 enable_flags
.cached_scissor_test
= enable
;
146 case GL_STENCIL_TEST
:
147 if (enable_flags
.cached_stencil_test
== enable
&& !ignore_cached_state
)
149 enable_flags
.cached_stencil_test
= enable
;
160 #endif // GPU_COMMAND_BUFFER_SERVICE_CONTEXT_STATE_AUTOGEN_H_