| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/tiles/image_controller.h" | 5 #include "cc/tiles/image_controller.h" |
| 6 | 6 |
| 7 namespace cc { | 7 namespace cc { |
| 8 | 8 |
| 9 ImageController::ImageController() = default; | 9 ImageController::ImageController() = default; |
| 10 ImageController::~ImageController() = default; | 10 ImageController::~ImageController() = default; |
| (...skipping 27 matching lines...) Expand all Loading... |
| 38 | 38 |
| 39 if (need_to_unref_when_finished) | 39 if (need_to_unref_when_finished) |
| 40 ++it; | 40 ++it; |
| 41 else | 41 else |
| 42 it = images->erase(it); | 42 it = images->erase(it); |
| 43 } | 43 } |
| 44 } | 44 } |
| 45 | 45 |
| 46 void ImageController::UnrefImages(const std::vector<DrawImage>& images) { | 46 void ImageController::UnrefImages(const std::vector<DrawImage>& images) { |
| 47 // Debugging information for crbug.com/650234. | 47 // Debugging information for crbug.com/650234. |
| 48 CHECK(cache_) << num_times_cache_was_set_; | 48 CHECK(cache_); |
| 49 for (auto image : images) | 49 for (auto image : images) |
| 50 cache_->UnrefImage(image); | 50 cache_->UnrefImage(image); |
| 51 } | 51 } |
| 52 | 52 |
| 53 void ImageController::ReduceMemoryUsage() { | 53 void ImageController::ReduceMemoryUsage() { |
| 54 DCHECK(cache_); | 54 DCHECK(cache_); |
| 55 cache_->ReduceCacheUsage(); | 55 cache_->ReduceCacheUsage(); |
| 56 } | 56 } |
| 57 | 57 |
| 58 std::vector<scoped_refptr<TileTask>> ImageController::SetPredecodeImages( | 58 std::vector<scoped_refptr<TileTask>> ImageController::SetPredecodeImages( |
| 59 std::vector<DrawImage> images, | 59 std::vector<DrawImage> images, |
| 60 const ImageDecodeCache::TracingInfo& tracing_info) { | 60 const ImageDecodeCache::TracingInfo& tracing_info) { |
| 61 std::vector<scoped_refptr<TileTask>> new_tasks; | 61 std::vector<scoped_refptr<TileTask>> new_tasks; |
| 62 GetTasksForImagesAndRef(&images, &new_tasks, tracing_info); | 62 GetTasksForImagesAndRef(&images, &new_tasks, tracing_info); |
| 63 UnrefImages(predecode_locked_images_); | 63 UnrefImages(predecode_locked_images_); |
| 64 predecode_locked_images_ = std::move(images); | 64 predecode_locked_images_ = std::move(images); |
| 65 return new_tasks; | 65 return new_tasks; |
| 66 } | 66 } |
| 67 | 67 |
| 68 } // namespace cc | 68 } // namespace cc |
| OLD | NEW |