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/output/gl_renderer.h" | 5 #include "cc/output/gl_renderer.h" |
6 | 6 |
7 #include <set> | 7 #include <set> |
8 | 8 |
9 #include "cc/base/math_util.h" | 9 #include "cc/base/math_util.h" |
10 #include "cc/output/compositor_frame_metadata.h" | 10 #include "cc/output/compositor_frame_metadata.h" |
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
193 }; | 193 }; |
194 | 194 |
195 class GLRendererWithDefaultHarnessTest : public GLRendererTest { | 195 class GLRendererWithDefaultHarnessTest : public GLRendererTest { |
196 protected: | 196 protected: |
197 GLRendererWithDefaultHarnessTest() { | 197 GLRendererWithDefaultHarnessTest() { |
198 output_surface_ = | 198 output_surface_ = |
199 FakeOutputSurface::Create3d(TestWebGraphicsContext3D::Create()).Pass(); | 199 FakeOutputSurface::Create3d(TestWebGraphicsContext3D::Create()).Pass(); |
200 CHECK(output_surface_->BindToClient(&output_surface_client_)); | 200 CHECK(output_surface_->BindToClient(&output_surface_client_)); |
201 | 201 |
202 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); | 202 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); |
203 resource_provider_ = ResourceProvider::Create(output_surface_.get(), | 203 resource_provider_ = |
204 shared_bitmap_manager_.get(), | 204 ResourceProvider::Create(output_surface_.get(), |
205 NULL, | 205 shared_bitmap_manager_.get(), NULL, NULL, 0, |
206 NULL, | 206 false, false, 1).Pass(); |
207 0, | |
208 false, | |
209 1).Pass(); | |
210 renderer_ = make_scoped_ptr(new FakeRendererGL(&renderer_client_, | 207 renderer_ = make_scoped_ptr(new FakeRendererGL(&renderer_client_, |
211 &settings_, | 208 &settings_, |
212 output_surface_.get(), | 209 output_surface_.get(), |
213 resource_provider_.get())); | 210 resource_provider_.get())); |
214 } | 211 } |
215 | 212 |
216 void SwapBuffers() { renderer_->SwapBuffers(CompositorFrameMetadata()); } | 213 void SwapBuffers() { renderer_->SwapBuffers(CompositorFrameMetadata()); } |
217 | 214 |
218 RendererSettings settings_; | 215 RendererSettings settings_; |
219 FakeOutputSurfaceClient output_surface_client_; | 216 FakeOutputSurfaceClient output_surface_client_; |
220 scoped_ptr<FakeOutputSurface> output_surface_; | 217 scoped_ptr<FakeOutputSurface> output_surface_; |
221 FakeRendererClient renderer_client_; | 218 FakeRendererClient renderer_client_; |
222 scoped_ptr<SharedBitmapManager> shared_bitmap_manager_; | 219 scoped_ptr<SharedBitmapManager> shared_bitmap_manager_; |
223 scoped_ptr<ResourceProvider> resource_provider_; | 220 scoped_ptr<ResourceProvider> resource_provider_; |
224 scoped_ptr<FakeRendererGL> renderer_; | 221 scoped_ptr<FakeRendererGL> renderer_; |
225 }; | 222 }; |
226 | 223 |
227 // Closing the namespace here so that GLRendererShaderTest can take advantage | 224 // Closing the namespace here so that GLRendererShaderTest can take advantage |
228 // of the friend relationship with GLRenderer and all of the mock classes | 225 // of the friend relationship with GLRenderer and all of the mock classes |
229 // declared above it. | 226 // declared above it. |
230 } // namespace | 227 } // namespace |
231 | 228 |
232 class GLRendererShaderTest : public GLRendererTest { | 229 class GLRendererShaderTest : public GLRendererTest { |
233 protected: | 230 protected: |
234 GLRendererShaderTest() { | 231 GLRendererShaderTest() { |
235 output_surface_ = FakeOutputSurface::Create3d().Pass(); | 232 output_surface_ = FakeOutputSurface::Create3d().Pass(); |
236 CHECK(output_surface_->BindToClient(&output_surface_client_)); | 233 CHECK(output_surface_->BindToClient(&output_surface_client_)); |
237 | 234 |
238 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); | 235 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); |
239 resource_provider_ = ResourceProvider::Create(output_surface_.get(), | 236 resource_provider_ = |
240 shared_bitmap_manager_.get(), | 237 ResourceProvider::Create(output_surface_.get(), |
241 NULL, | 238 shared_bitmap_manager_.get(), NULL, NULL, 0, |
242 NULL, | 239 false, false, 1).Pass(); |
243 0, | |
244 false, | |
245 1).Pass(); | |
246 renderer_.reset(new FakeRendererGL(&renderer_client_, | 240 renderer_.reset(new FakeRendererGL(&renderer_client_, |
247 &settings_, | 241 &settings_, |
248 output_surface_.get(), | 242 output_surface_.get(), |
249 resource_provider_.get())); | 243 resource_provider_.get())); |
250 } | 244 } |
251 | 245 |
252 void TestRenderPassProgram(TexCoordPrecision precision, | 246 void TestRenderPassProgram(TexCoordPrecision precision, |
253 BlendMode blend_mode) { | 247 BlendMode blend_mode) { |
254 EXPECT_PROGRAM_VALID( | 248 EXPECT_PROGRAM_VALID( |
255 &renderer_->render_pass_program_[precision][blend_mode]); | 249 &renderer_->render_pass_program_[precision][blend_mode]); |
(...skipping 271 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
527 } | 521 } |
528 }; | 522 }; |
529 TEST_F(GLRendererTest, InitializationDoesNotMakeSynchronousCalls) { | 523 TEST_F(GLRendererTest, InitializationDoesNotMakeSynchronousCalls) { |
530 FakeOutputSurfaceClient output_surface_client; | 524 FakeOutputSurfaceClient output_surface_client; |
531 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 525 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
532 scoped_ptr<TestWebGraphicsContext3D>(new ForbidSynchronousCallContext))); | 526 scoped_ptr<TestWebGraphicsContext3D>(new ForbidSynchronousCallContext))); |
533 CHECK(output_surface->BindToClient(&output_surface_client)); | 527 CHECK(output_surface->BindToClient(&output_surface_client)); |
534 | 528 |
535 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 529 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
536 new TestSharedBitmapManager()); | 530 new TestSharedBitmapManager()); |
537 scoped_ptr<ResourceProvider> resource_provider( | 531 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( |
538 ResourceProvider::Create(output_surface.get(), | 532 output_surface.get(), shared_bitmap_manager.get(), NULL, NULL, 0, false, |
539 shared_bitmap_manager.get(), | 533 false, 1)); |
540 NULL, | |
541 NULL, | |
542 0, | |
543 false, | |
544 1)); | |
545 | 534 |
546 RendererSettings settings; | 535 RendererSettings settings; |
547 FakeRendererClient renderer_client; | 536 FakeRendererClient renderer_client; |
548 FakeRendererGL renderer(&renderer_client, | 537 FakeRendererGL renderer(&renderer_client, |
549 &settings, | 538 &settings, |
550 output_surface.get(), | 539 output_surface.get(), |
551 resource_provider.get()); | 540 resource_provider.get()); |
552 } | 541 } |
553 | 542 |
554 class LoseContextOnFirstGetContext : public TestWebGraphicsContext3D { | 543 class LoseContextOnFirstGetContext : public TestWebGraphicsContext3D { |
(...skipping 12 matching lines...) Expand all Loading... |
567 }; | 556 }; |
568 | 557 |
569 TEST_F(GLRendererTest, InitializationWithQuicklyLostContextDoesNotAssert) { | 558 TEST_F(GLRendererTest, InitializationWithQuicklyLostContextDoesNotAssert) { |
570 FakeOutputSurfaceClient output_surface_client; | 559 FakeOutputSurfaceClient output_surface_client; |
571 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( | 560 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( |
572 scoped_ptr<TestWebGraphicsContext3D>(new LoseContextOnFirstGetContext))); | 561 scoped_ptr<TestWebGraphicsContext3D>(new LoseContextOnFirstGetContext))); |
573 CHECK(output_surface->BindToClient(&output_surface_client)); | 562 CHECK(output_surface->BindToClient(&output_surface_client)); |
574 | 563 |
575 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 564 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
576 new TestSharedBitmapManager()); | 565 new TestSharedBitmapManager()); |
577 scoped_ptr<ResourceProvider> resource_provider( | 566 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( |
578 ResourceProvider::Create(output_surface.get(), | 567 output_surface.get(), shared_bitmap_manager.get(), NULL, NULL, 0, false, |
579 shared_bitmap_manager.get(), | 568 false, 1)); |
580 NULL, | |
581 NULL, | |
582 0, | |
583 false, | |
584 1)); | |
585 | 569 |
586 RendererSettings settings; | 570 RendererSettings settings; |
587 FakeRendererClient renderer_client; | 571 FakeRendererClient renderer_client; |
588 FakeRendererGL renderer(&renderer_client, | 572 FakeRendererGL renderer(&renderer_client, |
589 &settings, | 573 &settings, |
590 output_surface.get(), | 574 output_surface.get(), |
591 resource_provider.get()); | 575 resource_provider.get()); |
592 } | 576 } |
593 | 577 |
594 class ClearCountingContext : public TestWebGraphicsContext3D { | 578 class ClearCountingContext : public TestWebGraphicsContext3D { |
(...skipping 11 matching lines...) Expand all Loading... |
606 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); | 590 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); |
607 ClearCountingContext* context = context_owned.get(); | 591 ClearCountingContext* context = context_owned.get(); |
608 | 592 |
609 FakeOutputSurfaceClient output_surface_client; | 593 FakeOutputSurfaceClient output_surface_client; |
610 scoped_ptr<OutputSurface> output_surface( | 594 scoped_ptr<OutputSurface> output_surface( |
611 FakeOutputSurface::Create3d(context_owned.Pass())); | 595 FakeOutputSurface::Create3d(context_owned.Pass())); |
612 CHECK(output_surface->BindToClient(&output_surface_client)); | 596 CHECK(output_surface->BindToClient(&output_surface_client)); |
613 | 597 |
614 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 598 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
615 new TestSharedBitmapManager()); | 599 new TestSharedBitmapManager()); |
616 scoped_ptr<ResourceProvider> resource_provider( | 600 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( |
617 ResourceProvider::Create(output_surface.get(), | 601 output_surface.get(), shared_bitmap_manager.get(), NULL, NULL, 0, false, |
618 shared_bitmap_manager.get(), | 602 false, 1)); |
619 NULL, | |
620 NULL, | |
621 0, | |
622 false, | |
623 1)); | |
624 | 603 |
625 RendererSettings settings; | 604 RendererSettings settings; |
626 FakeRendererClient renderer_client; | 605 FakeRendererClient renderer_client; |
627 FakeRendererGL renderer(&renderer_client, | 606 FakeRendererGL renderer(&renderer_client, |
628 &settings, | 607 &settings, |
629 output_surface.get(), | 608 output_surface.get(), |
630 resource_provider.get()); | 609 resource_provider.get()); |
631 | 610 |
632 gfx::Rect viewport_rect(1, 1); | 611 gfx::Rect viewport_rect(1, 1); |
633 TestRenderPass* root_pass = AddRenderPass(&render_passes_in_draw_order_, | 612 TestRenderPass* root_pass = AddRenderPass(&render_passes_in_draw_order_, |
(...skipping 24 matching lines...) Expand all Loading... |
658 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); | 637 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); |
659 ClearCountingContext* context = context_owned.get(); | 638 ClearCountingContext* context = context_owned.get(); |
660 | 639 |
661 FakeOutputSurfaceClient output_surface_client; | 640 FakeOutputSurfaceClient output_surface_client; |
662 scoped_ptr<OutputSurface> output_surface( | 641 scoped_ptr<OutputSurface> output_surface( |
663 FakeOutputSurface::Create3d(context_owned.Pass())); | 642 FakeOutputSurface::Create3d(context_owned.Pass())); |
664 CHECK(output_surface->BindToClient(&output_surface_client)); | 643 CHECK(output_surface->BindToClient(&output_surface_client)); |
665 | 644 |
666 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 645 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
667 new TestSharedBitmapManager()); | 646 new TestSharedBitmapManager()); |
668 scoped_ptr<ResourceProvider> resource_provider( | 647 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( |
669 ResourceProvider::Create(output_surface.get(), | 648 output_surface.get(), shared_bitmap_manager.get(), NULL, NULL, 0, false, |
670 shared_bitmap_manager.get(), | 649 false, 1)); |
671 NULL, | |
672 NULL, | |
673 0, | |
674 false, | |
675 1)); | |
676 | 650 |
677 RendererSettings settings; | 651 RendererSettings settings; |
678 FakeRendererClient renderer_client; | 652 FakeRendererClient renderer_client; |
679 FakeRendererGL renderer(&renderer_client, | 653 FakeRendererGL renderer(&renderer_client, |
680 &settings, | 654 &settings, |
681 output_surface.get(), | 655 output_surface.get(), |
682 resource_provider.get()); | 656 resource_provider.get()); |
683 | 657 |
684 gfx::Rect viewport_rect(1, 1); | 658 gfx::Rect viewport_rect(1, 1); |
685 TestRenderPass* root_pass = AddRenderPass(&render_passes_in_draw_order_, | 659 TestRenderPass* root_pass = AddRenderPass(&render_passes_in_draw_order_, |
(...skipping 17 matching lines...) Expand all Loading... |
703 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); | 677 scoped_ptr<ClearCountingContext> context_owned(new ClearCountingContext); |
704 ClearCountingContext* context = context_owned.get(); | 678 ClearCountingContext* context = context_owned.get(); |
705 | 679 |
706 FakeOutputSurfaceClient output_surface_client; | 680 FakeOutputSurfaceClient output_surface_client; |
707 scoped_ptr<OutputSurface> output_surface( | 681 scoped_ptr<OutputSurface> output_surface( |
708 FakeOutputSurface::CreateOffscreen(context_owned.Pass())); | 682 FakeOutputSurface::CreateOffscreen(context_owned.Pass())); |
709 CHECK(output_surface->BindToClient(&output_surface_client)); | 683 CHECK(output_surface->BindToClient(&output_surface_client)); |
710 | 684 |
711 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 685 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
712 new TestSharedBitmapManager()); | 686 new TestSharedBitmapManager()); |
713 scoped_ptr<ResourceProvider> resource_provider( | 687 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( |
714 ResourceProvider::Create(output_surface.get(), | 688 output_surface.get(), shared_bitmap_manager.get(), NULL, NULL, 0, false, |
715 shared_bitmap_manager.get(), | 689 false, 1)); |
716 NULL, | |
717 NULL, | |
718 0, | |
719 false, | |
720 1)); | |
721 | 690 |
722 RendererSettings settings; | 691 RendererSettings settings; |
723 FakeRendererClient renderer_client; | 692 FakeRendererClient renderer_client; |
724 FakeRendererGL renderer(&renderer_client, | 693 FakeRendererGL renderer(&renderer_client, |
725 &settings, | 694 &settings, |
726 output_surface.get(), | 695 output_surface.get(), |
727 resource_provider.get()); | 696 resource_provider.get()); |
728 | 697 |
729 gfx::Rect viewport_rect(1, 1); | 698 gfx::Rect viewport_rect(1, 1); |
730 AddRenderPass(&render_passes_in_draw_order_, | 699 AddRenderPass(&render_passes_in_draw_order_, |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
788 &VisibilityChangeIsLastCallTrackingContext::set_last_call_was_visibility, | 757 &VisibilityChangeIsLastCallTrackingContext::set_last_call_was_visibility, |
789 base::Unretained(context))); | 758 base::Unretained(context))); |
790 | 759 |
791 FakeOutputSurfaceClient output_surface_client; | 760 FakeOutputSurfaceClient output_surface_client; |
792 scoped_ptr<OutputSurface> output_surface( | 761 scoped_ptr<OutputSurface> output_surface( |
793 FakeOutputSurface::Create3d(provider)); | 762 FakeOutputSurface::Create3d(provider)); |
794 CHECK(output_surface->BindToClient(&output_surface_client)); | 763 CHECK(output_surface->BindToClient(&output_surface_client)); |
795 | 764 |
796 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 765 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
797 new TestSharedBitmapManager()); | 766 new TestSharedBitmapManager()); |
798 scoped_ptr<ResourceProvider> resource_provider( | 767 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( |
799 ResourceProvider::Create(output_surface.get(), | 768 output_surface.get(), shared_bitmap_manager.get(), NULL, NULL, 0, false, |
800 shared_bitmap_manager.get(), | 769 false, 1)); |
801 NULL, | |
802 NULL, | |
803 0, | |
804 false, | |
805 1)); | |
806 | 770 |
807 RendererSettings settings; | 771 RendererSettings settings; |
808 FakeRendererClient renderer_client; | 772 FakeRendererClient renderer_client; |
809 FakeRendererGL renderer(&renderer_client, | 773 FakeRendererGL renderer(&renderer_client, |
810 &settings, | 774 &settings, |
811 output_surface.get(), | 775 output_surface.get(), |
812 resource_provider.get()); | 776 resource_provider.get()); |
813 | 777 |
814 gfx::Rect viewport_rect(1, 1); | 778 gfx::Rect viewport_rect(1, 1); |
815 AddRenderPass(&render_passes_in_draw_order_, | 779 AddRenderPass(&render_passes_in_draw_order_, |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
859 new TextureStateTrackingContext); | 823 new TextureStateTrackingContext); |
860 TextureStateTrackingContext* context = context_owned.get(); | 824 TextureStateTrackingContext* context = context_owned.get(); |
861 | 825 |
862 FakeOutputSurfaceClient output_surface_client; | 826 FakeOutputSurfaceClient output_surface_client; |
863 scoped_ptr<OutputSurface> output_surface( | 827 scoped_ptr<OutputSurface> output_surface( |
864 FakeOutputSurface::Create3d(context_owned.Pass())); | 828 FakeOutputSurface::Create3d(context_owned.Pass())); |
865 CHECK(output_surface->BindToClient(&output_surface_client)); | 829 CHECK(output_surface->BindToClient(&output_surface_client)); |
866 | 830 |
867 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 831 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
868 new TestSharedBitmapManager()); | 832 new TestSharedBitmapManager()); |
869 scoped_ptr<ResourceProvider> resource_provider( | 833 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( |
870 ResourceProvider::Create(output_surface.get(), | 834 output_surface.get(), shared_bitmap_manager.get(), NULL, NULL, 0, false, |
871 shared_bitmap_manager.get(), | 835 false, 1)); |
872 NULL, | |
873 NULL, | |
874 0, | |
875 false, | |
876 1)); | |
877 | 836 |
878 RendererSettings settings; | 837 RendererSettings settings; |
879 FakeRendererClient renderer_client; | 838 FakeRendererClient renderer_client; |
880 FakeRendererGL renderer(&renderer_client, | 839 FakeRendererGL renderer(&renderer_client, |
881 &settings, | 840 &settings, |
882 output_surface.get(), | 841 output_surface.get(), |
883 resource_provider.get()); | 842 resource_provider.get()); |
884 | 843 |
885 // During initialization we are allowed to set any texture parameters. | 844 // During initialization we are allowed to set any texture parameters. |
886 EXPECT_CALL(*context, texParameteri(_, _, _)).Times(AnyNumber()); | 845 EXPECT_CALL(*context, texParameteri(_, _, _)).Times(AnyNumber()); |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
950 new NoClearRootRenderPassMockContext); | 909 new NoClearRootRenderPassMockContext); |
951 NoClearRootRenderPassMockContext* mock_context = mock_context_owned.get(); | 910 NoClearRootRenderPassMockContext* mock_context = mock_context_owned.get(); |
952 | 911 |
953 FakeOutputSurfaceClient output_surface_client; | 912 FakeOutputSurfaceClient output_surface_client; |
954 scoped_ptr<OutputSurface> output_surface( | 913 scoped_ptr<OutputSurface> output_surface( |
955 FakeOutputSurface::Create3d(mock_context_owned.Pass())); | 914 FakeOutputSurface::Create3d(mock_context_owned.Pass())); |
956 CHECK(output_surface->BindToClient(&output_surface_client)); | 915 CHECK(output_surface->BindToClient(&output_surface_client)); |
957 | 916 |
958 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 917 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
959 new TestSharedBitmapManager()); | 918 new TestSharedBitmapManager()); |
960 scoped_ptr<ResourceProvider> resource_provider( | 919 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( |
961 ResourceProvider::Create(output_surface.get(), | 920 output_surface.get(), shared_bitmap_manager.get(), NULL, NULL, 0, false, |
962 shared_bitmap_manager.get(), | 921 false, 1)); |
963 NULL, | |
964 NULL, | |
965 0, | |
966 false, | |
967 1)); | |
968 | 922 |
969 RendererSettings settings; | 923 RendererSettings settings; |
970 settings.should_clear_root_render_pass = false; | 924 settings.should_clear_root_render_pass = false; |
971 | 925 |
972 FakeRendererClient renderer_client; | 926 FakeRendererClient renderer_client; |
973 FakeRendererGL renderer(&renderer_client, | 927 FakeRendererGL renderer(&renderer_client, |
974 &settings, | 928 &settings, |
975 output_surface.get(), | 929 output_surface.get(), |
976 resource_provider.get()); | 930 resource_provider.get()); |
977 | 931 |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1048 scoped_ptr<ScissorTestOnClearCheckingContext> context_owned( | 1002 scoped_ptr<ScissorTestOnClearCheckingContext> context_owned( |
1049 new ScissorTestOnClearCheckingContext); | 1003 new ScissorTestOnClearCheckingContext); |
1050 | 1004 |
1051 FakeOutputSurfaceClient output_surface_client; | 1005 FakeOutputSurfaceClient output_surface_client; |
1052 scoped_ptr<OutputSurface> output_surface( | 1006 scoped_ptr<OutputSurface> output_surface( |
1053 FakeOutputSurface::Create3d(context_owned.Pass())); | 1007 FakeOutputSurface::Create3d(context_owned.Pass())); |
1054 CHECK(output_surface->BindToClient(&output_surface_client)); | 1008 CHECK(output_surface->BindToClient(&output_surface_client)); |
1055 | 1009 |
1056 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 1010 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
1057 new TestSharedBitmapManager()); | 1011 new TestSharedBitmapManager()); |
1058 scoped_ptr<ResourceProvider> resource_provider( | 1012 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( |
1059 ResourceProvider::Create(output_surface.get(), | 1013 output_surface.get(), shared_bitmap_manager.get(), NULL, NULL, 0, false, |
1060 shared_bitmap_manager.get(), | 1014 false, 1)); |
1061 NULL, | |
1062 NULL, | |
1063 0, | |
1064 false, | |
1065 1)); | |
1066 | 1015 |
1067 RendererSettings settings; | 1016 RendererSettings settings; |
1068 FakeRendererClient renderer_client; | 1017 FakeRendererClient renderer_client; |
1069 FakeRendererGL renderer(&renderer_client, | 1018 FakeRendererGL renderer(&renderer_client, |
1070 &settings, | 1019 &settings, |
1071 output_surface.get(), | 1020 output_surface.get(), |
1072 resource_provider.get()); | 1021 resource_provider.get()); |
1073 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); | 1022 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); |
1074 | 1023 |
1075 gfx::Rect viewport_rect(1, 1); | 1024 gfx::Rect viewport_rect(1, 1); |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1146 DiscardCheckingContext* context = context_owned.get(); | 1095 DiscardCheckingContext* context = context_owned.get(); |
1147 | 1096 |
1148 FakeOutputSurfaceClient output_surface_client; | 1097 FakeOutputSurfaceClient output_surface_client; |
1149 scoped_ptr<NonReshapableOutputSurface> output_surface( | 1098 scoped_ptr<NonReshapableOutputSurface> output_surface( |
1150 new NonReshapableOutputSurface(context_owned.Pass())); | 1099 new NonReshapableOutputSurface(context_owned.Pass())); |
1151 CHECK(output_surface->BindToClient(&output_surface_client)); | 1100 CHECK(output_surface->BindToClient(&output_surface_client)); |
1152 output_surface->set_fixed_size(gfx::Size(100, 100)); | 1101 output_surface->set_fixed_size(gfx::Size(100, 100)); |
1153 | 1102 |
1154 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 1103 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
1155 new TestSharedBitmapManager()); | 1104 new TestSharedBitmapManager()); |
1156 scoped_ptr<ResourceProvider> resource_provider( | 1105 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( |
1157 ResourceProvider::Create(output_surface.get(), | 1106 output_surface.get(), shared_bitmap_manager.get(), NULL, NULL, 0, false, |
1158 shared_bitmap_manager.get(), | 1107 false, 1)); |
1159 NULL, | |
1160 NULL, | |
1161 0, | |
1162 false, | |
1163 1)); | |
1164 | 1108 |
1165 RendererSettings settings; | 1109 RendererSettings settings; |
1166 settings.partial_swap_enabled = true; | 1110 settings.partial_swap_enabled = true; |
1167 FakeRendererClient renderer_client; | 1111 FakeRendererClient renderer_client; |
1168 FakeRendererGL renderer(&renderer_client, | 1112 FakeRendererGL renderer(&renderer_client, |
1169 &settings, | 1113 &settings, |
1170 output_surface.get(), | 1114 output_surface.get(), |
1171 resource_provider.get()); | 1115 resource_provider.get()); |
1172 EXPECT_TRUE(renderer.Capabilities().using_partial_swap); | 1116 EXPECT_TRUE(renderer.Capabilities().using_partial_swap); |
1173 | 1117 |
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1335 scoped_ptr<FlippedScissorAndViewportContext> context_owned( | 1279 scoped_ptr<FlippedScissorAndViewportContext> context_owned( |
1336 new FlippedScissorAndViewportContext); | 1280 new FlippedScissorAndViewportContext); |
1337 | 1281 |
1338 FakeOutputSurfaceClient output_surface_client; | 1282 FakeOutputSurfaceClient output_surface_client; |
1339 scoped_ptr<OutputSurface> output_surface( | 1283 scoped_ptr<OutputSurface> output_surface( |
1340 new NonReshapableOutputSurface(context_owned.Pass())); | 1284 new NonReshapableOutputSurface(context_owned.Pass())); |
1341 CHECK(output_surface->BindToClient(&output_surface_client)); | 1285 CHECK(output_surface->BindToClient(&output_surface_client)); |
1342 | 1286 |
1343 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 1287 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
1344 new TestSharedBitmapManager()); | 1288 new TestSharedBitmapManager()); |
1345 scoped_ptr<ResourceProvider> resource_provider( | 1289 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( |
1346 ResourceProvider::Create(output_surface.get(), | 1290 output_surface.get(), shared_bitmap_manager.get(), NULL, NULL, 0, false, |
1347 shared_bitmap_manager.get(), | 1291 false, 1)); |
1348 NULL, | |
1349 NULL, | |
1350 0, | |
1351 false, | |
1352 1)); | |
1353 | 1292 |
1354 RendererSettings settings; | 1293 RendererSettings settings; |
1355 FakeRendererClient renderer_client; | 1294 FakeRendererClient renderer_client; |
1356 FakeRendererGL renderer(&renderer_client, | 1295 FakeRendererGL renderer(&renderer_client, |
1357 &settings, | 1296 &settings, |
1358 output_surface.get(), | 1297 output_surface.get(), |
1359 resource_provider.get()); | 1298 resource_provider.get()); |
1360 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); | 1299 EXPECT_FALSE(renderer.Capabilities().using_partial_swap); |
1361 | 1300 |
1362 gfx::Rect device_viewport_rect(10, 10, 100, 100); | 1301 gfx::Rect device_viewport_rect(10, 10, 100, 100); |
(...skipping 394 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1757 MOCK_METHOD1(SwapBuffers, void(CompositorFrame* frame)); | 1696 MOCK_METHOD1(SwapBuffers, void(CompositorFrame* frame)); |
1758 }; | 1697 }; |
1759 | 1698 |
1760 class MockOutputSurfaceTest : public GLRendererTest { | 1699 class MockOutputSurfaceTest : public GLRendererTest { |
1761 protected: | 1700 protected: |
1762 virtual void SetUp() { | 1701 virtual void SetUp() { |
1763 FakeOutputSurfaceClient output_surface_client_; | 1702 FakeOutputSurfaceClient output_surface_client_; |
1764 CHECK(output_surface_.BindToClient(&output_surface_client_)); | 1703 CHECK(output_surface_.BindToClient(&output_surface_client_)); |
1765 | 1704 |
1766 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); | 1705 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); |
1767 resource_provider_ = ResourceProvider::Create(&output_surface_, | 1706 resource_provider_ = |
1768 shared_bitmap_manager_.get(), | 1707 ResourceProvider::Create(&output_surface_, shared_bitmap_manager_.get(), |
1769 NULL, | 1708 NULL, NULL, 0, false, false, 1).Pass(); |
1770 NULL, | |
1771 0, | |
1772 false, | |
1773 1).Pass(); | |
1774 | 1709 |
1775 renderer_.reset(new FakeRendererGL(&renderer_client_, | 1710 renderer_.reset(new FakeRendererGL(&renderer_client_, |
1776 &settings_, | 1711 &settings_, |
1777 &output_surface_, | 1712 &output_surface_, |
1778 resource_provider_.get())); | 1713 resource_provider_.get())); |
1779 } | 1714 } |
1780 | 1715 |
1781 void SwapBuffers() { renderer_->SwapBuffers(CompositorFrameMetadata()); } | 1716 void SwapBuffers() { renderer_->SwapBuffers(CompositorFrameMetadata()); } |
1782 | 1717 |
1783 void DrawFrame(float device_scale_factor, | 1718 void DrawFrame(float device_scale_factor, |
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1925 base::MessageLoop::current()->Run(); | 1860 base::MessageLoop::current()->Run(); |
1926 | 1861 |
1927 // The sync point should have happened. | 1862 // The sync point should have happened. |
1928 EXPECT_EQ(1, sync_point_callback_count); | 1863 EXPECT_EQ(1, sync_point_callback_count); |
1929 EXPECT_EQ(1, other_callback_count); | 1864 EXPECT_EQ(1, other_callback_count); |
1930 } | 1865 } |
1931 #endif // OS_ANDROID | 1866 #endif // OS_ANDROID |
1932 | 1867 |
1933 } // namespace | 1868 } // namespace |
1934 } // namespace cc | 1869 } // namespace cc |
OLD | NEW |