| 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 #include "gpu/command_buffer/service/feature_info.h" | 5 #include "gpu/command_buffer/service/feature_info.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <memory> | 9 #include <memory> |
| 10 | 10 |
| (...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 239 case ES3_on_Version3_2Compatibility: | 239 case ES3_on_Version3_2Compatibility: |
| 240 break; | 240 break; |
| 241 case ES2_on_Version3_2Compatibility: | 241 case ES2_on_Version3_2Compatibility: |
| 242 // sRGB features are available as core GL 3.2. | 242 // sRGB features are available as core GL 3.2. |
| 243 expect_ext_srgb = true; | 243 expect_ext_srgb = true; |
| 244 break; | 244 break; |
| 245 default: | 245 default: |
| 246 NOTREACHED(); | 246 NOTREACHED(); |
| 247 break; | 247 break; |
| 248 } | 248 } |
| 249 // Note that because GL_EXT_sRGB is a substring of GL_EXT_sRGB_write_control, | |
| 250 // which is not part of the ES3 core, we have to be careful to search for | |
| 251 // "GL_EXT_sRGB ", and append a space to the end of the extension string. | |
| 252 if (expect_ext_srgb) { | 249 if (expect_ext_srgb) { |
| 253 EXPECT_THAT(info_->extensions() + " ", HasSubstr("GL_EXT_sRGB ")); | 250 EXPECT_THAT(info_->extensions(), HasSubstr("GL_EXT_sRGB")); |
| 254 EXPECT_TRUE(info_->validators()->texture_format.IsValid(GL_SRGB_EXT)); | 251 EXPECT_TRUE(info_->validators()->texture_format.IsValid(GL_SRGB_EXT)); |
| 255 EXPECT_TRUE(info_->validators()->texture_format.IsValid(GL_SRGB_ALPHA_EXT)); | 252 EXPECT_TRUE(info_->validators()->texture_format.IsValid(GL_SRGB_ALPHA_EXT)); |
| 256 EXPECT_TRUE(info_->validators()->texture_internal_format.IsValid( | 253 EXPECT_TRUE(info_->validators()->texture_internal_format.IsValid( |
| 257 GL_SRGB_EXT)); | 254 GL_SRGB_EXT)); |
| 258 EXPECT_TRUE(info_->validators()->texture_internal_format.IsValid( | 255 EXPECT_TRUE(info_->validators()->texture_internal_format.IsValid( |
| 259 GL_SRGB_ALPHA_EXT)); | 256 GL_SRGB_ALPHA_EXT)); |
| 260 EXPECT_TRUE(info_->validators()->render_buffer_format.IsValid( | 257 EXPECT_TRUE(info_->validators()->render_buffer_format.IsValid( |
| 261 GL_SRGB8_ALPHA8_EXT)); | 258 GL_SRGB8_ALPHA8_EXT)); |
| 262 EXPECT_TRUE(info_->validators()->framebuffer_parameter.IsValid( | 259 EXPECT_TRUE(info_->validators()->framebuffer_parameter.IsValid( |
| 263 GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT)); | 260 GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT)); |
| 264 } else { | 261 } else { |
| 265 EXPECT_THAT(info_->extensions() + " ", Not(HasSubstr("GL_EXT_sRGB "))); | 262 EXPECT_THAT(info_->extensions(), Not(HasSubstr("GL_EXT_sRGB"))); |
| 266 EXPECT_FALSE(info_->validators()->texture_format.IsValid(GL_SRGB_EXT)); | 263 EXPECT_FALSE(info_->validators()->texture_format.IsValid(GL_SRGB_EXT)); |
| 267 EXPECT_FALSE(info_->validators()->texture_format.IsValid( | 264 EXPECT_FALSE(info_->validators()->texture_format.IsValid( |
| 268 GL_SRGB_ALPHA_EXT)); | 265 GL_SRGB_ALPHA_EXT)); |
| 269 EXPECT_FALSE(info_->validators()->texture_internal_format.IsValid( | 266 EXPECT_FALSE(info_->validators()->texture_internal_format.IsValid( |
| 270 GL_SRGB_EXT)); | 267 GL_SRGB_EXT)); |
| 271 EXPECT_FALSE(info_->validators()->texture_internal_format.IsValid( | 268 EXPECT_FALSE(info_->validators()->texture_internal_format.IsValid( |
| 272 GL_SRGB_ALPHA_EXT)); | 269 GL_SRGB_ALPHA_EXT)); |
| 273 EXPECT_FALSE(info_->validators()->render_buffer_format.IsValid( | 270 EXPECT_FALSE(info_->validators()->render_buffer_format.IsValid( |
| 274 GL_SRGB8_ALPHA8_EXT)); | 271 GL_SRGB8_ALPHA8_EXT)); |
| 275 EXPECT_FALSE(info_->validators()->framebuffer_parameter.IsValid( | 272 EXPECT_FALSE(info_->validators()->framebuffer_parameter.IsValid( |
| (...skipping 313 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 589 SetupInitExpectationsWithGLVersion("", "", "OpenGL ES 2.0"); | 586 SetupInitExpectationsWithGLVersion("", "", "OpenGL ES 2.0"); |
| 590 EXPECT_THAT(info_->extensions(), Not(HasSubstr("GL_EXT_read_format_bgra"))); | 587 EXPECT_THAT(info_->extensions(), Not(HasSubstr("GL_EXT_read_format_bgra"))); |
| 591 EXPECT_FALSE(info_->feature_flags().ext_read_format_bgra); | 588 EXPECT_FALSE(info_->feature_flags().ext_read_format_bgra); |
| 592 EXPECT_FALSE(info_->validators()->read_pixel_format.IsValid(GL_BGRA_EXT)); | 589 EXPECT_FALSE(info_->validators()->read_pixel_format.IsValid(GL_BGRA_EXT)); |
| 593 } | 590 } |
| 594 | 591 |
| 595 TEST_P(FeatureInfoTest, InitializeEXT_sRGB) { | 592 TEST_P(FeatureInfoTest, InitializeEXT_sRGB) { |
| 596 SetupInitExpectations("GL_EXT_sRGB GL_OES_rgb8_rgba8"); | 593 SetupInitExpectations("GL_EXT_sRGB GL_OES_rgb8_rgba8"); |
| 597 | 594 |
| 598 if (GetContextType() == CONTEXT_TYPE_OPENGLES3) { | 595 if (GetContextType() == CONTEXT_TYPE_OPENGLES3) { |
| 599 EXPECT_THAT(info_->extensions() + " ", Not(HasSubstr("GL_EXT_sRGB "))); | 596 EXPECT_THAT(info_->extensions(), Not(HasSubstr("GL_EXT_sRGB"))); |
| 600 EXPECT_FALSE(info_->validators()->texture_format.IsValid(GL_SRGB_EXT)); | 597 EXPECT_FALSE(info_->validators()->texture_format.IsValid(GL_SRGB_EXT)); |
| 601 EXPECT_FALSE( | 598 EXPECT_FALSE( |
| 602 info_->validators()->texture_format.IsValid(GL_SRGB_ALPHA_EXT)); | 599 info_->validators()->texture_format.IsValid(GL_SRGB_ALPHA_EXT)); |
| 603 EXPECT_FALSE( | 600 EXPECT_FALSE( |
| 604 info_->validators()->texture_internal_format.IsValid(GL_SRGB_EXT)); | 601 info_->validators()->texture_internal_format.IsValid(GL_SRGB_EXT)); |
| 605 EXPECT_FALSE(info_->validators()->texture_internal_format.IsValid( | 602 EXPECT_FALSE(info_->validators()->texture_internal_format.IsValid( |
| 606 GL_SRGB_ALPHA_EXT)); | 603 GL_SRGB_ALPHA_EXT)); |
| 607 EXPECT_FALSE( | 604 EXPECT_FALSE( |
| 608 info_->validators()->render_buffer_format.IsValid(GL_SRGB8_ALPHA8_EXT)); | 605 info_->validators()->render_buffer_format.IsValid(GL_SRGB8_ALPHA8_EXT)); |
| 609 EXPECT_FALSE(info_->validators()->framebuffer_parameter.IsValid( | 606 EXPECT_FALSE(info_->validators()->framebuffer_parameter.IsValid( |
| 610 GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT)); | 607 GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT)); |
| 611 } else { | 608 } else { |
| 612 EXPECT_THAT(info_->extensions() + " ", HasSubstr("GL_EXT_sRGB ")); | 609 EXPECT_THAT(info_->extensions(), HasSubstr("GL_EXT_sRGB")); |
| 613 EXPECT_TRUE(info_->validators()->texture_format.IsValid(GL_SRGB_EXT)); | 610 EXPECT_TRUE(info_->validators()->texture_format.IsValid(GL_SRGB_EXT)); |
| 614 EXPECT_TRUE(info_->validators()->texture_format.IsValid(GL_SRGB_ALPHA_EXT)); | 611 EXPECT_TRUE(info_->validators()->texture_format.IsValid(GL_SRGB_ALPHA_EXT)); |
| 615 EXPECT_TRUE( | 612 EXPECT_TRUE( |
| 616 info_->validators()->texture_internal_format.IsValid(GL_SRGB_EXT)); | 613 info_->validators()->texture_internal_format.IsValid(GL_SRGB_EXT)); |
| 617 EXPECT_TRUE(info_->validators()->texture_internal_format.IsValid( | 614 EXPECT_TRUE(info_->validators()->texture_internal_format.IsValid( |
| 618 GL_SRGB_ALPHA_EXT)); | 615 GL_SRGB_ALPHA_EXT)); |
| 619 EXPECT_TRUE( | 616 EXPECT_TRUE( |
| 620 info_->validators()->render_buffer_format.IsValid(GL_SRGB8_ALPHA8_EXT)); | 617 info_->validators()->render_buffer_format.IsValid(GL_SRGB8_ALPHA8_EXT)); |
| 621 EXPECT_TRUE(info_->validators()->framebuffer_parameter.IsValid( | 618 EXPECT_TRUE(info_->validators()->framebuffer_parameter.IsValid( |
| 622 GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT)); | 619 GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT)); |
| (...skipping 295 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 918 EXPECT_THAT(info_->extensions(), Not(HasSubstr("GL_OES_texture_float"))); | 915 EXPECT_THAT(info_->extensions(), Not(HasSubstr("GL_OES_texture_float"))); |
| 919 EXPECT_THAT(info_->extensions(), Not(HasSubstr("GL_OES_texture_half_float"))); | 916 EXPECT_THAT(info_->extensions(), Not(HasSubstr("GL_OES_texture_half_float"))); |
| 920 EXPECT_THAT(info_->extensions(), | 917 EXPECT_THAT(info_->extensions(), |
| 921 Not(HasSubstr("GL_OES_texture_float_linear"))); | 918 Not(HasSubstr("GL_OES_texture_float_linear"))); |
| 922 EXPECT_THAT(info_->extensions(), | 919 EXPECT_THAT(info_->extensions(), |
| 923 Not(HasSubstr("GL_OES_texture_half_float_linear"))); | 920 Not(HasSubstr("GL_OES_texture_half_float_linear"))); |
| 924 } | 921 } |
| 925 | 922 |
| 926 TEST_P(FeatureInfoTest, Initialize_sRGBGLES3) { | 923 TEST_P(FeatureInfoTest, Initialize_sRGBGLES3) { |
| 927 SetupInitExpectationsWithGLVersion("", "", "OpenGL ES 3.0"); | 924 SetupInitExpectationsWithGLVersion("", "", "OpenGL ES 3.0"); |
| 928 EXPECT_THAT(info_->extensions() + " ", Not(HasSubstr("GL_EXT_sRGB "))); | 925 EXPECT_THAT(info_->extensions(), Not(HasSubstr("GL_EXT_sRGB"))); |
| 929 EXPECT_FALSE(info_->validators()->texture_format.IsValid( | 926 EXPECT_FALSE(info_->validators()->texture_format.IsValid( |
| 930 GL_SRGB_EXT)); | 927 GL_SRGB_EXT)); |
| 931 EXPECT_FALSE(info_->validators()->texture_format.IsValid( | 928 EXPECT_FALSE(info_->validators()->texture_format.IsValid( |
| 932 GL_SRGB_ALPHA_EXT)); | 929 GL_SRGB_ALPHA_EXT)); |
| 933 EXPECT_FALSE(info_->validators()->texture_internal_format.IsValid( | 930 EXPECT_FALSE(info_->validators()->texture_internal_format.IsValid( |
| 934 GL_SRGB_EXT)); | 931 GL_SRGB_EXT)); |
| 935 EXPECT_FALSE(info_->validators()->texture_internal_format.IsValid( | 932 EXPECT_FALSE(info_->validators()->texture_internal_format.IsValid( |
| 936 GL_SRGB_ALPHA_EXT)); | 933 GL_SRGB_ALPHA_EXT)); |
| 937 EXPECT_FALSE(info_->validators()->render_buffer_format.IsValid( | 934 EXPECT_FALSE(info_->validators()->render_buffer_format.IsValid( |
| 938 GL_SRGB8_ALPHA8_EXT)); | 935 GL_SRGB8_ALPHA8_EXT)); |
| (...skipping 723 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1662 EXPECT_TRUE(info_->validators()->render_buffer_format.IsValid(GL_RG8_EXT)); | 1659 EXPECT_TRUE(info_->validators()->render_buffer_format.IsValid(GL_RG8_EXT)); |
| 1663 } | 1660 } |
| 1664 | 1661 |
| 1665 TEST_P(FeatureInfoTest, InitializeCHROMIUM_ycbcr_422_imageTrue) { | 1662 TEST_P(FeatureInfoTest, InitializeCHROMIUM_ycbcr_422_imageTrue) { |
| 1666 SetupInitExpectations("GL_APPLE_ycbcr_422"); | 1663 SetupInitExpectations("GL_APPLE_ycbcr_422"); |
| 1667 EXPECT_TRUE(info_->feature_flags().chromium_image_ycbcr_422); | 1664 EXPECT_TRUE(info_->feature_flags().chromium_image_ycbcr_422); |
| 1668 } | 1665 } |
| 1669 | 1666 |
| 1670 } // namespace gles2 | 1667 } // namespace gles2 |
| 1671 } // namespace gpu | 1668 } // namespace gpu |
| OLD | NEW |