Index: cc/resources/raster_worker_pool.h |
diff --git a/cc/resources/raster_worker_pool.h b/cc/resources/raster_worker_pool.h |
index 972cbdccb47e189175ac5f1a36604ecb9a2dd18a..99e58473907049ba58695fd0224038e941942c9c 100644 |
--- a/cc/resources/raster_worker_pool.h |
+++ b/cc/resources/raster_worker_pool.h |
@@ -105,6 +105,8 @@ struct RasterTaskMetadata { |
class CC_EXPORT RasterWorkerPoolClient { |
public: |
virtual bool ShouldForceTasksRequiredForActivationToComplete() const = 0; |
+ virtual void DidFinishedRunningTasks() = 0; |
+ virtual void DidFinishedRunningTasksRequiredForActivation() = 0; |
protected: |
virtual ~RasterWorkerPoolClient() {} |
@@ -232,31 +234,9 @@ class CC_EXPORT RasterWorkerPool : public WorkerPool { |
typedef base::hash_map<TaskMapKey, |
scoped_refptr<internal::WorkerPoolTask> > TaskMap; |
- class CC_EXPORT RasterTaskGraph { |
- public: |
- RasterTaskGraph(); |
- ~RasterTaskGraph(); |
- |
- void InsertRasterTask(internal::WorkerPoolTask* raster_task, |
- const TaskVector& decode_tasks); |
- |
- private: |
- friend class RasterWorkerPool; |
- |
- TaskGraph graph_; |
- scoped_refptr<internal::WorkerPoolTask> raster_finished_task_; |
- scoped_ptr<GraphNode> raster_finished_node_; |
- unsigned next_priority_; |
- |
- DISALLOW_COPY_AND_ASSIGN(RasterTaskGraph); |
- }; |
- |
RasterWorkerPool(ResourceProvider* resource_provider, size_t num_threads); |
- virtual void OnRasterTasksFinished() {} |
- |
void SetRasterTasks(RasterTask::Queue* queue); |
- void SetRasterTaskGraph(RasterTaskGraph* graph); |
bool IsRasterTaskRequiredForActivation( |
internal::RasterWorkerPoolTask* task) const; |
@@ -266,17 +246,17 @@ class CC_EXPORT RasterWorkerPool : public WorkerPool { |
return raster_tasks_; |
} |
- private: |
- void OnRasterFinished(int64 schedule_raster_tasks_count); |
+ static scoped_ptr<GraphNode> CreateRasterTaskGraphNode( |
+ internal::WorkerPoolTask* raster_task, |
+ const TaskVector& decode_tasks, |
+ unsigned priority, |
+ TaskGraph* graph); |
+ private: |
RasterWorkerPoolClient* client_; |
ResourceProvider* resource_provider_; |
RasterTask::Queue::TaskVector raster_tasks_; |
RasterTask::Queue::TaskSet raster_tasks_required_for_activation_; |
- |
- base::WeakPtrFactory<RasterWorkerPool> weak_ptr_factory_; |
- scoped_refptr<internal::WorkerPoolTask> raster_finished_task_; |
- int64 schedule_raster_tasks_count_; |
}; |
} // namespace cc |