| 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_RESOURCES_PICTURE_LAYER_TILING_SET_H_ | 5 #ifndef CC_RESOURCES_PICTURE_LAYER_TILING_SET_H_ |
| 6 #define CC_RESOURCES_PICTURE_LAYER_TILING_SET_H_ | 6 #define CC_RESOURCES_PICTURE_LAYER_TILING_SET_H_ |
| 7 | 7 |
| 8 #include "cc/base/region.h" | 8 #include "cc/base/region.h" |
| 9 #include "cc/base/scoped_ptr_vector.h" | 9 #include "cc/base/scoped_ptr_vector.h" |
| 10 #include "cc/resources/picture_layer_tiling.h" | 10 #include "cc/resources/picture_layer_tiling.h" |
| 11 #include "ui/gfx/size.h" | 11 #include "ui/gfx/size.h" |
| 12 | 12 |
| 13 namespace cc { | 13 namespace cc { |
| 14 | 14 |
| 15 class CC_EXPORT PictureLayerTilingSet { | 15 class CC_EXPORT PictureLayerTilingSet { |
| 16 public: | 16 public: |
| 17 PictureLayerTilingSet(PictureLayerTilingClient* client, | 17 PictureLayerTilingSet(PictureLayerTilingClient* client, |
| 18 const gfx::Size& layer_bounds); | 18 const gfx::Size& layer_bounds); |
| 19 ~PictureLayerTilingSet(); | 19 ~PictureLayerTilingSet(); |
| 20 | 20 |
| 21 void SetClient(PictureLayerTilingClient* client); | 21 void SetClient(PictureLayerTilingClient* client); |
| 22 const PictureLayerTilingClient* client() const { return client_; } | 22 const PictureLayerTilingClient* client() const { return client_; } |
| 23 | 23 |
| 24 // Make this set of tilings match the same set of content scales from |other|. | 24 // Make this set of tilings match the same set of content scales from |other|. |
| 25 // Delete any tilings that don't meet |minimum_contents_scale|. Recreate | 25 // Delete any tilings that don't meet |minimum_contents_scale|. Recreate |
| 26 // any tiles that intersect |layer_invalidation|. Update the size of all | 26 // any tiles that intersect |layer_invalidation|. Update the size of all |
| 27 // tilings to |new_layer_bounds|. | 27 // tilings to |new_layer_bounds|. |
| 28 void SyncTilings( | 28 // Returns true if we had at least one high res tiling synced. |
| 29 const PictureLayerTilingSet& other, | 29 bool SyncTilings(const PictureLayerTilingSet& other, |
| 30 const gfx::Size& new_layer_bounds, | 30 const gfx::Size& new_layer_bounds, |
| 31 const Region& layer_invalidation, | 31 const Region& layer_invalidation, |
| 32 float minimum_contents_scale); | 32 float minimum_contents_scale); |
| 33 | 33 |
| 34 void RemoveTilesInRegion(const Region& region); | 34 void RemoveTilesInRegion(const Region& region); |
| 35 | 35 |
| 36 gfx::Size layer_bounds() const { return layer_bounds_; } | 36 gfx::Size layer_bounds() const { return layer_bounds_; } |
| 37 | 37 |
| 38 void SetCanUseLCDText(bool can_use_lcd_text); | 38 void SetCanUseLCDText(bool can_use_lcd_text); |
| 39 | 39 |
| 40 PictureLayerTiling* AddTiling(float contents_scale); | 40 PictureLayerTiling* AddTiling(float contents_scale); |
| 41 size_t num_tilings() const { return tilings_.size(); } | 41 size_t num_tilings() const { return tilings_.size(); } |
| 42 int NumHighResTilings() const; | 42 int NumHighResTilings() const; |
| (...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 116 gfx::Size layer_bounds_; | 116 gfx::Size layer_bounds_; |
| 117 ScopedPtrVector<PictureLayerTiling> tilings_; | 117 ScopedPtrVector<PictureLayerTiling> tilings_; |
| 118 | 118 |
| 119 friend class Iterator; | 119 friend class Iterator; |
| 120 DISALLOW_COPY_AND_ASSIGN(PictureLayerTilingSet); | 120 DISALLOW_COPY_AND_ASSIGN(PictureLayerTilingSet); |
| 121 }; | 121 }; |
| 122 | 122 |
| 123 } // namespace cc | 123 } // namespace cc |
| 124 | 124 |
| 125 #endif // CC_RESOURCES_PICTURE_LAYER_TILING_SET_H_ | 125 #endif // CC_RESOURCES_PICTURE_LAYER_TILING_SET_H_ |
| OLD | NEW |