| Index: cc/test/fake_tile_manager.cc
|
| diff --git a/cc/test/fake_tile_manager.cc b/cc/test/fake_tile_manager.cc
|
| index 94ca37b18904e7360f2430b787ceb8e0bf3be178..5e31c3c3f822c387e4531b284e2782b4eabe74da 100644
|
| --- a/cc/test/fake_tile_manager.cc
|
| +++ b/cc/test/fake_tile_manager.cc
|
| @@ -23,50 +23,64 @@ 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 resource_content_id,
|
| + uint64_t previous_content_id) override {
|
| + return nullptr;
|
| + }
|
| + void ReleaseBufferForRaster(std::unique_ptr<RasterBuffer> buffer) override {}
|
| +};
|
| +
|
| +class FakeTileTaskManager : public TileTaskManager {
|
| + public:
|
| + FakeTileTaskManager()
|
| + : TileTaskManager(base::WrapUnique<FakeTileTaskWorkerPoolImpl>(
|
| + new FakeTileTaskWorkerPoolImpl)) {}
|
| + ~FakeTileTaskManager() override {}
|
| void Shutdown() override {}
|
| void ScheduleTasks(TaskGraph* graph) override {
|
| for (const 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);
|
| }
|
| }
|
| void CheckForCompletedTasks() override {
|
| - for (TileTask::Vector::iterator it = completed_tasks_.begin();
|
| + for (Task::Vector::iterator it = completed_tasks_.begin();
|
| it != completed_tasks_.end(); ++it) {
|
| - TileTask* task = it->get();
|
| + TileTask* task = static_cast<TileTask*>(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 resource_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;
|
|
|
| } // namespace
|
| @@ -76,9 +90,9 @@ FakeTileManager::FakeTileManager(TileManagerClient* client)
|
| base::ThreadTaskRunnerHandle::Get(),
|
| std::numeric_limits<size_t>::max(),
|
| false /* use_partial_raster */) {
|
| - SetResources(nullptr, g_fake_tile_task_worker_pool.Pointer(),
|
| - &image_decode_controller_, std::numeric_limits<size_t>::max(),
|
| - false /* use_gpu_rasterization */);
|
| + SetResources(
|
| + nullptr, &image_decode_controller_, g_fake_tile_task_manager.Pointer(),
|
| + std::numeric_limits<size_t>::max(), false /* use_gpu_rasterization */);
|
| }
|
|
|
| FakeTileManager::FakeTileManager(TileManagerClient* client,
|
| @@ -87,8 +101,9 @@ FakeTileManager::FakeTileManager(TileManagerClient* client,
|
| base::ThreadTaskRunnerHandle::Get(),
|
| std::numeric_limits<size_t>::max(),
|
| false /* use_partial_raster */) {
|
| - SetResources(resource_pool, g_fake_tile_task_worker_pool.Pointer(),
|
| - &image_decode_controller_, std::numeric_limits<size_t>::max(),
|
| + SetResources(resource_pool, &image_decode_controller_,
|
| + g_fake_tile_task_manager.Pointer(),
|
| + std::numeric_limits<size_t>::max(),
|
| false /* use_gpu_rasterization */);
|
| }
|
|
|
|
|