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 <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
89 virtual scoped_ptr<LayerImpl> CreateLayerImpl(LayerTreeImpl* tree_impl) | 89 virtual scoped_ptr<LayerImpl> CreateLayerImpl(LayerTreeImpl* tree_impl) |
90 OVERRIDE; | 90 OVERRIDE; |
91 virtual void PushPropertiesTo(LayerImpl* layer) OVERRIDE; | 91 virtual void PushPropertiesTo(LayerImpl* layer) OVERRIDE; |
92 virtual void AppendQuads(QuadSink* quad_sink, | 92 virtual void AppendQuads(QuadSink* quad_sink, |
93 AppendQuadsData* append_quads_data) OVERRIDE; | 93 AppendQuadsData* append_quads_data) OVERRIDE; |
94 virtual void UpdateTilePriorities() OVERRIDE; | 94 virtual void UpdateTilePriorities() OVERRIDE; |
95 virtual void NotifyTileStateChanged(const Tile* tile) OVERRIDE; | 95 virtual void NotifyTileStateChanged(const Tile* tile) OVERRIDE; |
96 virtual void DidBecomeActive() OVERRIDE; | 96 virtual void DidBecomeActive() OVERRIDE; |
97 virtual void DidBeginTracing() OVERRIDE; | 97 virtual void DidBeginTracing() OVERRIDE; |
98 virtual void ReleaseResources() OVERRIDE; | 98 virtual void ReleaseResources() OVERRIDE; |
99 virtual void CalculateContentsScale(float ideal_contents_scale, | |
100 float device_scale_factor, | |
101 float page_scale_factor, | |
102 float maximum_animation_contents_scale, | |
103 bool animating_transform_to_screen, | |
104 float* contents_scale_x, | |
105 float* contents_scale_y, | |
106 gfx::Size* content_bounds) OVERRIDE; | |
107 virtual skia::RefPtr<SkPicture> GetPicture() OVERRIDE; | 99 virtual skia::RefPtr<SkPicture> GetPicture() OVERRIDE; |
108 | 100 |
109 // PictureLayerTilingClient overrides. | 101 // PictureLayerTilingClient overrides. |
110 virtual scoped_refptr<Tile> CreateTile( | 102 virtual scoped_refptr<Tile> CreateTile( |
111 PictureLayerTiling* tiling, | 103 PictureLayerTiling* tiling, |
112 const gfx::Rect& content_rect) OVERRIDE; | 104 const gfx::Rect& content_rect) OVERRIDE; |
113 virtual void UpdatePile(Tile* tile) OVERRIDE; | 105 virtual void UpdatePile(Tile* tile) OVERRIDE; |
114 virtual gfx::Size CalculateTileSize( | 106 virtual gfx::Size CalculateTileSize( |
115 const gfx::Size& content_bounds) const OVERRIDE; | 107 const gfx::Size& content_bounds) const OVERRIDE; |
116 virtual const Region* GetInvalidation() OVERRIDE; | 108 virtual const Region* GetInvalidation() OVERRIDE; |
(...skipping 14 matching lines...) Expand all Loading... |
131 | 123 |
132 virtual void RunMicroBenchmark(MicroBenchmarkImpl* benchmark) OVERRIDE; | 124 virtual void RunMicroBenchmark(MicroBenchmarkImpl* benchmark) OVERRIDE; |
133 | 125 |
134 // Functions used by tile manager. | 126 // Functions used by tile manager. |
135 void DidUnregisterLayer(); | 127 void DidUnregisterLayer(); |
136 PictureLayerImpl* GetTwinLayer() { return twin_layer_; } | 128 PictureLayerImpl* GetTwinLayer() { return twin_layer_; } |
137 WhichTree GetTree() const; | 129 WhichTree GetTree() const; |
138 bool IsOnActiveOrPendingTree() const; | 130 bool IsOnActiveOrPendingTree() const; |
139 bool AllTilesRequiredForActivationAreReadyToDraw() const; | 131 bool AllTilesRequiredForActivationAreReadyToDraw() const; |
140 | 132 |
| 133 float MaximumTilingContentScale() const; |
| 134 |
141 protected: | 135 protected: |
142 friend class LayerRasterTileIterator; | 136 friend class LayerRasterTileIterator; |
143 | 137 |
144 PictureLayerImpl(LayerTreeImpl* tree_impl, int id); | 138 PictureLayerImpl(LayerTreeImpl* tree_impl, int id); |
145 PictureLayerTiling* AddTiling(float contents_scale); | 139 PictureLayerTiling* AddTiling(float contents_scale); |
146 void RemoveTiling(float contents_scale); | 140 void RemoveTiling(float contents_scale); |
147 void RemoveAllTilings(); | 141 void RemoveAllTilings(); |
148 void SyncFromActiveLayer(const PictureLayerImpl* other); | 142 void SyncFromActiveLayer(const PictureLayerImpl* other); |
149 void ManageTilings(bool animating_transform_to_screen, | 143 void ManageTilings(bool animating_transform_to_screen, |
150 float maximum_animation_contents_scale); | 144 float maximum_animation_contents_scale); |
(...skipping 18 matching lines...) Expand all Loading... |
169 void DoPostCommitInitializationIfNeeded() { | 163 void DoPostCommitInitializationIfNeeded() { |
170 if (needs_post_commit_initialization_) | 164 if (needs_post_commit_initialization_) |
171 DoPostCommitInitialization(); | 165 DoPostCommitInitialization(); |
172 } | 166 } |
173 void DoPostCommitInitialization(); | 167 void DoPostCommitInitialization(); |
174 | 168 |
175 bool CanHaveTilings() const; | 169 bool CanHaveTilings() const; |
176 bool CanHaveTilingWithScale(float contents_scale) const; | 170 bool CanHaveTilingWithScale(float contents_scale) const; |
177 void SanityCheckTilingState() const; | 171 void SanityCheckTilingState() const; |
178 | 172 |
| 173 virtual void UpdateIdealScales(); |
| 174 |
179 virtual void GetDebugBorderProperties( | 175 virtual void GetDebugBorderProperties( |
180 SkColor* color, float* width) const OVERRIDE; | 176 SkColor* color, float* width) const OVERRIDE; |
181 virtual void AsValueInto(base::DictionaryValue* dict) const OVERRIDE; | 177 virtual void AsValueInto(base::DictionaryValue* dict) const OVERRIDE; |
182 | 178 |
183 PictureLayerImpl* twin_layer_; | 179 PictureLayerImpl* twin_layer_; |
184 | 180 |
185 scoped_ptr<PictureLayerTilingSet> tilings_; | 181 scoped_ptr<PictureLayerTilingSet> tilings_; |
186 scoped_refptr<PicturePileImpl> pile_; | 182 scoped_refptr<PicturePileImpl> pile_; |
187 Region invalidation_; | 183 Region invalidation_; |
188 | 184 |
(...skipping 26 matching lines...) Expand all Loading... |
215 gfx::Size viewport_size_for_tile_priority_; | 211 gfx::Size viewport_size_for_tile_priority_; |
216 gfx::Transform screen_space_transform_for_tile_priority_; | 212 gfx::Transform screen_space_transform_for_tile_priority_; |
217 | 213 |
218 friend class PictureLayer; | 214 friend class PictureLayer; |
219 DISALLOW_COPY_AND_ASSIGN(PictureLayerImpl); | 215 DISALLOW_COPY_AND_ASSIGN(PictureLayerImpl); |
220 }; | 216 }; |
221 | 217 |
222 } // namespace cc | 218 } // namespace cc |
223 | 219 |
224 #endif // CC_LAYERS_PICTURE_LAYER_IMPL_H_ | 220 #endif // CC_LAYERS_PICTURE_LAYER_IMPL_H_ |
OLD | NEW |