| OLD | NEW |
| 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 "cc/base/scoped_ptr_vector.h" | 5 #include "cc/base/scoped_ptr_vector.h" |
| 6 #include "cc/output/gl_renderer.h" | 6 #include "cc/output/gl_renderer.h" |
| 7 #include "cc/output/output_surface.h" | 7 #include "cc/output/output_surface.h" |
| 8 #include "cc/output/output_surface_client.h" | 8 #include "cc/output/output_surface_client.h" |
| 9 #include "cc/output/overlay_candidate_validator.h" | 9 #include "cc/output/overlay_candidate_validator.h" |
| 10 #include "cc/output/overlay_processor.h" | 10 #include "cc/output/overlay_processor.h" |
| (...skipping 226 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 237 TEST(OverlayTest, OverlaysProcessorHasStrategy) { | 237 TEST(OverlayTest, OverlaysProcessorHasStrategy) { |
| 238 scoped_refptr<TestContextProvider> provider = TestContextProvider::Create(); | 238 scoped_refptr<TestContextProvider> provider = TestContextProvider::Create(); |
| 239 OverlayOutputSurface output_surface(provider); | 239 OverlayOutputSurface output_surface(provider); |
| 240 FakeOutputSurfaceClient client; | 240 FakeOutputSurfaceClient client; |
| 241 EXPECT_TRUE(output_surface.BindToClient(&client)); | 241 EXPECT_TRUE(output_surface.BindToClient(&client)); |
| 242 output_surface.InitWithSingleOverlayValidator(); | 242 output_surface.InitWithSingleOverlayValidator(); |
| 243 EXPECT_TRUE(output_surface.overlay_candidate_validator() != NULL); | 243 EXPECT_TRUE(output_surface.overlay_candidate_validator() != NULL); |
| 244 | 244 |
| 245 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 245 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
| 246 new TestSharedBitmapManager()); | 246 new TestSharedBitmapManager()); |
| 247 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( | 247 scoped_ptr<ResourceProvider> resource_provider( |
| 248 &output_surface, shared_bitmap_manager.get(), NULL, 0, false, 1, false)); | 248 ResourceProvider::Create(&output_surface, |
| 249 shared_bitmap_manager.get(), |
| 250 NULL, |
| 251 NULL, |
| 252 0, |
| 253 false, |
| 254 1, |
| 255 false)); |
| 249 | 256 |
| 250 scoped_ptr<DefaultOverlayProcessor> overlay_processor( | 257 scoped_ptr<DefaultOverlayProcessor> overlay_processor( |
| 251 new DefaultOverlayProcessor(&output_surface, resource_provider.get())); | 258 new DefaultOverlayProcessor(&output_surface, resource_provider.get())); |
| 252 overlay_processor->Initialize(); | 259 overlay_processor->Initialize(); |
| 253 EXPECT_GE(1U, overlay_processor->GetStrategyCount()); | 260 EXPECT_GE(1U, overlay_processor->GetStrategyCount()); |
| 254 } | 261 } |
| 255 | 262 |
| 256 class SingleOverlayOnTopTest : public testing::Test { | 263 class SingleOverlayOnTopTest : public testing::Test { |
| 257 protected: | 264 protected: |
| 258 virtual void SetUp() { | 265 virtual void SetUp() { |
| 259 provider_ = TestContextProvider::Create(); | 266 provider_ = TestContextProvider::Create(); |
| 260 output_surface_.reset(new OverlayOutputSurface(provider_)); | 267 output_surface_.reset(new OverlayOutputSurface(provider_)); |
| 261 EXPECT_TRUE(output_surface_->BindToClient(&client_)); | 268 EXPECT_TRUE(output_surface_->BindToClient(&client_)); |
| 262 output_surface_->InitWithSingleOverlayValidator(); | 269 output_surface_->InitWithSingleOverlayValidator(); |
| 263 EXPECT_TRUE(output_surface_->overlay_candidate_validator() != NULL); | 270 EXPECT_TRUE(output_surface_->overlay_candidate_validator() != NULL); |
| 264 | 271 |
| 265 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); | 272 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); |
| 266 resource_provider_ = ResourceProvider::Create(output_surface_.get(), | 273 resource_provider_ = ResourceProvider::Create(output_surface_.get(), |
| 267 shared_bitmap_manager_.get(), | 274 shared_bitmap_manager_.get(), |
| 268 NULL, | 275 NULL, |
| 276 NULL, |
| 269 0, | 277 0, |
| 270 false, | 278 false, |
| 271 1, | 279 1, |
| 272 false); | 280 false); |
| 273 | 281 |
| 274 overlay_processor_.reset(new SingleOverlayProcessor( | 282 overlay_processor_.reset(new SingleOverlayProcessor( |
| 275 output_surface_.get(), resource_provider_.get())); | 283 output_surface_.get(), resource_provider_.get())); |
| 276 overlay_processor_->Initialize(); | 284 overlay_processor_->Initialize(); |
| 277 } | 285 } |
| 278 | 286 |
| (...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 573 const gfx::RectF& uv_rect)); | 581 const gfx::RectF& uv_rect)); |
| 574 }; | 582 }; |
| 575 | 583 |
| 576 class GLRendererWithOverlaysTest : public testing::Test { | 584 class GLRendererWithOverlaysTest : public testing::Test { |
| 577 protected: | 585 protected: |
| 578 GLRendererWithOverlaysTest() { | 586 GLRendererWithOverlaysTest() { |
| 579 provider_ = TestContextProvider::Create(); | 587 provider_ = TestContextProvider::Create(); |
| 580 output_surface_.reset(new OverlayOutputSurface(provider_)); | 588 output_surface_.reset(new OverlayOutputSurface(provider_)); |
| 581 CHECK(output_surface_->BindToClient(&output_surface_client_)); | 589 CHECK(output_surface_->BindToClient(&output_surface_client_)); |
| 582 resource_provider_ = ResourceProvider::Create( | 590 resource_provider_ = ResourceProvider::Create( |
| 583 output_surface_.get(), NULL, NULL, 0, false, 1, false); | 591 output_surface_.get(), NULL, NULL, NULL, 0, false, 1, false); |
| 584 | 592 |
| 585 provider_->support()->SetScheduleOverlayPlaneCallback(base::Bind( | 593 provider_->support()->SetScheduleOverlayPlaneCallback(base::Bind( |
| 586 &MockOverlayScheduler::Schedule, base::Unretained(&scheduler_))); | 594 &MockOverlayScheduler::Schedule, base::Unretained(&scheduler_))); |
| 587 } | 595 } |
| 588 | 596 |
| 589 void Init(bool use_validator) { | 597 void Init(bool use_validator) { |
| 590 if (use_validator) | 598 if (use_validator) |
| 591 output_surface_->InitWithSingleOverlayValidator(); | 599 output_surface_->InitWithSingleOverlayValidator(); |
| 592 | 600 |
| 593 renderer_ = | 601 renderer_ = |
| (...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 789 renderer_->set_expect_overlays(false); | 797 renderer_->set_expect_overlays(false); |
| 790 renderer_->FinishDrawingFrame(&frame3); | 798 renderer_->FinishDrawingFrame(&frame3); |
| 791 EXPECT_TRUE(resource_provider_->InUseByConsumer(resource1)); | 799 EXPECT_TRUE(resource_provider_->InUseByConsumer(resource1)); |
| 792 SwapBuffers(); | 800 SwapBuffers(); |
| 793 EXPECT_FALSE(resource_provider_->InUseByConsumer(resource1)); | 801 EXPECT_FALSE(resource_provider_->InUseByConsumer(resource1)); |
| 794 Mock::VerifyAndClearExpectations(&scheduler_); | 802 Mock::VerifyAndClearExpectations(&scheduler_); |
| 795 } | 803 } |
| 796 | 804 |
| 797 } // namespace | 805 } // namespace |
| 798 } // namespace cc | 806 } // namespace cc |
| OLD | NEW |