Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1046)

Side by Side Diff: cc/resources/gpu_tile_task_worker_pool.cc

Issue 860813002: Remove the default format from ResourcePool. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove ResourceFormat from TileManager and call TileTaskRunner::GetResourceFormat() directly instea… Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « cc/resources/gpu_tile_task_worker_pool.h ('k') | cc/resources/one_copy_tile_task_worker_pool.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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/resources/gpu_tile_task_worker_pool.h" 5 #include "cc/resources/gpu_tile_task_worker_pool.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/debug/trace_event.h" 9 #include "base/debug/trace_event.h"
10 #include "cc/resources/raster_buffer.h" 10 #include "cc/resources/raster_buffer.h"
(...skipping 21 matching lines...) Expand all
32 } 32 }
33 33
34 private: 34 private:
35 DISALLOW_COPY_AND_ASSIGN(RasterBufferImpl); 35 DISALLOW_COPY_AND_ASSIGN(RasterBufferImpl);
36 }; 36 };
37 37
38 } // namespace 38 } // namespace
39 // static 39 // static
40 scoped_ptr<TileTaskWorkerPool> GpuTileTaskWorkerPool::Create( 40 scoped_ptr<TileTaskWorkerPool> GpuTileTaskWorkerPool::Create(
41 base::SequencedTaskRunner* task_runner, 41 base::SequencedTaskRunner* task_runner,
42 TaskGraphRunner* task_graph_runner) { 42 TaskGraphRunner* task_graph_runner,
43 ResourceProvider* resource_provider) {
43 return make_scoped_ptr<TileTaskWorkerPool>( 44 return make_scoped_ptr<TileTaskWorkerPool>(
44 new GpuTileTaskWorkerPool(task_runner, task_graph_runner)); 45 new GpuTileTaskWorkerPool(
46 task_runner, task_graph_runner, resource_provider));
45 } 47 }
46 48
47 // TODO(hendrikw): This class should be removed. See crbug.com/444938. 49 // TODO(hendrikw): This class should be removed. See crbug.com/444938.
48 GpuTileTaskWorkerPool::GpuTileTaskWorkerPool( 50 GpuTileTaskWorkerPool::GpuTileTaskWorkerPool(
49 base::SequencedTaskRunner* task_runner, 51 base::SequencedTaskRunner* task_runner,
50 TaskGraphRunner* task_graph_runner) 52 TaskGraphRunner* task_graph_runner,
53 ResourceProvider* resource_provider)
51 : task_runner_(task_runner), 54 : task_runner_(task_runner),
52 task_graph_runner_(task_graph_runner), 55 task_graph_runner_(task_graph_runner),
53 namespace_token_(task_graph_runner_->GetNamespaceToken()), 56 namespace_token_(task_graph_runner_->GetNamespaceToken()),
57 resource_provider_(resource_provider),
54 task_set_finished_weak_ptr_factory_(this), 58 task_set_finished_weak_ptr_factory_(this),
55 weak_ptr_factory_(this) { 59 weak_ptr_factory_(this) {
56 } 60 }
57 61
58 GpuTileTaskWorkerPool::~GpuTileTaskWorkerPool() { 62 GpuTileTaskWorkerPool::~GpuTileTaskWorkerPool() {
59 DCHECK_EQ(0u, completed_tasks_.size()); 63 DCHECK_EQ(0u, completed_tasks_.size());
60 } 64 }
61 65
62 TileTaskRunner* GpuTileTaskWorkerPool::AsTileTaskRunner() { 66 TileTaskRunner* GpuTileTaskWorkerPool::AsTileTaskRunner() {
63 return this; 67 return this;
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
133 137
134 void GpuTileTaskWorkerPool::CheckForCompletedTasks() { 138 void GpuTileTaskWorkerPool::CheckForCompletedTasks() {
135 TRACE_EVENT0("cc", "GpuTileTaskWorkerPool::CheckForCompletedTasks"); 139 TRACE_EVENT0("cc", "GpuTileTaskWorkerPool::CheckForCompletedTasks");
136 140
137 task_graph_runner_->CollectCompletedTasks(namespace_token_, 141 task_graph_runner_->CollectCompletedTasks(namespace_token_,
138 &completed_tasks_); 142 &completed_tasks_);
139 CompleteTasks(completed_tasks_); 143 CompleteTasks(completed_tasks_);
140 completed_tasks_.clear(); 144 completed_tasks_.clear();
141 } 145 }
142 146
147 ResourceFormat GpuTileTaskWorkerPool::GetResourceFormat() {
148 return resource_provider_->best_texture_format();
149 }
150
143 void GpuTileTaskWorkerPool::CompleteTasks(const Task::Vector& tasks) { 151 void GpuTileTaskWorkerPool::CompleteTasks(const Task::Vector& tasks) {
144 for (auto& task : tasks) { 152 for (auto& task : tasks) {
145 RasterTask* raster_task = static_cast<RasterTask*>(task.get()); 153 RasterTask* raster_task = static_cast<RasterTask*>(task.get());
146 154
147 raster_task->WillComplete(); 155 raster_task->WillComplete();
148 raster_task->CompleteOnOriginThread(this); 156 raster_task->CompleteOnOriginThread(this);
149 raster_task->DidComplete(); 157 raster_task->DidComplete();
150 158
151 raster_task->RunReplyOnOriginThread(); 159 raster_task->RunReplyOnOriginThread();
152 } 160 }
(...skipping 13 matching lines...) Expand all
166 void GpuTileTaskWorkerPool::OnTaskSetFinished(TaskSet task_set) { 174 void GpuTileTaskWorkerPool::OnTaskSetFinished(TaskSet task_set) {
167 TRACE_EVENT1("cc", "GpuTileTaskWorkerPool::OnTaskSetFinished", "task_set", 175 TRACE_EVENT1("cc", "GpuTileTaskWorkerPool::OnTaskSetFinished", "task_set",
168 task_set); 176 task_set);
169 177
170 DCHECK(tasks_pending_[task_set]); 178 DCHECK(tasks_pending_[task_set]);
171 tasks_pending_[task_set] = false; 179 tasks_pending_[task_set] = false;
172 client_->DidFinishRunningTileTasks(task_set); 180 client_->DidFinishRunningTileTasks(task_set);
173 } 181 }
174 182
175 } // namespace cc 183 } // namespace cc
OLDNEW
« no previous file with comments | « cc/resources/gpu_tile_task_worker_pool.h ('k') | cc/resources/one_copy_tile_task_worker_pool.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698