Index: cc/tiles/tile_manager_perftest.cc |
diff --git a/cc/tiles/tile_manager_perftest.cc b/cc/tiles/tile_manager_perftest.cc |
index 46f9017629c10e5ced3217b81657eeed52d45f3d..4fe9c32b6cb15b42f7fb9e5f7832b57084d1a38f 100644 |
--- a/cc/tiles/tile_manager_perftest.cc |
+++ b/cc/tiles/tile_manager_perftest.cc |
@@ -41,13 +41,39 @@ class FakeTileTaskWorkerPoolImpl : public TileTaskWorkerPool, |
public RasterBufferProvider { |
public: |
// Overridden from TileTaskWorkerPool: |
+ void BarrierToSyncResources() override {} |
+ ResourceFormat GetResourceFormat(bool must_support_alpha) const override { |
+ return RGBA_8888; |
+ } |
+ bool GetResourceRequiresSwizzle(bool must_support_alpha) const override { |
+ return ResourceFormatRequiresSwizzle(GetResourceFormat(must_support_alpha)); |
+ } |
+ RasterBufferProvider* AsRasterBufferProvider() override { return this; } |
+ |
+ // Overridden from RasterBufferProvider: |
+ std::unique_ptr<RasterBuffer> AcquireBufferForRaster( |
+ const Resource* resource, |
+ uint64_t new_content_id, |
+ uint64_t previous_content_id) override { |
+ return nullptr; |
+ } |
+ void ReleaseBufferForRaster(std::unique_ptr<RasterBuffer> buffer) override {} |
+}; |
+ |
+class FakeTileTaskManager : public TileTaskManager { |
ericrk
2016/04/25 20:56:07
This looks like the same code from fake_tile_manag
|
+ public: |
+ FakeTileTaskManager() |
+ : TileTaskManager(base::WrapUnique<TileTaskWorkerPool>( |
+ new FakeTileTaskWorkerPoolImpl)) {} |
+ ~FakeTileTaskManager() override {} |
void Shutdown() override {} |
void ScheduleTasks(TaskGraph* graph) override { |
for (auto& node : graph->nodes) { |
TileTask* task = static_cast<TileTask*>(node.task); |
task->WillSchedule(); |
- task->ScheduleOnOriginThread(this); |
+ task->ScheduleOnOriginThread( |
+ tile_task_worker_pool_->AsRasterBufferProvider()); |
task->DidSchedule(); |
completed_tasks_.push_back(task); |
@@ -59,32 +85,23 @@ class FakeTileTaskWorkerPoolImpl : public TileTaskWorkerPool, |
TileTask* task = it->get(); |
task->WillComplete(); |
- task->CompleteOnOriginThread(this); |
+ task->CompleteOnOriginThread( |
+ tile_task_worker_pool_->AsRasterBufferProvider()); |
task->DidComplete(); |
} |
completed_tasks_.clear(); |
} |
- ResourceFormat GetResourceFormat(bool must_support_alpha) const override { |
- return RGBA_8888; |
- } |
- bool GetResourceRequiresSwizzle(bool must_support_alpha) const override { |
- return ResourceFormatRequiresSwizzle(GetResourceFormat(must_support_alpha)); |
- } |
- RasterBufferProvider* AsRasterBufferProvider() override { return this; } |
- // Overridden from RasterBufferProvider: |
- std::unique_ptr<RasterBuffer> AcquireBufferForRaster( |
- const Resource* resource, |
- uint64_t new_content_id, |
- uint64_t previous_content_id) override { |
- return nullptr; |
+ // Get TileTaskWorkerPool. |
+ TileTaskWorkerPool* GetTileTaskWorkerPool() const override { |
+ return tile_task_worker_pool_.get(); |
} |
- void ReleaseBufferForRaster(std::unique_ptr<RasterBuffer> buffer) override {} |
private: |
TileTask::Vector completed_tasks_; |
}; |
-base::LazyInstance<FakeTileTaskWorkerPoolImpl> g_fake_tile_task_worker_pool = |
+ |
+base::LazyInstance<FakeTileTaskManager> g_fake_tile_task_manager = |
LAZY_INSTANCE_INITIALIZER; |
class TileManagerPerfTest : public testing::Test { |
@@ -127,8 +144,8 @@ class TileManagerPerfTest : public testing::Test { |
virtual void InitializeRenderer() { |
host_impl_.SetVisible(true); |
host_impl_.InitializeRenderer(output_surface_.get()); |
- tile_manager()->SetTileTaskWorkerPoolForTesting( |
- g_fake_tile_task_worker_pool.Pointer()); |
+ tile_manager()->SetTileTaskManagerForTesting( |
+ g_fake_tile_task_manager.Pointer()); |
} |
void SetupDefaultTrees(const gfx::Size& layer_bounds) { |