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

Side by Side Diff: cc/layers/picture_layer_impl.cc

Issue 413603002: cc: Add const versions of operator* to layer iterators. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 5 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 | Annotate | Revision Log
« no previous file with comments | « cc/layers/picture_layer_impl.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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/layers/picture_layer_impl.h" 5 #include "cc/layers/picture_layer_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <limits> 8 #include <limits>
9 9
10 #include "base/time/time.h" 10 #include "base/time/time.h"
(...skipping 1490 matching lines...) Expand 10 before | Expand all | Expand 10 after
1501 Tile* PictureLayerImpl::LayerRasterTileIterator::operator*() { 1501 Tile* PictureLayerImpl::LayerRasterTileIterator::operator*() {
1502 DCHECK(*this); 1502 DCHECK(*this);
1503 1503
1504 IteratorType index = stages_[current_stage_].iterator_type; 1504 IteratorType index = stages_[current_stage_].iterator_type;
1505 DCHECK(iterators_[index]); 1505 DCHECK(iterators_[index]);
1506 DCHECK(iterators_[index].get_type() == stages_[current_stage_].tile_type); 1506 DCHECK(iterators_[index].get_type() == stages_[current_stage_].tile_type);
1507 1507
1508 return *iterators_[index]; 1508 return *iterators_[index];
1509 } 1509 }
1510 1510
1511 const Tile* PictureLayerImpl::LayerRasterTileIterator::operator*() const {
1512 DCHECK(*this);
1513
1514 IteratorType index = stages_[current_stage_].iterator_type;
1515 DCHECK(iterators_[index]);
1516 DCHECK(iterators_[index].get_type() == stages_[current_stage_].tile_type);
1517
1518 return *iterators_[index];
1519 }
1520
1511 PictureLayerImpl::LayerEvictionTileIterator::LayerEvictionTileIterator() 1521 PictureLayerImpl::LayerEvictionTileIterator::LayerEvictionTileIterator()
1512 : iterator_index_(0), 1522 : iterator_index_(0),
1513 iteration_stage_(TilePriority::EVENTUALLY), 1523 iteration_stage_(TilePriority::EVENTUALLY),
1514 required_for_activation_(false), 1524 required_for_activation_(false),
1515 layer_(NULL) {} 1525 layer_(NULL) {}
1516 1526
1517 PictureLayerImpl::LayerEvictionTileIterator::LayerEvictionTileIterator( 1527 PictureLayerImpl::LayerEvictionTileIterator::LayerEvictionTileIterator(
1518 PictureLayerImpl* layer, 1528 PictureLayerImpl* layer,
1519 TreePriority tree_priority) 1529 TreePriority tree_priority)
1520 : iterator_index_(0), 1530 : iterator_index_(0),
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
1578 } 1588 }
1579 } 1589 }
1580 1590
1581 PictureLayerImpl::LayerEvictionTileIterator::~LayerEvictionTileIterator() {} 1591 PictureLayerImpl::LayerEvictionTileIterator::~LayerEvictionTileIterator() {}
1582 1592
1583 Tile* PictureLayerImpl::LayerEvictionTileIterator::operator*() { 1593 Tile* PictureLayerImpl::LayerEvictionTileIterator::operator*() {
1584 DCHECK(*this); 1594 DCHECK(*this);
1585 return *iterators_[iterator_index_]; 1595 return *iterators_[iterator_index_];
1586 } 1596 }
1587 1597
1598 const Tile* PictureLayerImpl::LayerEvictionTileIterator::operator*() const {
1599 DCHECK(*this);
1600 return *iterators_[iterator_index_];
1601 }
1602
1588 PictureLayerImpl::LayerEvictionTileIterator& 1603 PictureLayerImpl::LayerEvictionTileIterator&
1589 PictureLayerImpl::LayerEvictionTileIterator:: 1604 PictureLayerImpl::LayerEvictionTileIterator::
1590 operator++() { 1605 operator++() {
1591 DCHECK(*this); 1606 DCHECK(*this);
1592 ++iterators_[iterator_index_]; 1607 ++iterators_[iterator_index_];
1593 if (!iterators_[iterator_index_] || 1608 if (!iterators_[iterator_index_] ||
1594 !IsCorrectType(&iterators_[iterator_index_])) { 1609 !IsCorrectType(&iterators_[iterator_index_])) {
1595 AdvanceToNextIterator(); 1610 AdvanceToNextIterator();
1596 } 1611 }
1597 return *this; 1612 return *this;
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
1629 return iterator_index_ < iterators_.size(); 1644 return iterator_index_ < iterators_.size();
1630 } 1645 }
1631 1646
1632 bool PictureLayerImpl::LayerEvictionTileIterator::IsCorrectType( 1647 bool PictureLayerImpl::LayerEvictionTileIterator::IsCorrectType(
1633 PictureLayerTiling::TilingEvictionTileIterator* it) const { 1648 PictureLayerTiling::TilingEvictionTileIterator* it) const {
1634 return it->get_type() == iteration_stage_ && 1649 return it->get_type() == iteration_stage_ &&
1635 (**it)->required_for_activation() == required_for_activation_; 1650 (**it)->required_for_activation() == required_for_activation_;
1636 } 1651 }
1637 1652
1638 } // namespace cc 1653 } // namespace cc
OLDNEW
« no previous file with comments | « cc/layers/picture_layer_impl.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698