| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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/tile_manager.h" | 5 #include "cc/tiles/tile_manager.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <algorithm> | 10 #include <algorithm> |
| (...skipping 846 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 857 std::vector<DrawImage>* sync_decoded_images, | 857 std::vector<DrawImage>* sync_decoded_images, |
| 858 std::vector<PaintImage>* checkered_images) { | 858 std::vector<PaintImage>* checkered_images) { |
| 859 Tile* tile = prioritized_tile.tile(); | 859 Tile* tile = prioritized_tile.tile(); |
| 860 std::vector<DrawImage> images_in_tile; | 860 std::vector<DrawImage> images_in_tile; |
| 861 prioritized_tile.raster_source()->GetDiscardableImagesInRect( | 861 prioritized_tile.raster_source()->GetDiscardableImagesInRect( |
| 862 tile->enclosing_layer_rect(), tile->raster_transform().scale(), | 862 tile->enclosing_layer_rect(), tile->raster_transform().scale(), |
| 863 raster_color_space, &images_in_tile); | 863 raster_color_space, &images_in_tile); |
| 864 WhichTree tree = tile->tiling()->tree(); | 864 WhichTree tree = tile->tiling()->tree(); |
| 865 | 865 |
| 866 for (auto& draw_image : images_in_tile) { | 866 for (auto& draw_image : images_in_tile) { |
| 867 if (checker_image_tracker_.ShouldCheckerImage(draw_image.paint_image(), | 867 if (checker_image_tracker_.ShouldCheckerImage(draw_image, tree)) |
| 868 tree)) | |
| 869 checkered_images->push_back(draw_image.paint_image()); | 868 checkered_images->push_back(draw_image.paint_image()); |
| 870 else | 869 else |
| 871 sync_decoded_images->push_back(draw_image); | 870 sync_decoded_images->push_back(draw_image); |
| 872 } | 871 } |
| 873 } | 872 } |
| 874 | 873 |
| 875 void TileManager::AddCheckeredImagesToDecodeQueue( | 874 void TileManager::AddCheckeredImagesToDecodeQueue( |
| 876 const PrioritizedTile& prioritized_tile, | 875 const PrioritizedTile& prioritized_tile, |
| 877 const gfx::ColorSpace& raster_color_space, | 876 const gfx::ColorSpace& raster_color_space, |
| 878 CheckerImageTracker::ImageDecodeQueue* image_decode_queue) { | 877 CheckerImageTracker::ImageDecodeQueue* image_decode_queue) { |
| 879 Tile* tile = prioritized_tile.tile(); | 878 Tile* tile = prioritized_tile.tile(); |
| 880 std::vector<DrawImage> images_in_tile; | 879 std::vector<DrawImage> images_in_tile; |
| 881 prioritized_tile.raster_source()->GetDiscardableImagesInRect( | 880 prioritized_tile.raster_source()->GetDiscardableImagesInRect( |
| 882 tile->enclosing_layer_rect(), tile->raster_transform().scale(), | 881 tile->enclosing_layer_rect(), tile->raster_transform().scale(), |
| 883 raster_color_space, &images_in_tile); | 882 raster_color_space, &images_in_tile); |
| 884 WhichTree tree = tile->tiling()->tree(); | 883 WhichTree tree = tile->tiling()->tree(); |
| 885 | 884 |
| 886 for (auto& draw_image : images_in_tile) { | 885 for (auto& draw_image : images_in_tile) { |
| 887 if (checker_image_tracker_.ShouldCheckerImage(draw_image.paint_image(), | 886 if (checker_image_tracker_.ShouldCheckerImage(draw_image, tree)) |
| 888 tree)) | |
| 889 image_decode_queue->push_back(draw_image.paint_image()); | 887 image_decode_queue->push_back(draw_image.paint_image()); |
| 890 } | 888 } |
| 891 } | 889 } |
| 892 | 890 |
| 893 void TileManager::ScheduleTasks( | 891 void TileManager::ScheduleTasks( |
| 894 const PrioritizedWorkToSchedule& work_to_schedule) { | 892 const PrioritizedWorkToSchedule& work_to_schedule) { |
| 895 const std::vector<PrioritizedTile>& tiles_that_need_to_be_rasterized = | 893 const std::vector<PrioritizedTile>& tiles_that_need_to_be_rasterized = |
| 896 work_to_schedule.tiles_to_raster; | 894 work_to_schedule.tiles_to_raster; |
| 897 TRACE_EVENT1("cc", "TileManager::ScheduleTasks", "count", | 895 TRACE_EVENT1("cc", "TileManager::ScheduleTasks", "count", |
| 898 tiles_that_need_to_be_rasterized.size()); | 896 tiles_that_need_to_be_rasterized.size()); |
| (...skipping 759 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1658 all_tile_tasks_completed = false; | 1656 all_tile_tasks_completed = false; |
| 1659 did_notify_all_tile_tasks_completed = false; | 1657 did_notify_all_tile_tasks_completed = false; |
| 1660 } | 1658 } |
| 1661 | 1659 |
| 1662 TileManager::PrioritizedWorkToSchedule::PrioritizedWorkToSchedule() = default; | 1660 TileManager::PrioritizedWorkToSchedule::PrioritizedWorkToSchedule() = default; |
| 1663 TileManager::PrioritizedWorkToSchedule::PrioritizedWorkToSchedule( | 1661 TileManager::PrioritizedWorkToSchedule::PrioritizedWorkToSchedule( |
| 1664 PrioritizedWorkToSchedule&& other) = default; | 1662 PrioritizedWorkToSchedule&& other) = default; |
| 1665 TileManager::PrioritizedWorkToSchedule::~PrioritizedWorkToSchedule() = default; | 1663 TileManager::PrioritizedWorkToSchedule::~PrioritizedWorkToSchedule() = default; |
| 1666 | 1664 |
| 1667 } // namespace cc | 1665 } // namespace cc |
| OLD | NEW |