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 "base/message_loop/message_loop.h" | 5 #include "base/message_loop/message_loop.h" |
6 #include "cc/input/selection.h" | 6 #include "cc/input/selection.h" |
7 #include "cc/ipc/traits_test_service.mojom.h" | 7 #include "cc/ipc/traits_test_service.mojom.h" |
8 #include "cc/quads/debug_border_draw_quad.h" | 8 #include "cc/quads/debug_border_draw_quad.h" |
9 #include "cc/quads/render_pass.h" | 9 #include "cc/quads/render_pass.h" |
10 #include "cc/quads/render_pass_draw_quad.h" | 10 #include "cc/quads/render_pass_draw_quad.h" |
(...skipping 862 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
873 const gfx::RectF uv_tex_coord_rect(1234.1f, 4321.2f, 1357.3f, 7531.4f); | 873 const gfx::RectF uv_tex_coord_rect(1234.1f, 4321.2f, 1357.3f, 7531.4f); |
874 const gfx::Size ya_tex_size(1234, 5678); | 874 const gfx::Size ya_tex_size(1234, 5678); |
875 const gfx::Size uv_tex_size(4321, 8765); | 875 const gfx::Size uv_tex_size(4321, 8765); |
876 const uint32_t y_plane_resource_id = 1337; | 876 const uint32_t y_plane_resource_id = 1337; |
877 const uint32_t u_plane_resource_id = 1234; | 877 const uint32_t u_plane_resource_id = 1234; |
878 const uint32_t v_plane_resource_id = 2468; | 878 const uint32_t v_plane_resource_id = 2468; |
879 const uint32_t a_plane_resource_id = 7890; | 879 const uint32_t a_plane_resource_id = 7890; |
880 const YUVVideoDrawQuad::ColorSpace color_space = YUVVideoDrawQuad::JPEG; | 880 const YUVVideoDrawQuad::ColorSpace color_space = YUVVideoDrawQuad::JPEG; |
881 const float resource_offset = 1337.5f; | 881 const float resource_offset = 1337.5f; |
882 const float resource_multiplier = 1234.6f; | 882 const float resource_multiplier = 1234.6f; |
| 883 const uint32_t bits_per_channel = 13; |
883 | 884 |
884 SharedQuadState* sqs = render_pass->CreateAndAppendSharedQuadState(); | 885 SharedQuadState* sqs = render_pass->CreateAndAppendSharedQuadState(); |
885 YUVVideoDrawQuad* quad = | 886 YUVVideoDrawQuad* quad = |
886 render_pass->CreateAndAppendDrawQuad<YUVVideoDrawQuad>(); | 887 render_pass->CreateAndAppendDrawQuad<YUVVideoDrawQuad>(); |
887 quad->SetAll(sqs, rect, opaque_rect, visible_rect, needs_blending, | 888 quad->SetAll(sqs, rect, opaque_rect, visible_rect, needs_blending, |
888 ya_tex_coord_rect, uv_tex_coord_rect, ya_tex_size, uv_tex_size, | 889 ya_tex_coord_rect, uv_tex_coord_rect, ya_tex_size, uv_tex_size, |
889 y_plane_resource_id, u_plane_resource_id, v_plane_resource_id, | 890 y_plane_resource_id, u_plane_resource_id, v_plane_resource_id, |
890 a_plane_resource_id, color_space, resource_offset, | 891 a_plane_resource_id, color_space, resource_offset, |
891 resource_multiplier); | 892 resource_multiplier, bits_per_channel); |
892 | 893 |
893 mojom::TraitsTestServicePtr proxy = GetTraitsTestProxy(); | 894 mojom::TraitsTestServicePtr proxy = GetTraitsTestProxy(); |
894 std::unique_ptr<RenderPass> output; | 895 std::unique_ptr<RenderPass> output; |
895 proxy->EchoRenderPass(render_pass->DeepCopy(), &output); | 896 proxy->EchoRenderPass(render_pass->DeepCopy(), &output); |
896 | 897 |
897 ASSERT_EQ(render_pass->quad_list.size(), output->quad_list.size()); | 898 ASSERT_EQ(render_pass->quad_list.size(), output->quad_list.size()); |
898 | 899 |
899 ASSERT_EQ(material, output->quad_list.ElementAt(0)->material); | 900 ASSERT_EQ(material, output->quad_list.ElementAt(0)->material); |
900 const YUVVideoDrawQuad* out_quad = | 901 const YUVVideoDrawQuad* out_quad = |
901 YUVVideoDrawQuad::MaterialCast(output->quad_list.ElementAt(0)); | 902 YUVVideoDrawQuad::MaterialCast(output->quad_list.ElementAt(0)); |
902 EXPECT_EQ(rect, out_quad->rect); | 903 EXPECT_EQ(rect, out_quad->rect); |
903 EXPECT_EQ(opaque_rect, out_quad->opaque_rect); | 904 EXPECT_EQ(opaque_rect, out_quad->opaque_rect); |
904 EXPECT_EQ(visible_rect, out_quad->visible_rect); | 905 EXPECT_EQ(visible_rect, out_quad->visible_rect); |
905 EXPECT_EQ(needs_blending, out_quad->needs_blending); | 906 EXPECT_EQ(needs_blending, out_quad->needs_blending); |
906 EXPECT_EQ(ya_tex_coord_rect, out_quad->ya_tex_coord_rect); | 907 EXPECT_EQ(ya_tex_coord_rect, out_quad->ya_tex_coord_rect); |
907 EXPECT_EQ(uv_tex_coord_rect, out_quad->uv_tex_coord_rect); | 908 EXPECT_EQ(uv_tex_coord_rect, out_quad->uv_tex_coord_rect); |
908 EXPECT_EQ(ya_tex_size, out_quad->ya_tex_size); | 909 EXPECT_EQ(ya_tex_size, out_quad->ya_tex_size); |
909 EXPECT_EQ(uv_tex_size, out_quad->uv_tex_size); | 910 EXPECT_EQ(uv_tex_size, out_quad->uv_tex_size); |
910 EXPECT_EQ(y_plane_resource_id, out_quad->y_plane_resource_id()); | 911 EXPECT_EQ(y_plane_resource_id, out_quad->y_plane_resource_id()); |
911 EXPECT_EQ(u_plane_resource_id, out_quad->u_plane_resource_id()); | 912 EXPECT_EQ(u_plane_resource_id, out_quad->u_plane_resource_id()); |
912 EXPECT_EQ(v_plane_resource_id, out_quad->v_plane_resource_id()); | 913 EXPECT_EQ(v_plane_resource_id, out_quad->v_plane_resource_id()); |
913 EXPECT_EQ(a_plane_resource_id, out_quad->a_plane_resource_id()); | 914 EXPECT_EQ(a_plane_resource_id, out_quad->a_plane_resource_id()); |
914 EXPECT_EQ(color_space, out_quad->color_space); | 915 EXPECT_EQ(color_space, out_quad->color_space); |
915 EXPECT_EQ(resource_offset, out_quad->resource_offset); | 916 EXPECT_EQ(resource_offset, out_quad->resource_offset); |
916 EXPECT_EQ(resource_multiplier, out_quad->resource_multiplier); | 917 EXPECT_EQ(resource_multiplier, out_quad->resource_multiplier); |
| 918 EXPECT_EQ(bits_per_channel, out_quad->bits_per_channel); |
917 } | 919 } |
918 | 920 |
919 } // namespace cc | 921 } // namespace cc |
OLD | NEW |