Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(315)

Side by Side Diff: content/browser/compositor/gl_helper_unittest.cc

Issue 1874893002: Convert //content/browser from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 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 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 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
117 std::string json_data = "["; 117 std::string json_data = "[";
118 base::trace_event::TraceLog::GetInstance()->SetDisabled(); 118 base::trace_event::TraceLog::GetInstance()->SetDisabled();
119 base::RunLoop run_loop; 119 base::RunLoop run_loop;
120 base::trace_event::TraceLog::GetInstance()->Flush( 120 base::trace_event::TraceLog::GetInstance()->Flush(
121 base::Bind(&GLHelperTest::TraceDataCB, run_loop.QuitClosure(), 121 base::Bind(&GLHelperTest::TraceDataCB, run_loop.QuitClosure(),
122 base::Unretained(&json_data))); 122 base::Unretained(&json_data)));
123 run_loop.Run(); 123 run_loop.Run();
124 json_data.append("]"); 124 json_data.append("]");
125 125
126 std::string error_msg; 126 std::string error_msg;
127 scoped_ptr<base::Value> trace_data = 127 std::unique_ptr<base::Value> trace_data =
128 base::JSONReader::ReadAndReturnError(json_data, 0, NULL, &error_msg); 128 base::JSONReader::ReadAndReturnError(json_data, 0, NULL, &error_msg);
129 CHECK(trace_data) << "JSON parsing failed (" << error_msg 129 CHECK(trace_data) << "JSON parsing failed (" << error_msg
130 << ") JSON data:" << std::endl 130 << ") JSON data:" << std::endl
131 << json_data; 131 << json_data;
132 132
133 base::ListValue* list; 133 base::ListValue* list;
134 CHECK(trace_data->GetAsList(&list)); 134 CHECK(trace_data->GetAsList(&list));
135 for (size_t i = 0; i < list->GetSize(); i++) { 135 for (size_t i = 0; i < list->GetSize(); i++) {
136 base::Value* item = NULL; 136 base::Value* item = NULL;
137 if (list->Get(i, &item)) { 137 if (list->Get(i, &item)) {
(...skipping 529 matching lines...) Expand 10 before | Expand all | Expand 10 after
667 } 667 }
668 668
669 SkBitmap tmp; 669 SkBitmap tmp;
670 tmp.allocN32Pixels(xtmp, ytmp); 670 tmp.allocN32Pixels(xtmp, ytmp);
671 671
672 ScaleSlowRecursive(input, &tmp, quality); 672 ScaleSlowRecursive(input, &tmp, quality);
673 ScaleSlowRecursive(&tmp, output, quality); 673 ScaleSlowRecursive(&tmp, output, quality);
674 } 674 }
675 675
676 // Creates an RGBA SkBitmap 676 // Creates an RGBA SkBitmap
677 scoped_ptr<SkBitmap> CreateTestBitmap(int width, 677 std::unique_ptr<SkBitmap> CreateTestBitmap(int width,
678 int height, 678 int height,
679 int test_pattern) { 679 int test_pattern) {
680 scoped_ptr<SkBitmap> bitmap(new SkBitmap); 680 std::unique_ptr<SkBitmap> bitmap(new SkBitmap);
681 bitmap->allocPixels(SkImageInfo::Make(width, height, kRGBA_8888_SkColorType, 681 bitmap->allocPixels(SkImageInfo::Make(width, height, kRGBA_8888_SkColorType,
682 kPremul_SkAlphaType)); 682 kPremul_SkAlphaType));
683 683
684 for (int x = 0; x < width; ++x) { 684 for (int x = 0; x < width; ++x) {
685 for (int y = 0; y < height; ++y) { 685 for (int y = 0; y < height; ++y) {
686 switch (test_pattern) { 686 switch (test_pattern) {
687 case 0: // Smooth test pattern 687 case 0: // Smooth test pattern
688 SetChannel(bitmap.get(), x, y, 0, x * 10); 688 SetChannel(bitmap.get(), x, y, 0, x * 10);
689 SetChannel(bitmap.get(), x, y, 0, y == 0 ? x * 50 : x * 10); 689 SetChannel(bitmap.get(), x, y, 0, y == 0 ? x * 50 : x * 10);
690 SetChannel(bitmap.get(), x, y, 1, y * 10); 690 SetChannel(bitmap.get(), x, y, 1, y * 10);
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
732 SkColorType out_color_type, 732 SkColorType out_color_type,
733 bool swizzle, 733 bool swizzle,
734 size_t quality_index) { 734 size_t quality_index) {
735 DCHECK(out_color_type == kAlpha_8_SkColorType || 735 DCHECK(out_color_type == kAlpha_8_SkColorType ||
736 out_color_type == kRGBA_8888_SkColorType || 736 out_color_type == kRGBA_8888_SkColorType ||
737 out_color_type == kBGRA_8888_SkColorType); 737 out_color_type == kBGRA_8888_SkColorType);
738 GLuint src_texture; 738 GLuint src_texture;
739 gl_->GenTextures(1, &src_texture); 739 gl_->GenTextures(1, &src_texture);
740 GLuint framebuffer; 740 GLuint framebuffer;
741 gl_->GenFramebuffers(1, &framebuffer); 741 gl_->GenFramebuffers(1, &framebuffer);
742 scoped_ptr<SkBitmap> input_pixels = 742 std::unique_ptr<SkBitmap> input_pixels =
743 CreateTestBitmap(xsize, ysize, test_pattern); 743 CreateTestBitmap(xsize, ysize, test_pattern);
744 BindTextureAndFrameBuffer(src_texture, framebuffer, input_pixels.get(), 744 BindTextureAndFrameBuffer(src_texture, framebuffer, input_pixels.get(),
745 xsize, ysize); 745 xsize, ysize);
746 746
747 std::string message = base::StringPrintf( 747 std::string message = base::StringPrintf(
748 "input size: %dx%d " 748 "input size: %dx%d "
749 "output size: %dx%d " 749 "output size: %dx%d "
750 "pattern: %d , quality: %s, " 750 "pattern: %d , quality: %s, "
751 "out_color_type: %d", 751 "out_color_type: %d",
752 xsize, ysize, scaled_xsize, scaled_ysize, test_pattern, 752 xsize, ysize, scaled_xsize, scaled_ysize, test_pattern,
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
811 int ysize, 811 int ysize,
812 int scaled_xsize, 812 int scaled_xsize,
813 int scaled_ysize, 813 int scaled_ysize,
814 int test_pattern, 814 int test_pattern,
815 size_t quality_index, 815 size_t quality_index,
816 bool flip) { 816 bool flip) {
817 GLuint src_texture; 817 GLuint src_texture;
818 gl_->GenTextures(1, &src_texture); 818 gl_->GenTextures(1, &src_texture);
819 GLuint framebuffer; 819 GLuint framebuffer;
820 gl_->GenFramebuffers(1, &framebuffer); 820 gl_->GenFramebuffers(1, &framebuffer);
821 scoped_ptr<SkBitmap> input_pixels = 821 std::unique_ptr<SkBitmap> input_pixels =
822 CreateTestBitmap(xsize, ysize, test_pattern); 822 CreateTestBitmap(xsize, ysize, test_pattern);
823 BindTextureAndFrameBuffer(src_texture, framebuffer, input_pixels.get(), 823 BindTextureAndFrameBuffer(src_texture, framebuffer, input_pixels.get(),
824 xsize, ysize); 824 xsize, ysize);
825 825
826 std::string message = base::StringPrintf( 826 std::string message = base::StringPrintf(
827 "input size: %dx%d " 827 "input size: %dx%d "
828 "output size: %dx%d " 828 "output size: %dx%d "
829 "pattern: %d quality: %s", 829 "pattern: %d quality: %s",
830 xsize, ysize, scaled_xsize, scaled_ysize, test_pattern, 830 xsize, ysize, scaled_xsize, scaled_ysize, test_pattern,
831 kQualityNames[quality_index]); 831 kQualityNames[quality_index]);
(...skipping 467 matching lines...) Expand 10 before | Expand all | Expand 10 after
1299 gpu::SyncToken sync_token; 1299 gpu::SyncToken sync_token;
1300 gl_->GenSyncTokenCHROMIUM(fence_sync, sync_token.GetData()); 1300 gl_->GenSyncTokenCHROMIUM(fence_sync, sync_token.GetData());
1301 1301
1302 std::string message = base::StringPrintf( 1302 std::string message = base::StringPrintf(
1303 "input size: %dx%d " 1303 "input size: %dx%d "
1304 "output size: %dx%d " 1304 "output size: %dx%d "
1305 "margin: %dx%d " 1305 "margin: %dx%d "
1306 "pattern: %d %s %s", 1306 "pattern: %d %s %s",
1307 xsize, ysize, output_xsize, output_ysize, xmargin, ymargin, 1307 xsize, ysize, output_xsize, output_ysize, xmargin, ymargin,
1308 test_pattern, flip ? "flip" : "noflip", flip ? "mrt" : "nomrt"); 1308 test_pattern, flip ? "flip" : "noflip", flip ? "mrt" : "nomrt");
1309 scoped_ptr<ReadbackYUVInterface> yuv_reader( 1309 std::unique_ptr<ReadbackYUVInterface> yuv_reader(
1310 helper_->CreateReadbackPipelineYUV( 1310 helper_->CreateReadbackPipelineYUV(
1311 quality, gfx::Size(xsize, ysize), gfx::Rect(0, 0, xsize, ysize), 1311 quality, gfx::Size(xsize, ysize), gfx::Rect(0, 0, xsize, ysize),
1312 gfx::Size(xsize, ysize), flip, use_mrt)); 1312 gfx::Size(xsize, ysize), flip, use_mrt));
1313 1313
1314 scoped_refptr<media::VideoFrame> output_frame = 1314 scoped_refptr<media::VideoFrame> output_frame =
1315 media::VideoFrame::CreateFrame( 1315 media::VideoFrame::CreateFrame(
1316 media::PIXEL_FORMAT_YV12, 1316 media::PIXEL_FORMAT_YV12,
1317 // The coded size of the output frame is rounded up to the next 1317 // The coded size of the output frame is rounded up to the next
1318 // 16-byte boundary. This tests that the readback is being 1318 // 16-byte boundary. This tests that the readback is being
1319 // positioned inside the frame's visible region, and not dependent 1319 // positioned inside the frame's visible region, and not dependent
(...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after
1566 y_ops_.push_back(GLHelperScaling::ScaleOp(2, false, 2)); 1566 y_ops_.push_back(GLHelperScaling::ScaleOp(2, false, 2));
1567 y_ops_.push_back(GLHelperScaling::ScaleOp(2, false, 1)); 1567 y_ops_.push_back(GLHelperScaling::ScaleOp(2, false, 1));
1568 CheckPipeline2(100, 100, 1, 1, 1568 CheckPipeline2(100, 100, 1, 1,
1569 "100x100 -> 100x32 bilinear4 Y\n" 1569 "100x100 -> 100x32 bilinear4 Y\n"
1570 "100x32 -> 100x4 bilinear4 Y\n" 1570 "100x32 -> 100x4 bilinear4 Y\n"
1571 "100x4 -> 64x1 bilinear2x2\n" 1571 "100x4 -> 64x1 bilinear2x2\n"
1572 "64x1 -> 8x1 bilinear4 X\n" 1572 "64x1 -> 8x1 bilinear4 X\n"
1573 "8x1 -> 1x1 bilinear4 X\n"); 1573 "8x1 -> 1x1 bilinear4 X\n");
1574 } 1574 }
1575 1575
1576 scoped_ptr<gpu::GLInProcessContext> context_; 1576 std::unique_ptr<gpu::GLInProcessContext> context_;
1577 gpu::gles2::GLES2Interface* gl_; 1577 gpu::gles2::GLES2Interface* gl_;
1578 scoped_ptr<content::GLHelper> helper_; 1578 std::unique_ptr<content::GLHelper> helper_;
1579 scoped_ptr<content::GLHelperScaling> helper_scaling_; 1579 std::unique_ptr<content::GLHelperScaling> helper_scaling_;
1580 std::deque<GLHelperScaling::ScaleOp> x_ops_, y_ops_; 1580 std::deque<GLHelperScaling::ScaleOp> x_ops_, y_ops_;
1581 }; 1581 };
1582 1582
1583 class GLHelperPixelTest : public GLHelperTest { 1583 class GLHelperPixelTest : public GLHelperTest {
1584 private: 1584 private:
1585 gfx::DisableNullDrawGLBindings enable_pixel_output_; 1585 gfx::DisableNullDrawGLBindings enable_pixel_output_;
1586 }; 1586 };
1587 1587
1588 TEST_F(GLHelperTest, RGBASyncReadbackTest) { 1588 TEST_F(GLHelperTest, RGBASyncReadbackTest) {
1589 const int kTestSize = 64; 1589 const int kTestSize = 64;
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after
1819 } 1819 }
1820 } 1820 }
1821 } 1821 }
1822 1822
1823 TEST_F(GLHelperTest, CheckOptimizations) { 1823 TEST_F(GLHelperTest, CheckOptimizations) {
1824 // Test in baseclass since it is friends with GLHelperScaling 1824 // Test in baseclass since it is friends with GLHelperScaling
1825 CheckOptimizationsTest(); 1825 CheckOptimizationsTest();
1826 } 1826 }
1827 1827
1828 } // namespace content 1828 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/compositor/gl_helper_scaling.cc ('k') | content/browser/compositor/gpu_browser_compositor_output_surface.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698