| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 <stddef.h> | 5 #include <stddef.h> |
| 6 #include <stdint.h> | 6 #include <stdint.h> |
| 7 #include <stdio.h> | 7 #include <stdio.h> |
| 8 #include <string.h> | 8 #include <string.h> |
| 9 #include <cmath> | 9 #include <cmath> |
| 10 #include <string> | 10 #include <string> |
| (...skipping 718 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 729 // Step 2: Encode to grayscale if needed. | 729 // Step 2: Encode to grayscale if needed. |
| 730 if (out_color_type == kAlpha_8_SkColorType) { | 730 if (out_color_type == kAlpha_8_SkColorType) { |
| 731 truth_pixels.allocPixels(SkImageInfo::Make( | 731 truth_pixels.allocPixels(SkImageInfo::Make( |
| 732 scaled_xsize, scaled_ysize, out_color_type, kPremul_SkAlphaType)); | 732 scaled_xsize, scaled_ysize, out_color_type, kPremul_SkAlphaType)); |
| 733 EncodeToGrayscaleSlow(&scaled_pixels, &truth_pixels); | 733 EncodeToGrayscaleSlow(&scaled_pixels, &truth_pixels); |
| 734 } else { | 734 } else { |
| 735 truth_pixels = scaled_pixels; | 735 truth_pixels = scaled_pixels; |
| 736 } | 736 } |
| 737 | 737 |
| 738 // Now compare the results. | 738 // Now compare the results. |
| 739 SkAutoLockPixels lock_input(truth_pixels); | |
| 740 const std::vector<GLHelperScaling::ScalerStage> dummy_stages; | 739 const std::vector<GLHelperScaling::ScalerStage> dummy_stages; |
| 741 Compare(&truth_pixels, &output_pixels, 2, input_pixels.get(), dummy_stages, | 740 Compare(&truth_pixels, &output_pixels, 2, input_pixels.get(), dummy_stages, |
| 742 message + " comparing against transformed/scaled"); | 741 message + " comparing against transformed/scaled"); |
| 743 | 742 |
| 744 gl_->DeleteTextures(1, &src_texture); | 743 gl_->DeleteTextures(1, &src_texture); |
| 745 gl_->DeleteFramebuffers(1, &framebuffer); | 744 gl_->DeleteFramebuffers(1, &framebuffer); |
| 746 } | 745 } |
| 747 | 746 |
| 748 // Scaling test: Create a test image, scale it using GLHelperScaling | 747 // Scaling test: Create a test image, scale it using GLHelperScaling |
| 749 // and a reference implementation and compare the results. | 748 // and a reference implementation and compare the results. |
| (...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 954 bool IsEqual(const SkBitmap& bmp1, const SkBitmap& bmp2) { | 953 bool IsEqual(const SkBitmap& bmp1, const SkBitmap& bmp2) { |
| 955 if (bmp1.isNull() && bmp2.isNull()) | 954 if (bmp1.isNull() && bmp2.isNull()) |
| 956 return true; | 955 return true; |
| 957 if (bmp1.width() != bmp2.width() || bmp1.height() != bmp2.height()) { | 956 if (bmp1.width() != bmp2.width() || bmp1.height() != bmp2.height()) { |
| 958 LOG(ERROR) << "Bitmap geometry check failure"; | 957 LOG(ERROR) << "Bitmap geometry check failure"; |
| 959 return false; | 958 return false; |
| 960 } | 959 } |
| 961 if (bmp1.colorType() != bmp2.colorType()) | 960 if (bmp1.colorType() != bmp2.colorType()) |
| 962 return false; | 961 return false; |
| 963 | 962 |
| 964 SkAutoLockPixels lock1(bmp1); | |
| 965 SkAutoLockPixels lock2(bmp2); | |
| 966 if (!bmp1.getPixels() || !bmp2.getPixels()) { | 963 if (!bmp1.getPixels() || !bmp2.getPixels()) { |
| 967 LOG(ERROR) << "Empty Bitmap!"; | 964 LOG(ERROR) << "Empty Bitmap!"; |
| 968 return false; | 965 return false; |
| 969 } | 966 } |
| 970 for (int y = 0; y < bmp1.height(); ++y) { | 967 for (int y = 0; y < bmp1.height(); ++y) { |
| 971 for (int x = 0; x < bmp1.width(); ++x) { | 968 for (int x = 0; x < bmp1.width(); ++x) { |
| 972 if (!ColorsClose(bmp1.getColor(x, y), bmp2.getColor(x, y), | 969 if (!ColorsClose(bmp1.getColor(x, y), bmp2.getColor(x, y), |
| 973 bmp1.colorType())) { | 970 bmp1.colorType())) { |
| 974 LOG(ERROR) << "Bitmap color comparision failure"; | 971 LOG(ERROR) << "Bitmap color comparision failure"; |
| 975 return false; | 972 return false; |
| (...skipping 452 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1428 } | 1425 } |
| 1429 } | 1426 } |
| 1430 } | 1427 } |
| 1431 | 1428 |
| 1432 TEST_F(GLHelperTest, CheckOptimizations) { | 1429 TEST_F(GLHelperTest, CheckOptimizations) { |
| 1433 // Test in baseclass since it is friends with GLHelperScaling | 1430 // Test in baseclass since it is friends with GLHelperScaling |
| 1434 CheckOptimizationsTest(); | 1431 CheckOptimizationsTest(); |
| 1435 } | 1432 } |
| 1436 | 1433 |
| 1437 } // namespace display_compositor | 1434 } // namespace display_compositor |
| OLD | NEW |