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

Unified Diff: cc/resources/image_raster_worker_pool.cc

Issue 157293002: cc: Refactor WorkerPoolTaskClient::AcquireBufferForRaster (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fixed cc_perftests compile error Created 6 years, 10 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/resources/image_raster_worker_pool.h ('k') | cc/resources/pixel_buffer_raster_worker_pool.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/resources/image_raster_worker_pool.cc
diff --git a/cc/resources/image_raster_worker_pool.cc b/cc/resources/image_raster_worker_pool.cc
index 16f876c62d962de9906128197c45b196ede33c85..d4ba08cc5bacc25ec9a06f55bdd749ed1882916a 100644
--- a/cc/resources/image_raster_worker_pool.cc
+++ b/cc/resources/image_raster_worker_pool.cc
@@ -140,20 +140,22 @@ void ImageRasterWorkerPool::CheckForCompletedTasks() {
CheckForCompletedGpuRasterTasks();
}
-void* ImageRasterWorkerPool::AcquireBufferForRaster(
- internal::RasterWorkerPoolTask* task,
- int* stride) {
- // Acquire image for resource.
- resource_provider()->AcquireImage(task->resource()->id());
+SkCanvas* ImageRasterWorkerPool::AcquireCanvasForRaster(
+ internal::RasterWorkerPoolTask* task) {
+ if (task->use_gpu_rasterization())
+ return resource_provider()->MapDirectRasterBuffer(task->resource()->id());
- *stride = resource_provider()->GetImageStride(task->resource()->id());
- return resource_provider()->MapImage(task->resource()->id());
+ return resource_provider()->MapImageRasterBuffer(task->resource()->id());
}
void ImageRasterWorkerPool::OnRasterCompleted(
internal::RasterWorkerPoolTask* task,
const PicturePileImpl::Analysis& analysis) {
- resource_provider()->UnmapImage(task->resource()->id());
+ if (task->use_gpu_rasterization()) {
+ resource_provider()->UnmapDirectRasterBuffer(task->resource()->id());
+ return;
+ }
+ resource_provider()->UnmapImageRasterBuffer(task->resource()->id());
}
void ImageRasterWorkerPool::OnImageDecodeCompleted(
« no previous file with comments | « cc/resources/image_raster_worker_pool.h ('k') | cc/resources/pixel_buffer_raster_worker_pool.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698