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

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

Issue 454843002: cc: Do bitmap conversion for RasterBuffer in the worker thread. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 4 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
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/image_raster_worker_pool.h" 5 #include "cc/resources/image_raster_worker_pool.h"
6 6
7 #include "base/debug/trace_event.h" 7 #include "base/debug/trace_event.h"
8 #include "base/debug/trace_event_argument.h" 8 #include "base/debug/trace_event_argument.h"
9 #include "cc/debug/traced_value.h" 9 #include "cc/debug/traced_value.h"
10 #include "cc/resources/resource.h" 10 #include "cc/resources/resource.h"
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
134 134
135 task->WillComplete(); 135 task->WillComplete();
136 task->CompleteOnOriginThread(this); 136 task->CompleteOnOriginThread(this);
137 task->DidComplete(); 137 task->DidComplete();
138 138
139 task->RunReplyOnOriginThread(); 139 task->RunReplyOnOriginThread();
140 } 140 }
141 completed_tasks_.clear(); 141 completed_tasks_.clear();
142 } 142 }
143 143
144 SkCanvas* ImageRasterWorkerPool::AcquireCanvasForRaster(RasterTask* task) { 144 RasterCanvas* ImageRasterWorkerPool::AcquireCanvasForRaster(RasterTask* task) {
145 return resource_provider_->MapImageRasterBuffer(task->resource()->id()); 145 return resource_provider_->MapImageRasterBuffer(task->resource()->id());
146 } 146 }
147 147
148 void ImageRasterWorkerPool::ReleaseCanvasForRaster(RasterTask* task) { 148 void ImageRasterWorkerPool::ReleaseCanvasForRaster(RasterTask* task) {
149 resource_provider_->UnmapImageRasterBuffer(task->resource()->id()); 149 resource_provider_->UnmapImageRasterBuffer(task->resource()->id());
150 150
151 // Map/UnmapImageRasterBuffer provides direct access to the memory used by the 151 // Map/UnmapImageRasterBuffer provides direct access to the memory used by the
152 // GPU. Read lock fences are required to ensure that we're not trying to map a 152 // GPU. Read lock fences are required to ensure that we're not trying to map a
153 // resource that is currently in-use by the GPU. 153 // resource that is currently in-use by the GPU.
154 resource_provider_->EnableReadLockFences(task->resource()->id()); 154 resource_provider_->EnableReadLockFences(task->resource()->id());
(...skipping 23 matching lines...) Expand all
178 ImageRasterWorkerPool::StateAsValue() const { 178 ImageRasterWorkerPool::StateAsValue() const {
179 scoped_refptr<base::debug::TracedValue> state = 179 scoped_refptr<base::debug::TracedValue> state =
180 new base::debug::TracedValue(); 180 new base::debug::TracedValue();
181 181
182 state->SetBoolean("tasks_required_for_activation_pending", 182 state->SetBoolean("tasks_required_for_activation_pending",
183 raster_tasks_required_for_activation_pending_); 183 raster_tasks_required_for_activation_pending_);
184 return state; 184 return state;
185 } 185 }
186 186
187 } // namespace cc 187 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698