| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef GPU_COMMAND_BUFFER_SERVICE_FEATURE_INFO_H_ | 5 #ifndef GPU_COMMAND_BUFFER_SERVICE_FEATURE_INFO_H_ |
| 6 #define GPU_COMMAND_BUFFER_SERVICE_FEATURE_INFO_H_ | 6 #define GPU_COMMAND_BUFFER_SERVICE_FEATURE_INFO_H_ |
| 7 | 7 |
| 8 #include <memory> | 8 #include <memory> |
| 9 #include <string> | 9 #include <string> |
| 10 | 10 |
| (...skipping 14 matching lines...) Expand all Loading... |
| 25 | 25 |
| 26 namespace gpu { | 26 namespace gpu { |
| 27 namespace gles2 { | 27 namespace gles2 { |
| 28 | 28 |
| 29 // FeatureInfo records the features that are available for a ContextGroup. | 29 // FeatureInfo records the features that are available for a ContextGroup. |
| 30 class GPU_EXPORT FeatureInfo : public base::RefCounted<FeatureInfo> { | 30 class GPU_EXPORT FeatureInfo : public base::RefCounted<FeatureInfo> { |
| 31 public: | 31 public: |
| 32 struct FeatureFlags { | 32 struct FeatureFlags { |
| 33 FeatureFlags(); | 33 FeatureFlags(); |
| 34 | 34 |
| 35 bool chromium_framebuffer_multisample; | 35 bool chromium_framebuffer_multisample = false; |
| 36 bool chromium_sync_query; | 36 bool chromium_sync_query = false; |
| 37 // Use glBlitFramebuffer() and glRenderbufferStorageMultisample() with | 37 // Use glBlitFramebuffer() and glRenderbufferStorageMultisample() with |
| 38 // GL_EXT_framebuffer_multisample-style semantics, since they are exposed | 38 // GL_EXT_framebuffer_multisample-style semantics, since they are exposed |
| 39 // as core GL functions on this implementation. | 39 // as core GL functions on this implementation. |
| 40 bool use_core_framebuffer_multisample; | 40 bool use_core_framebuffer_multisample = false; |
| 41 bool multisampled_render_to_texture; | 41 bool multisampled_render_to_texture = false; |
| 42 // Use the IMG GLenum values and functions rather than EXT. | 42 // Use the IMG GLenum values and functions rather than EXT. |
| 43 bool use_img_for_multisampled_render_to_texture; | 43 bool use_img_for_multisampled_render_to_texture = false; |
| 44 bool chromium_screen_space_antialiasing; | 44 bool chromium_screen_space_antialiasing = false; |
| 45 bool use_chromium_screen_space_antialiasing_via_shaders; | 45 bool use_chromium_screen_space_antialiasing_via_shaders = false; |
| 46 bool oes_standard_derivatives; | 46 bool oes_standard_derivatives = false; |
| 47 bool oes_egl_image_external; | 47 bool oes_egl_image_external = false; |
| 48 bool nv_egl_stream_consumer_external; | 48 bool nv_egl_stream_consumer_external = false; |
| 49 bool oes_depth24; | 49 bool oes_depth24 = false; |
| 50 bool oes_compressed_etc1_rgb8_texture; | 50 bool oes_compressed_etc1_rgb8_texture = false; |
| 51 bool packed_depth24_stencil8; | 51 bool packed_depth24_stencil8 = false; |
| 52 bool npot_ok; | 52 bool npot_ok = false; |
| 53 bool enable_texture_float_linear; | 53 bool enable_texture_float_linear = false; |
| 54 bool enable_texture_half_float_linear; | 54 bool enable_texture_half_float_linear = false; |
| 55 bool angle_translated_shader_source; | 55 bool enable_color_buffer_float = false; |
| 56 bool angle_pack_reverse_row_order; | 56 bool angle_translated_shader_source = false; |
| 57 bool arb_texture_rectangle; | 57 bool angle_pack_reverse_row_order = false; |
| 58 bool angle_instanced_arrays; | 58 bool arb_texture_rectangle = false; |
| 59 bool occlusion_query; | 59 bool angle_instanced_arrays = false; |
| 60 bool occlusion_query_boolean; | 60 bool occlusion_query = false; |
| 61 bool use_arb_occlusion_query2_for_occlusion_query_boolean; | 61 bool occlusion_query_boolean = false; |
| 62 bool use_arb_occlusion_query_for_occlusion_query_boolean; | 62 bool use_arb_occlusion_query2_for_occlusion_query_boolean = false; |
| 63 bool native_vertex_array_object; | 63 bool use_arb_occlusion_query_for_occlusion_query_boolean = false; |
| 64 bool ext_texture_format_astc; | 64 bool native_vertex_array_object = false; |
| 65 bool ext_texture_format_atc; | 65 bool ext_texture_format_astc = false; |
| 66 bool ext_texture_format_bgra8888; | 66 bool ext_texture_format_atc = false; |
| 67 bool ext_texture_format_dxt1; | 67 bool ext_texture_format_bgra8888 = false; |
| 68 bool ext_texture_format_dxt5; | 68 bool ext_texture_format_dxt1 = false; |
| 69 bool enable_shader_name_hashing; | 69 bool ext_texture_format_dxt5 = false; |
| 70 bool enable_samplers; | 70 bool enable_shader_name_hashing = false; |
| 71 bool ext_draw_buffers; | 71 bool enable_samplers = false; |
| 72 bool nv_draw_buffers; | 72 bool ext_draw_buffers = false; |
| 73 bool ext_frag_depth; | 73 bool nv_draw_buffers = false; |
| 74 bool ext_shader_texture_lod; | 74 bool ext_frag_depth = false; |
| 75 bool use_async_readpixels; | 75 bool ext_shader_texture_lod = false; |
| 76 bool map_buffer_range; | 76 bool use_async_readpixels = false; |
| 77 bool ext_discard_framebuffer; | 77 bool map_buffer_range = false; |
| 78 bool angle_depth_texture; | 78 bool ext_discard_framebuffer = false; |
| 79 bool is_swiftshader; | 79 bool angle_depth_texture = false; |
| 80 bool angle_texture_usage; | 80 bool is_swiftshader = false; |
| 81 bool ext_texture_storage; | 81 bool angle_texture_usage = false; |
| 82 bool chromium_path_rendering; | 82 bool ext_texture_storage = false; |
| 83 bool chromium_framebuffer_mixed_samples; | 83 bool chromium_path_rendering = false; |
| 84 bool blend_equation_advanced; | 84 bool chromium_framebuffer_mixed_samples = false; |
| 85 bool blend_equation_advanced_coherent; | 85 bool blend_equation_advanced = false; |
| 86 bool ext_texture_rg; | 86 bool blend_equation_advanced_coherent = false; |
| 87 bool chromium_image_ycbcr_420v; | 87 bool ext_texture_rg = false; |
| 88 bool chromium_image_ycbcr_422; | 88 bool chromium_image_ycbcr_420v = false; |
| 89 bool emulate_primitive_restart_fixed_index; | 89 bool chromium_image_ycbcr_422 = false; |
| 90 bool ext_render_buffer_format_bgra8888; | 90 bool emulate_primitive_restart_fixed_index = false; |
| 91 bool ext_multisample_compatibility; | 91 bool ext_render_buffer_format_bgra8888 = false; |
| 92 bool ext_blend_func_extended; | 92 bool ext_multisample_compatibility = false; |
| 93 bool ext_read_format_bgra; | 93 bool ext_blend_func_extended = false; |
| 94 bool desktop_srgb_support; | 94 bool ext_read_format_bgra = false; |
| 95 bool arb_es3_compatibility; | 95 bool desktop_srgb_support = false; |
| 96 bool arb_es3_compatibility = false; |
| 96 bool chromium_color_buffer_float_rgb = false; | 97 bool chromium_color_buffer_float_rgb = false; |
| 97 bool chromium_color_buffer_float_rgba = false; | 98 bool chromium_color_buffer_float_rgba = false; |
| 98 bool angle_robust_client_memory = false; | 99 bool angle_robust_client_memory = false; |
| 99 bool khr_debug = false; | 100 bool khr_debug = false; |
| 100 bool chromium_bind_generates_resource = false; | 101 bool chromium_bind_generates_resource = false; |
| 101 bool angle_webgl_compatibility = false; | 102 bool angle_webgl_compatibility = false; |
| 102 bool ext_srgb_write_control = false; | 103 bool ext_srgb_write_control = false; |
| 103 bool ext_srgb = false; | 104 bool ext_srgb = false; |
| 104 }; | 105 }; |
| 105 | 106 |
| (...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 204 bool disable_shader_translator_; | 205 bool disable_shader_translator_; |
| 205 std::unique_ptr<gl::GLVersionInfo> gl_version_info_; | 206 std::unique_ptr<gl::GLVersionInfo> gl_version_info_; |
| 206 | 207 |
| 207 DISALLOW_COPY_AND_ASSIGN(FeatureInfo); | 208 DISALLOW_COPY_AND_ASSIGN(FeatureInfo); |
| 208 }; | 209 }; |
| 209 | 210 |
| 210 } // namespace gles2 | 211 } // namespace gles2 |
| 211 } // namespace gpu | 212 } // namespace gpu |
| 212 | 213 |
| 213 #endif // GPU_COMMAND_BUFFER_SERVICE_FEATURE_INFO_H_ | 214 #endif // GPU_COMMAND_BUFFER_SERVICE_FEATURE_INFO_H_ |
| OLD | NEW |