| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 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 "cc/quads/draw_quad.h" | 5 #include "cc/quads/draw_quad.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
| (...skipping 605 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 616 EXPECT_EQ(texture_size, copy_quad->texture_size); | 616 EXPECT_EQ(texture_size, copy_quad->texture_size); |
| 617 EXPECT_EQ(swizzle_contents, copy_quad->swizzle_contents); | 617 EXPECT_EQ(swizzle_contents, copy_quad->swizzle_contents); |
| 618 } | 618 } |
| 619 | 619 |
| 620 TEST(DrawQuadTest, CopyYUVVideoDrawQuad) { | 620 TEST(DrawQuadTest, CopyYUVVideoDrawQuad) { |
| 621 gfx::Rect opaque_rect(3, 7, 10, 12); | 621 gfx::Rect opaque_rect(3, 7, 10, 12); |
| 622 gfx::SizeF tex_scale(0.75f, 0.5f); | 622 gfx::SizeF tex_scale(0.75f, 0.5f); |
| 623 ResourceProvider::ResourceId y_plane_resource_id = 45; | 623 ResourceProvider::ResourceId y_plane_resource_id = 45; |
| 624 ResourceProvider::ResourceId u_plane_resource_id = 532; | 624 ResourceProvider::ResourceId u_plane_resource_id = 532; |
| 625 ResourceProvider::ResourceId v_plane_resource_id = 4; | 625 ResourceProvider::ResourceId v_plane_resource_id = 4; |
| 626 ResourceProvider::ResourceId a_plane_resource_id = 63; |
| 626 CREATE_SHARED_STATE(); | 627 CREATE_SHARED_STATE(); |
| 627 | 628 |
| 628 CREATE_QUAD_5_NEW(YUVVideoDrawQuad, | 629 CREATE_QUAD_6_NEW(YUVVideoDrawQuad, |
| 629 opaque_rect, | 630 opaque_rect, |
| 630 tex_scale, | 631 tex_scale, |
| 631 y_plane_resource_id, | 632 y_plane_resource_id, |
| 632 u_plane_resource_id, | 633 u_plane_resource_id, |
| 633 v_plane_resource_id); | 634 v_plane_resource_id, |
| 635 a_plane_resource_id); |
| 634 EXPECT_EQ(DrawQuad::YUV_VIDEO_CONTENT, copy_quad->material); | 636 EXPECT_EQ(DrawQuad::YUV_VIDEO_CONTENT, copy_quad->material); |
| 635 EXPECT_RECT_EQ(opaque_rect, copy_quad->opaque_rect); | 637 EXPECT_RECT_EQ(opaque_rect, copy_quad->opaque_rect); |
| 636 EXPECT_EQ(tex_scale, copy_quad->tex_scale); | 638 EXPECT_EQ(tex_scale, copy_quad->tex_scale); |
| 637 EXPECT_EQ(y_plane_resource_id, copy_quad->y_plane_resource_id); | 639 EXPECT_EQ(y_plane_resource_id, copy_quad->y_plane_resource_id); |
| 638 EXPECT_EQ(u_plane_resource_id, copy_quad->u_plane_resource_id); | 640 EXPECT_EQ(u_plane_resource_id, copy_quad->u_plane_resource_id); |
| 639 EXPECT_EQ(v_plane_resource_id, copy_quad->v_plane_resource_id); | 641 EXPECT_EQ(v_plane_resource_id, copy_quad->v_plane_resource_id); |
| 642 EXPECT_EQ(a_plane_resource_id, copy_quad->a_plane_resource_id); |
| 640 | 643 |
| 641 CREATE_QUAD_4_ALL(YUVVideoDrawQuad, | 644 CREATE_QUAD_5_ALL(YUVVideoDrawQuad, |
| 642 tex_scale, | 645 tex_scale, |
| 643 y_plane_resource_id, | 646 y_plane_resource_id, |
| 644 u_plane_resource_id, | 647 u_plane_resource_id, |
| 645 v_plane_resource_id); | 648 v_plane_resource_id, |
| 649 a_plane_resource_id); |
| 646 EXPECT_EQ(DrawQuad::YUV_VIDEO_CONTENT, copy_quad->material); | 650 EXPECT_EQ(DrawQuad::YUV_VIDEO_CONTENT, copy_quad->material); |
| 647 EXPECT_EQ(tex_scale, copy_quad->tex_scale); | 651 EXPECT_EQ(tex_scale, copy_quad->tex_scale); |
| 648 EXPECT_EQ(y_plane_resource_id, copy_quad->y_plane_resource_id); | 652 EXPECT_EQ(y_plane_resource_id, copy_quad->y_plane_resource_id); |
| 649 EXPECT_EQ(u_plane_resource_id, copy_quad->u_plane_resource_id); | 653 EXPECT_EQ(u_plane_resource_id, copy_quad->u_plane_resource_id); |
| 650 EXPECT_EQ(v_plane_resource_id, copy_quad->v_plane_resource_id); | 654 EXPECT_EQ(v_plane_resource_id, copy_quad->v_plane_resource_id); |
| 655 EXPECT_EQ(a_plane_resource_id, copy_quad->a_plane_resource_id); |
| 651 } | 656 } |
| 652 | 657 |
| 653 TEST(DrawQuadTest, CopyPictureDrawQuad) { | 658 TEST(DrawQuadTest, CopyPictureDrawQuad) { |
| 654 gfx::Rect opaque_rect(33, 44, 22, 33); | 659 gfx::Rect opaque_rect(33, 44, 22, 33); |
| 655 gfx::RectF tex_coord_rect(31.f, 12.f, 54.f, 20.f); | 660 gfx::RectF tex_coord_rect(31.f, 12.f, 54.f, 20.f); |
| 656 gfx::Size texture_size(85, 32); | 661 gfx::Size texture_size(85, 32); |
| 657 bool swizzle_contents = true; | 662 bool swizzle_contents = true; |
| 658 gfx::Rect content_rect(30, 40, 20, 30); | 663 gfx::Rect content_rect(30, 40, 20, 30); |
| 659 float contents_scale = 3.141592f; | 664 float contents_scale = 3.141592f; |
| 660 bool can_draw_direct_to_backbuffer = true; | 665 bool can_draw_direct_to_backbuffer = true; |
| (...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 847 EXPECT_EQ(1, IterateAndCount(quad_new.get())); | 852 EXPECT_EQ(1, IterateAndCount(quad_new.get())); |
| 848 EXPECT_EQ(resource_id + 1, quad_new->resource_id); | 853 EXPECT_EQ(resource_id + 1, quad_new->resource_id); |
| 849 } | 854 } |
| 850 | 855 |
| 851 TEST_F(DrawQuadIteratorTest, YUVVideoDrawQuad) { | 856 TEST_F(DrawQuadIteratorTest, YUVVideoDrawQuad) { |
| 852 gfx::Rect opaque_rect(3, 7, 10, 12); | 857 gfx::Rect opaque_rect(3, 7, 10, 12); |
| 853 gfx::SizeF tex_scale(0.75f, 0.5f); | 858 gfx::SizeF tex_scale(0.75f, 0.5f); |
| 854 ResourceProvider::ResourceId y_plane_resource_id = 45; | 859 ResourceProvider::ResourceId y_plane_resource_id = 45; |
| 855 ResourceProvider::ResourceId u_plane_resource_id = 532; | 860 ResourceProvider::ResourceId u_plane_resource_id = 532; |
| 856 ResourceProvider::ResourceId v_plane_resource_id = 4; | 861 ResourceProvider::ResourceId v_plane_resource_id = 4; |
| 862 ResourceProvider::ResourceId a_plane_resource_id = 63; |
| 857 | 863 |
| 858 CREATE_SHARED_STATE(); | 864 CREATE_SHARED_STATE(); |
| 859 CREATE_QUAD_5_NEW(YUVVideoDrawQuad, | 865 CREATE_QUAD_6_NEW(YUVVideoDrawQuad, |
| 860 opaque_rect, | 866 opaque_rect, |
| 861 tex_scale, | 867 tex_scale, |
| 862 y_plane_resource_id, | 868 y_plane_resource_id, |
| 863 u_plane_resource_id, | 869 u_plane_resource_id, |
| 864 v_plane_resource_id); | 870 v_plane_resource_id, |
| 871 a_plane_resource_id); |
| 865 EXPECT_EQ(DrawQuad::YUV_VIDEO_CONTENT, copy_quad->material); | 872 EXPECT_EQ(DrawQuad::YUV_VIDEO_CONTENT, copy_quad->material); |
| 866 EXPECT_EQ(y_plane_resource_id, quad_new->y_plane_resource_id); | 873 EXPECT_EQ(y_plane_resource_id, quad_new->y_plane_resource_id); |
| 867 EXPECT_EQ(u_plane_resource_id, quad_new->u_plane_resource_id); | 874 EXPECT_EQ(u_plane_resource_id, quad_new->u_plane_resource_id); |
| 868 EXPECT_EQ(v_plane_resource_id, quad_new->v_plane_resource_id); | 875 EXPECT_EQ(v_plane_resource_id, quad_new->v_plane_resource_id); |
| 869 EXPECT_EQ(3, IterateAndCount(quad_new.get())); | 876 EXPECT_EQ(a_plane_resource_id, quad_new->a_plane_resource_id); |
| 877 EXPECT_EQ(4, IterateAndCount(quad_new.get())); |
| 870 EXPECT_EQ(y_plane_resource_id + 1, quad_new->y_plane_resource_id); | 878 EXPECT_EQ(y_plane_resource_id + 1, quad_new->y_plane_resource_id); |
| 871 EXPECT_EQ(u_plane_resource_id + 1, quad_new->u_plane_resource_id); | 879 EXPECT_EQ(u_plane_resource_id + 1, quad_new->u_plane_resource_id); |
| 872 EXPECT_EQ(v_plane_resource_id + 1, quad_new->v_plane_resource_id); | 880 EXPECT_EQ(v_plane_resource_id + 1, quad_new->v_plane_resource_id); |
| 881 EXPECT_EQ(a_plane_resource_id + 1, quad_new->a_plane_resource_id); |
| 873 } | 882 } |
| 874 | 883 |
| 875 // Disabled until picture draw quad is supported for ubercomp: crbug.com/231715 | 884 // Disabled until picture draw quad is supported for ubercomp: crbug.com/231715 |
| 876 TEST_F(DrawQuadIteratorTest, DISABLED_PictureDrawQuad) { | 885 TEST_F(DrawQuadIteratorTest, DISABLED_PictureDrawQuad) { |
| 877 gfx::Rect opaque_rect(33, 44, 22, 33); | 886 gfx::Rect opaque_rect(33, 44, 22, 33); |
| 878 gfx::RectF tex_coord_rect(31.f, 12.f, 54.f, 20.f); | 887 gfx::RectF tex_coord_rect(31.f, 12.f, 54.f, 20.f); |
| 879 gfx::Size texture_size(85, 32); | 888 gfx::Size texture_size(85, 32); |
| 880 bool swizzle_contents = true; | 889 bool swizzle_contents = true; |
| 881 gfx::Rect content_rect(30, 40, 20, 30); | 890 gfx::Rect content_rect(30, 40, 20, 30); |
| 882 float contents_scale = 3.141592f; | 891 float contents_scale = 3.141592f; |
| 883 bool can_draw_direct_to_backbuffer = true; | 892 bool can_draw_direct_to_backbuffer = true; |
| 884 scoped_refptr<PicturePileImpl> picture_pile = PicturePileImpl::Create(false); | 893 scoped_refptr<PicturePileImpl> picture_pile = PicturePileImpl::Create(false); |
| 885 | 894 |
| 886 CREATE_SHARED_STATE(); | 895 CREATE_SHARED_STATE(); |
| 887 CREATE_QUAD_8_NEW(PictureDrawQuad, | 896 CREATE_QUAD_8_NEW(PictureDrawQuad, |
| 888 opaque_rect, | 897 opaque_rect, |
| 889 tex_coord_rect, | 898 tex_coord_rect, |
| 890 texture_size, | 899 texture_size, |
| 891 swizzle_contents, | 900 swizzle_contents, |
| 892 content_rect, | 901 content_rect, |
| 893 contents_scale, | 902 contents_scale, |
| 894 can_draw_direct_to_backbuffer, | 903 can_draw_direct_to_backbuffer, |
| 895 picture_pile); | 904 picture_pile); |
| 896 EXPECT_EQ(0, IterateAndCount(quad_new.get())); | 905 EXPECT_EQ(0, IterateAndCount(quad_new.get())); |
| 897 } | 906 } |
| 898 | 907 |
| 899 } // namespace | 908 } // namespace |
| 900 } // namespace cc | 909 } // namespace cc |
| OLD | NEW |