OLD | NEW |
1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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_HOST_IMPL_H_ | 5 #ifndef CC_TREES_LAYER_TREE_HOST_IMPL_H_ |
6 #define CC_TREES_LAYER_TREE_HOST_IMPL_H_ | 6 #define CC_TREES_LAYER_TREE_HOST_IMPL_H_ |
7 | 7 |
8 #include <list> | 8 #include <list> |
9 #include <set> | 9 #include <set> |
10 #include <string> | 10 #include <string> |
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
114 public ScrollbarAnimationControllerClient, | 114 public ScrollbarAnimationControllerClient, |
115 public BeginFrameSourceMixIn, | 115 public BeginFrameSourceMixIn, |
116 public base::SupportsWeakPtr<LayerTreeHostImpl> { | 116 public base::SupportsWeakPtr<LayerTreeHostImpl> { |
117 public: | 117 public: |
118 static scoped_ptr<LayerTreeHostImpl> Create( | 118 static scoped_ptr<LayerTreeHostImpl> Create( |
119 const LayerTreeSettings& settings, | 119 const LayerTreeSettings& settings, |
120 LayerTreeHostImplClient* client, | 120 LayerTreeHostImplClient* client, |
121 Proxy* proxy, | 121 Proxy* proxy, |
122 RenderingStatsInstrumentation* rendering_stats_instrumentation, | 122 RenderingStatsInstrumentation* rendering_stats_instrumentation, |
123 SharedBitmapManager* shared_bitmap_manager, | 123 SharedBitmapManager* shared_bitmap_manager, |
124 GpuMemoryBufferManager* gpu_memory_buffer_manager, | 124 gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager, |
125 int id); | 125 int id); |
126 ~LayerTreeHostImpl() override; | 126 ~LayerTreeHostImpl() override; |
127 | 127 |
128 // BeginFrameSourceMixIn implementation | 128 // BeginFrameSourceMixIn implementation |
129 void OnNeedsBeginFramesChange(bool needs_begin_frames) override; | 129 void OnNeedsBeginFramesChange(bool needs_begin_frames) override; |
130 | 130 |
131 // InputHandler implementation | 131 // InputHandler implementation |
132 void BindToClient(InputHandlerClient* client) override; | 132 void BindToClient(InputHandlerClient* client) override; |
133 InputHandler::ScrollStatus ScrollBegin( | 133 InputHandler::ScrollStatus ScrollBegin( |
134 const gfx::Point& viewport_point, | 134 const gfx::Point& viewport_point, |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
211 // When blocking, this prevents client_->NotifyReadyToActivate() from being | 211 // When blocking, this prevents client_->NotifyReadyToActivate() from being |
212 // called. When disabled, it calls client_->NotifyReadyToActivate() | 212 // called. When disabled, it calls client_->NotifyReadyToActivate() |
213 // immediately if any notifications had been blocked while blocking. | 213 // immediately if any notifications had been blocked while blocking. |
214 virtual void BlockNotifyReadyToActivateForTesting(bool block); | 214 virtual void BlockNotifyReadyToActivateForTesting(bool block); |
215 | 215 |
216 // This allows us to inject DidInitializeVisibleTile events for testing. | 216 // This allows us to inject DidInitializeVisibleTile events for testing. |
217 void DidInitializeVisibleTileForTesting(); | 217 void DidInitializeVisibleTileForTesting(); |
218 | 218 |
219 // Resets all of the trees to an empty state. | 219 // Resets all of the trees to an empty state. |
220 void ResetTreesForTesting(); | 220 void ResetTreesForTesting(); |
221 void ResetRecycleTreeForTesting(); | |
222 | 221 |
223 DrawMode GetDrawMode() const; | 222 DrawMode GetDrawMode() const; |
224 | 223 |
225 // Viewport size in draw space: this size is in physical pixels and is used | 224 // Viewport size in draw space: this size is in physical pixels and is used |
226 // for draw properties, tilings, quads and render passes. | 225 // for draw properties, tilings, quads and render passes. |
227 gfx::Size DrawViewportSize() const; | 226 gfx::Size DrawViewportSize() const; |
228 | 227 |
229 // Viewport rect in view space used for tiling prioritization. | 228 // Viewport rect in view space used for tiling prioritization. |
230 const gfx::Rect ViewportRectForTilePriority() const; | 229 const gfx::Rect ViewportRectForTilePriority() const; |
231 | 230 |
(...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
483 void ResetRequiresHighResToDraw() { requires_high_res_to_draw_ = false; } | 482 void ResetRequiresHighResToDraw() { requires_high_res_to_draw_ = false; } |
484 bool RequiresHighResToDraw() const { return requires_high_res_to_draw_; } | 483 bool RequiresHighResToDraw() const { return requires_high_res_to_draw_; } |
485 | 484 |
486 protected: | 485 protected: |
487 LayerTreeHostImpl( | 486 LayerTreeHostImpl( |
488 const LayerTreeSettings& settings, | 487 const LayerTreeSettings& settings, |
489 LayerTreeHostImplClient* client, | 488 LayerTreeHostImplClient* client, |
490 Proxy* proxy, | 489 Proxy* proxy, |
491 RenderingStatsInstrumentation* rendering_stats_instrumentation, | 490 RenderingStatsInstrumentation* rendering_stats_instrumentation, |
492 SharedBitmapManager* shared_bitmap_manager, | 491 SharedBitmapManager* shared_bitmap_manager, |
493 GpuMemoryBufferManager* gpu_memory_buffer_manager, | 492 gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager, |
494 int id); | 493 int id); |
495 | 494 |
496 void UpdateViewportContainerSizes(); | 495 void UpdateViewportContainerSizes(); |
497 | 496 |
498 // Virtual for testing. | 497 // Virtual for testing. |
499 virtual void AnimateLayers(base::TimeTicks monotonic_time); | 498 virtual void AnimateLayers(base::TimeTicks monotonic_time); |
500 | 499 |
501 // Virtual for testing. | 500 // Virtual for testing. |
502 virtual base::TimeDelta LowFrequencyAnimationInterval() const; | 501 virtual base::TimeDelta LowFrequencyAnimationInterval() const; |
503 | 502 |
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
694 | 693 |
695 RenderingStatsInstrumentation* rendering_stats_instrumentation_; | 694 RenderingStatsInstrumentation* rendering_stats_instrumentation_; |
696 MicroBenchmarkControllerImpl micro_benchmark_controller_; | 695 MicroBenchmarkControllerImpl micro_benchmark_controller_; |
697 | 696 |
698 bool need_to_update_visible_tiles_before_draw_; | 697 bool need_to_update_visible_tiles_before_draw_; |
699 | 698 |
700 // Optional callback to notify of new tree activations. | 699 // Optional callback to notify of new tree activations. |
701 base::Closure tree_activation_callback_; | 700 base::Closure tree_activation_callback_; |
702 | 701 |
703 SharedBitmapManager* shared_bitmap_manager_; | 702 SharedBitmapManager* shared_bitmap_manager_; |
704 GpuMemoryBufferManager* gpu_memory_buffer_manager_; | 703 gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager_; |
705 int id_; | 704 int id_; |
706 | 705 |
707 std::set<SwapPromiseMonitor*> swap_promise_monitor_; | 706 std::set<SwapPromiseMonitor*> swap_promise_monitor_; |
708 | 707 |
709 std::vector<PictureLayerImpl*> picture_layers_; | 708 std::vector<PictureLayerImpl*> picture_layers_; |
710 std::vector<PictureLayerImpl::Pair> picture_layer_pairs_; | 709 std::vector<PictureLayerImpl::Pair> picture_layer_pairs_; |
711 | 710 |
712 bool requires_high_res_to_draw_; | 711 bool requires_high_res_to_draw_; |
713 | 712 |
714 DISALLOW_COPY_AND_ASSIGN(LayerTreeHostImpl); | 713 DISALLOW_COPY_AND_ASSIGN(LayerTreeHostImpl); |
715 }; | 714 }; |
716 | 715 |
717 } // namespace cc | 716 } // namespace cc |
718 | 717 |
719 #endif // CC_TREES_LAYER_TREE_HOST_IMPL_H_ | 718 #endif // CC_TREES_LAYER_TREE_HOST_IMPL_H_ |
OLD | NEW |