| Index: cc/resources/pixel_buffer_raster_worker_pool.h
|
| diff --git a/cc/resources/pixel_buffer_raster_worker_pool.h b/cc/resources/pixel_buffer_raster_worker_pool.h
|
| index 1eb4fdfaa9ba66caeb7957770a1907c23d307448..d9c7412848863e7350c29235060d615cf4cda37b 100644
|
| --- a/cc/resources/pixel_buffer_raster_worker_pool.h
|
| +++ b/cc/resources/pixel_buffer_raster_worker_pool.h
|
| @@ -13,8 +13,8 @@
|
| #if defined(COMPILER_GCC)
|
| namespace BASE_HASH_NAMESPACE {
|
| template <>
|
| -struct hash<cc::internal::WorkerPoolTask*> {
|
| - size_t operator()(cc::internal::WorkerPoolTask* ptr) const {
|
| +struct hash<cc::internal::RasterWorkerPoolTask*> {
|
| + size_t operator()(cc::internal::RasterWorkerPoolTask* ptr) const {
|
| return hash<size_t>()(reinterpret_cast<size_t>(ptr));
|
| }
|
| };
|
| @@ -39,10 +39,12 @@
|
| virtual void CheckForCompletedTasks() OVERRIDE;
|
|
|
| // Overridden from internal::WorkerPoolTaskClient:
|
| - virtual SkCanvas* AcquireCanvasForRaster(internal::WorkerPoolTask* task,
|
| - const Resource* resource) OVERRIDE;
|
| - virtual void ReleaseCanvasForRaster(internal::WorkerPoolTask* task,
|
| - const Resource* resource) OVERRIDE;
|
| + virtual SkCanvas* AcquireCanvasForRaster(internal::RasterWorkerPoolTask* task)
|
| + OVERRIDE;
|
| + virtual void OnRasterCompleted(internal::RasterWorkerPoolTask* task,
|
| + const PicturePileImpl::Analysis& analysis)
|
| + OVERRIDE;
|
| + virtual void OnImageDecodeCompleted(internal::WorkerPoolTask* task) OVERRIDE;
|
|
|
| protected:
|
| PixelBufferRasterWorkerPool(internal::TaskGraphRunner* task_graph_runner,
|
| @@ -50,12 +52,10 @@
|
| size_t max_transfer_buffer_usage_bytes);
|
|
|
| private:
|
| - struct RasterTaskState {
|
| - RasterTaskState() : type(UNSCHEDULED), resource(NULL) {}
|
| - enum { UNSCHEDULED, SCHEDULED, UPLOADING, COMPLETED } type;
|
| - const Resource* resource;
|
| - };
|
| - typedef internal::WorkerPoolTask* RasterTaskMapKey;
|
| + enum RasterTaskState { UNSCHEDULED, SCHEDULED, UPLOADING, COMPLETED };
|
| + typedef std::deque<scoped_refptr<internal::RasterWorkerPoolTask> >
|
| + RasterTaskDeque;
|
| + typedef internal::RasterWorkerPoolTask* RasterTaskMapKey;
|
| typedef base::hash_set<RasterTaskMapKey> RasterTaskSet;
|
| typedef base::hash_map<RasterTaskMapKey, RasterTaskState> RasterTaskStateMap;
|
|
|
| @@ -73,7 +73,8 @@
|
| bool HasPendingTasks() const;
|
| bool HasPendingTasksRequiredForActivation() const;
|
| void CheckForCompletedWorkerPoolTasks();
|
| - bool IsRasterTaskRequiredForActivation(internal::WorkerPoolTask* task) const;
|
| + bool IsRasterTaskRequiredForActivation(internal::RasterWorkerPoolTask* task)
|
| + const;
|
|
|
| const char* StateName() const;
|
| scoped_ptr<base::Value> StateAsValue() const;
|
| @@ -84,8 +85,8 @@
|
| RasterTaskQueue raster_tasks_;
|
| RasterTaskSet raster_tasks_required_for_activation_;
|
| RasterTaskStateMap raster_task_states_;
|
| - TaskDeque raster_tasks_with_pending_upload_;
|
| - TaskDeque completed_raster_tasks_;
|
| + RasterTaskDeque raster_tasks_with_pending_upload_;
|
| + RasterTaskDeque completed_raster_tasks_;
|
| TaskDeque completed_image_decode_tasks_;
|
|
|
| size_t scheduled_raster_task_count_;
|
|
|