| OLD | NEW |
| 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/tiles/tiling_set_raster_queue_required.h" | 5 #include "cc/tiles/tiling_set_raster_queue_required.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <utility> | 9 #include <utility> |
| 10 | 10 |
| (...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 106 if (tile && tile->draw_info().NeedsRaster() && | 106 if (tile && tile->draw_info().NeedsRaster() && |
| 107 !tiling_->IsTileOccluded(tile)) { | 107 !tiling_->IsTileOccluded(tile)) { |
| 108 tiling_->UpdateRequiredStatesOnTile(tile); | 108 tiling_->UpdateRequiredStatesOnTile(tile); |
| 109 current_tile_ = tiling_->MakePrioritizedTile( | 109 current_tile_ = tiling_->MakePrioritizedTile( |
| 110 tile, tiling_->ComputePriorityRectTypeForTile(tile)); | 110 tile, tiling_->ComputePriorityRectTypeForTile(tile)); |
| 111 return; | 111 return; |
| 112 } | 112 } |
| 113 ++(*this); | 113 ++(*this); |
| 114 } | 114 } |
| 115 | 115 |
| 116 TilingSetRasterQueueRequired::TilingIterator::TilingIterator( |
| 117 const TilingSetRasterQueueRequired::TilingIterator& other) = default; |
| 118 |
| 119 TilingSetRasterQueueRequired::TilingIterator::TilingIterator( |
| 120 TilingSetRasterQueueRequired::TilingIterator&& other) = default; |
| 121 |
| 116 TilingSetRasterQueueRequired::TilingIterator::~TilingIterator() { | 122 TilingSetRasterQueueRequired::TilingIterator::~TilingIterator() { |
| 117 } | 123 } |
| 118 | 124 |
| 119 TilingSetRasterQueueRequired::TilingIterator& | 125 TilingSetRasterQueueRequired::TilingIterator& |
| 120 TilingSetRasterQueueRequired::TilingIterator:: | 126 TilingSetRasterQueueRequired::TilingIterator::operator=( |
| 121 operator++() { | 127 const TilingSetRasterQueueRequired::TilingIterator& other) = default; |
| 128 |
| 129 TilingSetRasterQueueRequired::TilingIterator& |
| 130 TilingSetRasterQueueRequired::TilingIterator::operator=( |
| 131 TilingSetRasterQueueRequired::TilingIterator&& other) = default; |
| 132 |
| 133 TilingSetRasterQueueRequired::TilingIterator& |
| 134 TilingSetRasterQueueRequired::TilingIterator::operator++() { |
| 122 Tile* tile = nullptr; | 135 Tile* tile = nullptr; |
| 123 while (true) { | 136 while (true) { |
| 124 ++visible_iterator_; | 137 ++visible_iterator_; |
| 125 if (!visible_iterator_) { | 138 if (!visible_iterator_) { |
| 126 current_tile_ = PrioritizedTile(); | 139 current_tile_ = PrioritizedTile(); |
| 127 return *this; | 140 return *this; |
| 128 } | 141 } |
| 129 std::pair<int, int> next_index = visible_iterator_.index(); | 142 std::pair<int, int> next_index = visible_iterator_.index(); |
| 130 tile = tiling_->TileAt(next_index.first, next_index.second); | 143 tile = tiling_->TileAt(next_index.first, next_index.second); |
| 131 // If the tile doesn't exist or if it exists but doesn't need raster work, | 144 // If the tile doesn't exist or if it exists but doesn't need raster work, |
| (...skipping 13 matching lines...) Expand all Loading... |
| 145 break; | 158 break; |
| 146 } | 159 } |
| 147 | 160 |
| 148 tiling_->UpdateRequiredStatesOnTile(tile); | 161 tiling_->UpdateRequiredStatesOnTile(tile); |
| 149 current_tile_ = tiling_->MakePrioritizedTile( | 162 current_tile_ = tiling_->MakePrioritizedTile( |
| 150 tile, tiling_->ComputePriorityRectTypeForTile(tile)); | 163 tile, tiling_->ComputePriorityRectTypeForTile(tile)); |
| 151 return *this; | 164 return *this; |
| 152 } | 165 } |
| 153 | 166 |
| 154 } // namespace cc | 167 } // namespace cc |
| OLD | NEW |