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 "content/common/cc_messages.h" | 5 #include "content/common/cc_messages.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <string.h> | 8 #include <string.h> |
9 | |
10 #include <algorithm> | 9 #include <algorithm> |
| 10 #include <utility> |
11 | 11 |
12 #include "base/macros.h" | 12 #include "base/macros.h" |
13 #include "build/build_config.h" | 13 #include "build/build_config.h" |
14 #include "cc/output/compositor_frame.h" | 14 #include "cc/output/compositor_frame.h" |
15 #include "content/public/common/common_param_traits.h" | 15 #include "content/public/common/common_param_traits.h" |
16 #include "ipc/ipc_message.h" | 16 #include "ipc/ipc_message.h" |
17 #include "testing/gtest/include/gtest/gtest.h" | 17 #include "testing/gtest/include/gtest/gtest.h" |
18 #include "third_party/khronos/GLES2/gl2ext.h" | 18 #include "third_party/khronos/GLES2/gl2ext.h" |
19 #include "third_party/skia/include/effects/SkBlurImageFilter.h" | 19 #include "third_party/skia/include/effects/SkBlurImageFilter.h" |
20 | 20 |
(...skipping 440 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
461 bool same_shared_quad_state_cmp = | 461 bool same_shared_quad_state_cmp = |
462 pass_cmp->quad_list.ElementAt(i)->shared_quad_state == | 462 pass_cmp->quad_list.ElementAt(i)->shared_quad_state == |
463 pass_cmp->quad_list.ElementAt(i - 1)->shared_quad_state; | 463 pass_cmp->quad_list.ElementAt(i - 1)->shared_quad_state; |
464 bool same_shared_quad_state_in = | 464 bool same_shared_quad_state_in = |
465 pass_in->quad_list.ElementAt(i)->shared_quad_state == | 465 pass_in->quad_list.ElementAt(i)->shared_quad_state == |
466 pass_in->quad_list.ElementAt(i - 1)->shared_quad_state; | 466 pass_in->quad_list.ElementAt(i - 1)->shared_quad_state; |
467 EXPECT_EQ(same_shared_quad_state_cmp, same_shared_quad_state_in); | 467 EXPECT_EQ(same_shared_quad_state_cmp, same_shared_quad_state_in); |
468 } | 468 } |
469 | 469 |
470 DelegatedFrameData frame_in; | 470 DelegatedFrameData frame_in; |
471 frame_in.render_pass_list.push_back(child_pass_in.Pass()); | 471 frame_in.render_pass_list.push_back(std::move(child_pass_in)); |
472 frame_in.render_pass_list.push_back(pass_in.Pass()); | 472 frame_in.render_pass_list.push_back(std::move(pass_in)); |
473 | 473 |
474 IPC::ParamTraits<DelegatedFrameData>::Write(&msg, frame_in); | 474 IPC::ParamTraits<DelegatedFrameData>::Write(&msg, frame_in); |
475 | 475 |
476 DelegatedFrameData frame_out; | 476 DelegatedFrameData frame_out; |
477 base::PickleIterator iter(msg); | 477 base::PickleIterator iter(msg); |
478 EXPECT_TRUE(IPC::ParamTraits<DelegatedFrameData>::Read(&msg, | 478 EXPECT_TRUE(IPC::ParamTraits<DelegatedFrameData>::Read(&msg, |
479 &iter, &frame_out)); | 479 &iter, &frame_out)); |
480 | 480 |
481 // Make sure the out and cmp RenderPasses match. | 481 // Make sure the out and cmp RenderPasses match. |
482 scoped_ptr<RenderPass> child_pass_out = frame_out.render_pass_list[0].Pass(); | 482 scoped_ptr<RenderPass> child_pass_out = |
| 483 std::move(frame_out.render_pass_list[0]); |
483 Compare(child_pass_cmp.get(), child_pass_out.get()); | 484 Compare(child_pass_cmp.get(), child_pass_out.get()); |
484 ASSERT_EQ(0u, child_pass_out->shared_quad_state_list.size()); | 485 ASSERT_EQ(0u, child_pass_out->shared_quad_state_list.size()); |
485 ASSERT_EQ(0u, child_pass_out->quad_list.size()); | 486 ASSERT_EQ(0u, child_pass_out->quad_list.size()); |
486 scoped_ptr<RenderPass> pass_out = frame_out.render_pass_list[1].Pass(); | 487 scoped_ptr<RenderPass> pass_out = std::move(frame_out.render_pass_list[1]); |
487 Compare(pass_cmp.get(), pass_out.get()); | 488 Compare(pass_cmp.get(), pass_out.get()); |
488 ASSERT_EQ(3u, pass_out->shared_quad_state_list.size()); | 489 ASSERT_EQ(3u, pass_out->shared_quad_state_list.size()); |
489 ASSERT_EQ(9u, pass_out->quad_list.size()); | 490 ASSERT_EQ(9u, pass_out->quad_list.size()); |
490 for (cc::SharedQuadStateList::ConstIterator | 491 for (cc::SharedQuadStateList::ConstIterator |
491 cmp_iterator = pass_cmp->shared_quad_state_list.begin(), | 492 cmp_iterator = pass_cmp->shared_quad_state_list.begin(), |
492 out_iterator = pass_out->shared_quad_state_list.begin(); | 493 out_iterator = pass_out->shared_quad_state_list.begin(); |
493 out_iterator != pass_out->shared_quad_state_list.end(); | 494 out_iterator != pass_out->shared_quad_state_list.end(); |
494 ++cmp_iterator, ++out_iterator) { | 495 ++cmp_iterator, ++out_iterator) { |
495 Compare(*cmp_iterator, *out_iterator); | 496 Compare(*cmp_iterator, *out_iterator); |
496 } | 497 } |
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
581 false, | 582 false, |
582 1.f, | 583 1.f, |
583 SkXfermode::kSrcOver_Mode, | 584 SkXfermode::kSrcOver_Mode, |
584 0); | 585 0); |
585 | 586 |
586 // 5 SharedQuadStates go in. | 587 // 5 SharedQuadStates go in. |
587 ASSERT_EQ(5u, pass_in->shared_quad_state_list.size()); | 588 ASSERT_EQ(5u, pass_in->shared_quad_state_list.size()); |
588 ASSERT_EQ(2u, pass_in->quad_list.size()); | 589 ASSERT_EQ(2u, pass_in->quad_list.size()); |
589 | 590 |
590 DelegatedFrameData frame_in; | 591 DelegatedFrameData frame_in; |
591 frame_in.render_pass_list.push_back(pass_in.Pass()); | 592 frame_in.render_pass_list.push_back(std::move(pass_in)); |
592 | 593 |
593 IPC::Message msg(1, 2, IPC::Message::PRIORITY_NORMAL); | 594 IPC::Message msg(1, 2, IPC::Message::PRIORITY_NORMAL); |
594 IPC::ParamTraits<DelegatedFrameData>::Write(&msg, frame_in); | 595 IPC::ParamTraits<DelegatedFrameData>::Write(&msg, frame_in); |
595 | 596 |
596 DelegatedFrameData frame_out; | 597 DelegatedFrameData frame_out; |
597 base::PickleIterator iter(msg); | 598 base::PickleIterator iter(msg); |
598 EXPECT_TRUE( | 599 EXPECT_TRUE( |
599 IPC::ParamTraits<DelegatedFrameData>::Read(&msg, &iter, &frame_out)); | 600 IPC::ParamTraits<DelegatedFrameData>::Read(&msg, &iter, &frame_out)); |
600 | 601 |
601 scoped_ptr<RenderPass> pass_out = frame_out.render_pass_list[0].Pass(); | 602 scoped_ptr<RenderPass> pass_out = std::move(frame_out.render_pass_list[0]); |
602 | 603 |
603 // 2 SharedQuadStates come out. The first and fourth SharedQuadStates were | 604 // 2 SharedQuadStates come out. The first and fourth SharedQuadStates were |
604 // used by quads, and so serialized. Others were not. | 605 // used by quads, and so serialized. Others were not. |
605 ASSERT_EQ(2u, pass_out->shared_quad_state_list.size()); | 606 ASSERT_EQ(2u, pass_out->shared_quad_state_list.size()); |
606 ASSERT_EQ(2u, pass_out->quad_list.size()); | 607 ASSERT_EQ(2u, pass_out->quad_list.size()); |
607 | 608 |
608 EXPECT_EQ(gfx::Size(1, 1).ToString(), | 609 EXPECT_EQ(gfx::Size(1, 1).ToString(), |
609 pass_out->shared_quad_state_list.ElementAt(0) | 610 pass_out->shared_quad_state_list.ElementAt(0) |
610 ->quad_layer_bounds.ToString()); | 611 ->quad_layer_bounds.ToString()); |
611 EXPECT_EQ(gfx::Size(4, 4).ToString(), | 612 EXPECT_EQ(gfx::Size(4, 4).ToString(), |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
649 arbitrary_resource2.mailbox_holder.sync_token = arbitrary_token2; | 650 arbitrary_resource2.mailbox_holder.sync_token = arbitrary_token2; |
650 arbitrary_resource2.is_overlay_candidate = false; | 651 arbitrary_resource2.is_overlay_candidate = false; |
651 | 652 |
652 scoped_ptr<RenderPass> renderpass_in = RenderPass::Create(); | 653 scoped_ptr<RenderPass> renderpass_in = RenderPass::Create(); |
653 renderpass_in->SetNew( | 654 renderpass_in->SetNew( |
654 RenderPassId(1, 1), gfx::Rect(), gfx::Rect(), gfx::Transform()); | 655 RenderPassId(1, 1), gfx::Rect(), gfx::Rect(), gfx::Transform()); |
655 | 656 |
656 DelegatedFrameData frame_in; | 657 DelegatedFrameData frame_in; |
657 frame_in.resource_list.push_back(arbitrary_resource1); | 658 frame_in.resource_list.push_back(arbitrary_resource1); |
658 frame_in.resource_list.push_back(arbitrary_resource2); | 659 frame_in.resource_list.push_back(arbitrary_resource2); |
659 frame_in.render_pass_list.push_back(renderpass_in.Pass()); | 660 frame_in.render_pass_list.push_back(std::move(renderpass_in)); |
660 | 661 |
661 IPC::ParamTraits<DelegatedFrameData>::Write(&msg, frame_in); | 662 IPC::ParamTraits<DelegatedFrameData>::Write(&msg, frame_in); |
662 | 663 |
663 DelegatedFrameData frame_out; | 664 DelegatedFrameData frame_out; |
664 base::PickleIterator iter(msg); | 665 base::PickleIterator iter(msg); |
665 EXPECT_TRUE(IPC::ParamTraits<DelegatedFrameData>::Read(&msg, | 666 EXPECT_TRUE(IPC::ParamTraits<DelegatedFrameData>::Read(&msg, |
666 &iter, &frame_out)); | 667 &iter, &frame_out)); |
667 | 668 |
668 ASSERT_EQ(2u, frame_out.resource_list.size()); | 669 ASSERT_EQ(2u, frame_out.resource_list.size()); |
669 Compare(arbitrary_resource1, frame_out.resource_list[0]); | 670 Compare(arbitrary_resource1, frame_out.resource_list[0]); |
670 Compare(arbitrary_resource2, frame_out.resource_list[1]); | 671 Compare(arbitrary_resource2, frame_out.resource_list[1]); |
671 } | 672 } |
672 | 673 |
673 } // namespace | 674 } // namespace |
674 } // namespace content | 675 } // namespace content |
OLD | NEW |