diff options
Diffstat (limited to 'chromium/gpu/command_buffer/service/context_state_autogen.h')
-rw-r--r-- | chromium/gpu/command_buffer/service/context_state_autogen.h | 79 |
1 files changed, 77 insertions, 2 deletions
diff --git a/chromium/gpu/command_buffer/service/context_state_autogen.h b/chromium/gpu/command_buffer/service/context_state_autogen.h index a76aabccac7..309301f1b28 100644 --- a/chromium/gpu/command_buffer/service/context_state_autogen.h +++ b/chromium/gpu/command_buffer/service/context_state_autogen.h @@ -1,9 +1,11 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // This file is auto-generated from // gpu/command_buffer/build_gles2_cmd_buffer.py +// It's formatted by clang-format using chromium coding style: +// clang-format -i -style=chromium filename // DO NOT EDIT! // It is included by context_state.h @@ -13,14 +15,23 @@ struct EnableFlags { EnableFlags(); bool blend; + bool cached_blend; bool cull_face; + bool cached_cull_face; bool depth_test; + bool cached_depth_test; bool dither; + bool cached_dither; bool polygon_offset_fill; + bool cached_polygon_offset_fill; bool sample_alpha_to_coverage; + bool cached_sample_alpha_to_coverage; bool sample_coverage; + bool cached_sample_coverage; bool scissor_test; + bool cached_scissor_test; bool stencil_test; + bool cached_stencil_test; }; GLfloat blend_color_red; @@ -40,12 +51,17 @@ GLfloat color_clear_alpha; GLclampf depth_clear; GLint stencil_clear; GLboolean color_mask_red; +GLboolean cached_color_mask_red; GLboolean color_mask_green; +GLboolean cached_color_mask_green; GLboolean color_mask_blue; +GLboolean cached_color_mask_blue; GLboolean color_mask_alpha; +GLboolean cached_color_mask_alpha; GLenum cull_mode; GLenum depth_func; GLboolean depth_mask; +GLboolean cached_depth_mask; GLclampf z_near; GLclampf z_far; GLenum front_face; @@ -69,7 +85,9 @@ GLenum stencil_back_func; GLint stencil_back_ref; GLuint stencil_back_mask; GLuint stencil_front_writemask; +GLuint cached_stencil_front_writemask; GLuint stencil_back_writemask; +GLuint cached_stencil_back_writemask; GLenum stencil_front_fail_op; GLenum stencil_front_z_fail_op; GLenum stencil_front_z_pass_op; @@ -81,5 +99,62 @@ GLint viewport_y; GLsizei viewport_width; GLsizei viewport_height; +inline void SetDeviceCapabilityState(GLenum cap, bool enable) { + switch (cap) { + case GL_BLEND: + if (enable_flags.cached_blend == enable && !ignore_cached_state) + return; + enable_flags.cached_blend = enable; + break; + case GL_CULL_FACE: + if (enable_flags.cached_cull_face == enable && !ignore_cached_state) + return; + enable_flags.cached_cull_face = enable; + break; + case GL_DEPTH_TEST: + if (enable_flags.cached_depth_test == enable && !ignore_cached_state) + return; + enable_flags.cached_depth_test = enable; + break; + case GL_DITHER: + if (enable_flags.cached_dither == enable && !ignore_cached_state) + return; + enable_flags.cached_dither = enable; + break; + case GL_POLYGON_OFFSET_FILL: + if (enable_flags.cached_polygon_offset_fill == enable && + !ignore_cached_state) + return; + enable_flags.cached_polygon_offset_fill = enable; + break; + case GL_SAMPLE_ALPHA_TO_COVERAGE: + if (enable_flags.cached_sample_alpha_to_coverage == enable && + !ignore_cached_state) + return; + enable_flags.cached_sample_alpha_to_coverage = enable; + break; + case GL_SAMPLE_COVERAGE: + if (enable_flags.cached_sample_coverage == enable && !ignore_cached_state) + return; + enable_flags.cached_sample_coverage = enable; + break; + case GL_SCISSOR_TEST: + if (enable_flags.cached_scissor_test == enable && !ignore_cached_state) + return; + enable_flags.cached_scissor_test = enable; + break; + case GL_STENCIL_TEST: + if (enable_flags.cached_stencil_test == enable && !ignore_cached_state) + return; + enable_flags.cached_stencil_test = enable; + break; + default: + NOTREACHED(); + return; + } + if (enable) + glEnable(cap); + else + glDisable(cap); +} #endif // GPU_COMMAND_BUFFER_SERVICE_CONTEXT_STATE_AUTOGEN_H_ - |