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_TREES_LAYER_TREE_IMPL_H_ | 5 #ifndef CC_TREES_LAYER_TREE_IMPL_H_ |
6 #define CC_TREES_LAYER_TREE_IMPL_H_ | 6 #define CC_TREES_LAYER_TREE_IMPL_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <set> | 9 #include <set> |
10 #include <string> | 10 #include <string> |
(...skipping 16 matching lines...) Expand all Loading... |
27 namespace trace_event { | 27 namespace trace_event { |
28 class TracedValue; | 28 class TracedValue; |
29 } | 29 } |
30 } | 30 } |
31 | 31 |
32 namespace cc { | 32 namespace cc { |
33 | 33 |
34 class ContextProvider; | 34 class ContextProvider; |
35 class DebugRectHistory; | 35 class DebugRectHistory; |
36 class FrameRateCounter; | 36 class FrameRateCounter; |
| 37 class ElementLayers; |
37 class HeadsUpDisplayLayerImpl; | 38 class HeadsUpDisplayLayerImpl; |
38 class LayerExternalScrollOffsetListener; | 39 class LayerExternalScrollOffsetListener; |
39 class LayerScrollOffsetDelegate; | 40 class LayerScrollOffsetDelegate; |
40 class LayerTreeDebugState; | 41 class LayerTreeDebugState; |
41 class LayerTreeImpl; | 42 class LayerTreeImpl; |
42 class LayerTreeSettings; | 43 class LayerTreeSettings; |
43 class MemoryHistory; | 44 class MemoryHistory; |
44 class OutputSurface; | 45 class OutputSurface; |
45 class PageScaleAnimation; | 46 class PageScaleAnimation; |
46 class PictureLayerImpl; | 47 class PictureLayerImpl; |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
104 scoped_ptr<ScrollbarAnimationController> CreateScrollbarAnimationController( | 105 scoped_ptr<ScrollbarAnimationController> CreateScrollbarAnimationController( |
105 int scroll_layer_id); | 106 int scroll_layer_id); |
106 void DidAnimateScrollOffset(); | 107 void DidAnimateScrollOffset(); |
107 void InputScrollAnimationFinished(); | 108 void InputScrollAnimationFinished(); |
108 bool use_gpu_rasterization() const; | 109 bool use_gpu_rasterization() const; |
109 GpuRasterizationStatus GetGpuRasterizationStatus() const; | 110 GpuRasterizationStatus GetGpuRasterizationStatus() const; |
110 bool create_low_res_tiling() const; | 111 bool create_low_res_tiling() const; |
111 bool RequiresHighResToDraw() const; | 112 bool RequiresHighResToDraw() const; |
112 bool SmoothnessTakesPriority() const; | 113 bool SmoothnessTakesPriority() const; |
113 VideoFrameControllerClient* GetVideoFrameControllerClient() const; | 114 VideoFrameControllerClient* GetVideoFrameControllerClient() const; |
| 115 LayerTreeHostImpl* host() const { return layer_tree_host_impl_; } |
114 | 116 |
115 // Tree specific methods exposed to layer-impl tree. | 117 // Tree specific methods exposed to layer-impl tree. |
116 // --------------------------------------------------------------------------- | 118 // --------------------------------------------------------------------------- |
117 void SetNeedsRedraw(); | 119 void SetNeedsRedraw(); |
118 | 120 |
119 // Tracing methods. | 121 // Tracing methods. |
120 // --------------------------------------------------------------------------- | 122 // --------------------------------------------------------------------------- |
121 void GetAllPrioritizedTilesForTracing( | 123 void GetAllPrioritizedTilesForTracing( |
122 std::vector<PrioritizedTile>* prioritized_tiles) const; | 124 std::vector<PrioritizedTile>* prioritized_tiles) const; |
123 void AsValueInto(base::trace_event::TracedValue* dict) const; | 125 void AsValueInto(base::trace_event::TracedValue* dict) const; |
(...skipping 354 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
478 float max_page_scale_factor_; | 480 float max_page_scale_factor_; |
479 | 481 |
480 float device_scale_factor_; | 482 float device_scale_factor_; |
481 float painted_device_scale_factor_; | 483 float painted_device_scale_factor_; |
482 | 484 |
483 scoped_refptr<SyncedElasticOverscroll> elastic_overscroll_; | 485 scoped_refptr<SyncedElasticOverscroll> elastic_overscroll_; |
484 | 486 |
485 typedef base::hash_map<int, LayerImpl*> LayerIdMap; | 487 typedef base::hash_map<int, LayerImpl*> LayerIdMap; |
486 LayerIdMap layer_id_map_; | 488 LayerIdMap layer_id_map_; |
487 | 489 |
| 490 // TODO(vollick): this should be owned and maintained in blink (most likely by |
| 491 // the compositor mutator client). |
488 base::hash_map<uint64_t, ElementLayers> element_layers_map_; | 492 base::hash_map<uint64_t, ElementLayers> element_layers_map_; |
489 | 493 |
490 // Maps from clip layer ids to scroll layer ids. Note that this only includes | 494 // Maps from clip layer ids to scroll layer ids. Note that this only includes |
491 // the subset of clip layers that act as scrolling containers. (This is | 495 // the subset of clip layers that act as scrolling containers. (This is |
492 // derived from LayerImpl::scroll_clip_layer_ and exists to avoid O(n) walks.) | 496 // derived from LayerImpl::scroll_clip_layer_ and exists to avoid O(n) walks.) |
493 base::hash_map<int, int> clip_scroll_map_; | 497 base::hash_map<int, int> clip_scroll_map_; |
494 | 498 |
495 // Maps scroll layer ids to scrollbar layer ids. For each scroll layer, there | 499 // Maps scroll layer ids to scrollbar layer ids. For each scroll layer, there |
496 // may be 1 or 2 scrollbar layers (for vertical and horizontal). (This is | 500 // may be 1 or 2 scrollbar layers (for vertical and horizontal). (This is |
497 // derived from ScrollbarLayerImplBase::scroll_layer_id_ and exists to avoid | 501 // derived from ScrollbarLayerImplBase::scroll_layer_id_ and exists to avoid |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
538 | 542 |
539 scoped_ptr<PendingPageScaleAnimation> pending_page_scale_animation_; | 543 scoped_ptr<PendingPageScaleAnimation> pending_page_scale_animation_; |
540 | 544 |
541 private: | 545 private: |
542 DISALLOW_COPY_AND_ASSIGN(LayerTreeImpl); | 546 DISALLOW_COPY_AND_ASSIGN(LayerTreeImpl); |
543 }; | 547 }; |
544 | 548 |
545 } // namespace cc | 549 } // namespace cc |
546 | 550 |
547 #endif // CC_TREES_LAYER_TREE_IMPL_H_ | 551 #endif // CC_TREES_LAYER_TREE_IMPL_H_ |
OLD | NEW |