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 195 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
206 scoped_refptr<TestContextProvider> provider = TestContextProvider::Create(); | 206 scoped_refptr<TestContextProvider> provider = TestContextProvider::Create(); |
207 OverlayOutputSurface output_surface(provider); | 207 OverlayOutputSurface output_surface(provider); |
208 FakeOutputSurfaceClient client; | 208 FakeOutputSurfaceClient client; |
209 EXPECT_TRUE(output_surface.BindToClient(&client)); | 209 EXPECT_TRUE(output_surface.BindToClient(&client)); |
210 output_surface.InitWithSingleOverlayValidator(); | 210 output_surface.InitWithSingleOverlayValidator(); |
211 EXPECT_TRUE(output_surface.overlay_candidate_validator() != NULL); | 211 EXPECT_TRUE(output_surface.overlay_candidate_validator() != NULL); |
212 | 212 |
213 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( | 213 scoped_ptr<SharedBitmapManager> shared_bitmap_manager( |
214 new TestSharedBitmapManager()); | 214 new TestSharedBitmapManager()); |
215 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( | 215 scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create( |
216 &output_surface, shared_bitmap_manager.get(), 0, false, 1)); | 216 &output_surface, shared_bitmap_manager.get(), 0, false, 1, false)); |
217 | 217 |
218 scoped_ptr<DefaultOverlayProcessor> overlay_processor( | 218 scoped_ptr<DefaultOverlayProcessor> overlay_processor( |
219 new DefaultOverlayProcessor(&output_surface, resource_provider.get())); | 219 new DefaultOverlayProcessor(&output_surface, resource_provider.get())); |
220 overlay_processor->Initialize(); | 220 overlay_processor->Initialize(); |
221 EXPECT_GE(1U, overlay_processor->GetStrategyCount()); | 221 EXPECT_GE(1U, overlay_processor->GetStrategyCount()); |
222 } | 222 } |
223 | 223 |
224 class SingleOverlayOnTopTest : public testing::Test { | 224 class SingleOverlayOnTopTest : public testing::Test { |
225 protected: | 225 protected: |
226 virtual void SetUp() { | 226 virtual void SetUp() { |
227 provider_ = TestContextProvider::Create(); | 227 provider_ = TestContextProvider::Create(); |
228 output_surface_.reset(new OverlayOutputSurface(provider_)); | 228 output_surface_.reset(new OverlayOutputSurface(provider_)); |
229 EXPECT_TRUE(output_surface_->BindToClient(&client_)); | 229 EXPECT_TRUE(output_surface_->BindToClient(&client_)); |
230 output_surface_->InitWithSingleOverlayValidator(); | 230 output_surface_->InitWithSingleOverlayValidator(); |
231 EXPECT_TRUE(output_surface_->overlay_candidate_validator() != NULL); | 231 EXPECT_TRUE(output_surface_->overlay_candidate_validator() != NULL); |
232 | 232 |
233 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); | 233 shared_bitmap_manager_.reset(new TestSharedBitmapManager()); |
234 resource_provider_ = ResourceProvider::Create( | 234 resource_provider_ = ResourceProvider::Create( |
235 output_surface_.get(), shared_bitmap_manager_.get(), 0, false, 1); | 235 output_surface_.get(), shared_bitmap_manager_.get(), 0, false, 1, |
| 236 false); |
236 | 237 |
237 overlay_processor_.reset(new SingleOverlayProcessor( | 238 overlay_processor_.reset(new SingleOverlayProcessor( |
238 output_surface_.get(), resource_provider_.get())); | 239 output_surface_.get(), resource_provider_.get())); |
239 overlay_processor_->Initialize(); | 240 overlay_processor_->Initialize(); |
240 } | 241 } |
241 | 242 |
242 scoped_refptr<TestContextProvider> provider_; | 243 scoped_refptr<TestContextProvider> provider_; |
243 scoped_ptr<OverlayOutputSurface> output_surface_; | 244 scoped_ptr<OverlayOutputSurface> output_surface_; |
244 FakeOutputSurfaceClient client_; | 245 FakeOutputSurfaceClient client_; |
245 scoped_ptr<SharedBitmapManager> shared_bitmap_manager_; | 246 scoped_ptr<SharedBitmapManager> shared_bitmap_manager_; |
(...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
503 const gfx::RectF& uv_rect)); | 504 const gfx::RectF& uv_rect)); |
504 }; | 505 }; |
505 | 506 |
506 class GLRendererWithOverlaysTest : public testing::Test { | 507 class GLRendererWithOverlaysTest : public testing::Test { |
507 protected: | 508 protected: |
508 GLRendererWithOverlaysTest() { | 509 GLRendererWithOverlaysTest() { |
509 provider_ = TestContextProvider::Create(); | 510 provider_ = TestContextProvider::Create(); |
510 output_surface_.reset(new OverlayOutputSurface(provider_)); | 511 output_surface_.reset(new OverlayOutputSurface(provider_)); |
511 CHECK(output_surface_->BindToClient(&output_surface_client_)); | 512 CHECK(output_surface_->BindToClient(&output_surface_client_)); |
512 resource_provider_ = | 513 resource_provider_ = |
513 ResourceProvider::Create(output_surface_.get(), NULL, 0, false, 1); | 514 ResourceProvider::Create(output_surface_.get(), NULL, 0, false, 1, |
| 515 false); |
514 | 516 |
515 provider_->support()->SetScheduleOverlayPlaneCallback(base::Bind( | 517 provider_->support()->SetScheduleOverlayPlaneCallback(base::Bind( |
516 &MockOverlayScheduler::Schedule, base::Unretained(&scheduler_))); | 518 &MockOverlayScheduler::Schedule, base::Unretained(&scheduler_))); |
517 } | 519 } |
518 | 520 |
519 void Init(bool use_validator) { | 521 void Init(bool use_validator) { |
520 if (use_validator) | 522 if (use_validator) |
521 output_surface_->InitWithSingleOverlayValidator(); | 523 output_surface_->InitWithSingleOverlayValidator(); |
522 | 524 |
523 renderer_ = | 525 renderer_ = |
(...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
716 renderer_->set_expect_overlays(false); | 718 renderer_->set_expect_overlays(false); |
717 renderer_->FinishDrawingFrame(&frame3); | 719 renderer_->FinishDrawingFrame(&frame3); |
718 EXPECT_TRUE(resource_provider_->InUseByConsumer(resource1)); | 720 EXPECT_TRUE(resource_provider_->InUseByConsumer(resource1)); |
719 SwapBuffers(); | 721 SwapBuffers(); |
720 EXPECT_FALSE(resource_provider_->InUseByConsumer(resource1)); | 722 EXPECT_FALSE(resource_provider_->InUseByConsumer(resource1)); |
721 Mock::VerifyAndClearExpectations(&scheduler_); | 723 Mock::VerifyAndClearExpectations(&scheduler_); |
722 } | 724 } |
723 | 725 |
724 } // namespace | 726 } // namespace |
725 } // namespace cc | 727 } // namespace cc |
OLD | NEW |