| 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 #ifndef CC_LAYERS_PICTURE_LAYER_IMPL_H_ | 5 #ifndef CC_LAYERS_PICTURE_LAYER_IMPL_H_ |
| 6 #define CC_LAYERS_PICTURE_LAYER_IMPL_H_ | 6 #define CC_LAYERS_PICTURE_LAYER_IMPL_H_ |
| 7 | 7 |
| 8 #include <set> | 8 #include <set> |
| 9 #include <string> | 9 #include <string> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 21 matching lines...) Expand all Loading... |
| 32 public: | 32 public: |
| 33 struct CC_EXPORT Pair { | 33 struct CC_EXPORT Pair { |
| 34 Pair(); | 34 Pair(); |
| 35 Pair(PictureLayerImpl* active_layer, PictureLayerImpl* pending_layer); | 35 Pair(PictureLayerImpl* active_layer, PictureLayerImpl* pending_layer); |
| 36 ~Pair(); | 36 ~Pair(); |
| 37 | 37 |
| 38 PictureLayerImpl* active; | 38 PictureLayerImpl* active; |
| 39 PictureLayerImpl* pending; | 39 PictureLayerImpl* pending; |
| 40 }; | 40 }; |
| 41 | 41 |
| 42 static scoped_ptr<PictureLayerImpl> Create(LayerTreeImpl* tree_impl, | 42 static scoped_ptr<PictureLayerImpl> Create( |
| 43 int id, | 43 LayerTreeImpl* tree_impl, |
| 44 bool is_mask) { | 44 int id, |
| 45 return make_scoped_ptr(new PictureLayerImpl(tree_impl, id, is_mask)); | 45 bool is_mask, |
| 46 scoped_refptr<SyncedScrollOffset> scroll_offset) { |
| 47 return make_scoped_ptr( |
| 48 new PictureLayerImpl(tree_impl, id, is_mask, scroll_offset)); |
| 46 } | 49 } |
| 47 ~PictureLayerImpl() override; | 50 ~PictureLayerImpl() override; |
| 48 | 51 |
| 49 bool is_mask() const { return is_mask_; } | 52 bool is_mask() const { return is_mask_; } |
| 50 | 53 |
| 51 scoped_ptr<TilingSetEvictionQueue> CreateEvictionQueue( | 54 scoped_ptr<TilingSetEvictionQueue> CreateEvictionQueue( |
| 52 TreePriority tree_priority); | 55 TreePriority tree_priority); |
| 53 scoped_ptr<TilingSetRasterQueue> CreateRasterQueue(bool prioritize_low_res); | 56 scoped_ptr<TilingSetRasterQueue> CreateRasterQueue(bool prioritize_low_res); |
| 54 | 57 |
| 55 // LayerImpl overrides. | 58 // LayerImpl overrides. |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 103 bool AllTilesRequiredForActivationAreReadyToDraw() const; | 106 bool AllTilesRequiredForActivationAreReadyToDraw() const; |
| 104 bool AllTilesRequiredForDrawAreReadyToDraw() const; | 107 bool AllTilesRequiredForDrawAreReadyToDraw() const; |
| 105 | 108 |
| 106 // Used for benchmarking | 109 // Used for benchmarking |
| 107 RasterSource* GetRasterSource() const { return raster_source_.get(); } | 110 RasterSource* GetRasterSource() const { return raster_source_.get(); } |
| 108 | 111 |
| 109 protected: | 112 protected: |
| 110 friend class LayerRasterTileIterator; | 113 friend class LayerRasterTileIterator; |
| 111 using TileRequirementCheck = bool (PictureLayerTiling::*)(const Tile*) const; | 114 using TileRequirementCheck = bool (PictureLayerTiling::*)(const Tile*) const; |
| 112 | 115 |
| 113 PictureLayerImpl(LayerTreeImpl* tree_impl, int id, bool is_mask); | 116 PictureLayerImpl(LayerTreeImpl* tree_impl, |
| 117 int id, |
| 118 bool is_mask, |
| 119 scoped_refptr<SyncedScrollOffset> scroll_offset); |
| 114 PictureLayerTiling* AddTiling(float contents_scale); | 120 PictureLayerTiling* AddTiling(float contents_scale); |
| 115 void RemoveAllTilings(); | 121 void RemoveAllTilings(); |
| 116 void AddTilingsForRasterScale(); | 122 void AddTilingsForRasterScale(); |
| 117 bool UpdateTilePriorities(const Occlusion& occlusion_in_content_space); | 123 bool UpdateTilePriorities(const Occlusion& occlusion_in_content_space); |
| 118 virtual bool ShouldAdjustRasterScale() const; | 124 virtual bool ShouldAdjustRasterScale() const; |
| 119 virtual void RecalculateRasterScales(); | 125 virtual void RecalculateRasterScales(); |
| 120 void CleanUpTilingsOnActiveLayer( | 126 void CleanUpTilingsOnActiveLayer( |
| 121 std::vector<PictureLayerTiling*> used_tilings); | 127 std::vector<PictureLayerTiling*> used_tilings); |
| 122 float MinimumContentsScale() const; | 128 float MinimumContentsScale() const; |
| 123 float MaximumContentsScale() const; | 129 float MaximumContentsScale() const; |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 176 // from regular draws. Save a copy of the required draw properties of the last | 182 // from regular draws. Save a copy of the required draw properties of the last |
| 177 // frame that has a valid viewport for prioritizing tiles. | 183 // frame that has a valid viewport for prioritizing tiles. |
| 178 gfx::Rect visible_rect_for_tile_priority_; | 184 gfx::Rect visible_rect_for_tile_priority_; |
| 179 | 185 |
| 180 DISALLOW_COPY_AND_ASSIGN(PictureLayerImpl); | 186 DISALLOW_COPY_AND_ASSIGN(PictureLayerImpl); |
| 181 }; | 187 }; |
| 182 | 188 |
| 183 } // namespace cc | 189 } // namespace cc |
| 184 | 190 |
| 185 #endif // CC_LAYERS_PICTURE_LAYER_IMPL_H_ | 191 #endif // CC_LAYERS_PICTURE_LAYER_IMPL_H_ |
| OLD | NEW |