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_H_ | 5 #ifndef CC_TREES_LAYER_TREE_HOST_H_ |
6 #define CC_TREES_LAYER_TREE_HOST_H_ | 6 #define CC_TREES_LAYER_TREE_HOST_H_ |
7 | 7 |
8 #include <limits> | 8 #include <limits> |
| 9 #include <vector> |
9 | 10 |
10 #include "base/basictypes.h" | 11 #include "base/basictypes.h" |
11 #include "base/cancelable_callback.h" | 12 #include "base/cancelable_callback.h" |
12 #include "base/hash_tables.h" | 13 #include "base/hash_tables.h" |
13 #include "base/memory/ref_counted.h" | 14 #include "base/memory/ref_counted.h" |
14 #include "base/memory/scoped_ptr.h" | 15 #include "base/memory/scoped_ptr.h" |
15 #include "base/memory/weak_ptr.h" | 16 #include "base/memory/weak_ptr.h" |
16 #include "base/time.h" | 17 #include "base/time.h" |
17 #include "cc/animation/animation_events.h" | 18 #include "cc/animation/animation_events.h" |
18 #include "cc/base/cc_export.h" | 19 #include "cc/base/cc_export.h" |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
70 bool using_set_visibility; | 71 bool using_set_visibility; |
71 bool using_swap_complete_callback; | 72 bool using_swap_complete_callback; |
72 bool using_gpu_memory_manager; | 73 bool using_gpu_memory_manager; |
73 bool using_egl_image; | 74 bool using_egl_image; |
74 bool allow_partial_texture_updates; | 75 bool allow_partial_texture_updates; |
75 bool using_offscreen_context3d; | 76 bool using_offscreen_context3d; |
76 int max_texture_size; | 77 int max_texture_size; |
77 bool avoid_pow2_textures; | 78 bool avoid_pow2_textures; |
78 }; | 79 }; |
79 | 80 |
80 class CC_EXPORT LayerTreeHost : public RateLimiterClient { | 81 class CC_EXPORT LayerTreeHost : NON_EXPORTED_BASE(public RateLimiterClient) { |
81 public: | 82 public: |
82 static scoped_ptr<LayerTreeHost> Create(LayerTreeHostClient* client, | 83 static scoped_ptr<LayerTreeHost> Create(LayerTreeHostClient* client, |
83 const LayerTreeSettings& settings, | 84 const LayerTreeSettings& settings, |
84 scoped_ptr<Thread> impl_thread); | 85 scoped_ptr<Thread> impl_thread); |
85 virtual ~LayerTreeHost(); | 86 virtual ~LayerTreeHost(); |
86 | 87 |
87 void SetSurfaceReady(); | 88 void SetSurfaceReady(); |
88 | 89 |
89 // Returns true if any LayerTreeHost is alive. | 90 // Returns true if any LayerTreeHost is alive. |
90 static bool AnyLayerTreeHostInstanceExists(); | 91 static bool AnyLayerTreeHostInstanceExists(); |
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
255 ResourceUpdateQueue* quue); | 256 ResourceUpdateQueue* quue); |
256 bool PaintMasksForRenderSurface(Layer* render_surface_layer, | 257 bool PaintMasksForRenderSurface(Layer* render_surface_layer, |
257 ResourceUpdateQueue* queue, | 258 ResourceUpdateQueue* queue, |
258 RenderingStats* stats); | 259 RenderingStats* stats); |
259 | 260 |
260 void UpdateLayers(Layer* root_layer, ResourceUpdateQueue* queue); | 261 void UpdateLayers(Layer* root_layer, ResourceUpdateQueue* queue); |
261 void UpdateHudLayer(); | 262 void UpdateHudLayer(); |
262 void TriggerPrepaint(); | 263 void TriggerPrepaint(); |
263 | 264 |
264 void PrioritizeTextures(const LayerList& render_surface_layer_list, | 265 void PrioritizeTextures(const LayerList& render_surface_layer_list, |
265 OverdrawMetrics* metrics); | 266 OverdrawMetrics* metrics); |
266 void SetPrioritiesForSurfaces(size_t surface_memory_bytes); | 267 void SetPrioritiesForSurfaces(size_t surface_memory_bytes); |
267 void SetPrioritiesForLayers(const LayerList& update_list); | 268 void SetPrioritiesForLayers(const LayerList& update_list); |
268 size_t CalculateMemoryForRenderSurfaces(const LayerList& update_list); | 269 size_t CalculateMemoryForRenderSurfaces(const LayerList& update_list); |
269 | 270 |
270 void AnimateLayers(base::TimeTicks monotonic_time); | 271 void AnimateLayers(base::TimeTicks monotonic_time); |
271 bool AnimateLayersRecursive(Layer* current, base::TimeTicks time); | 272 bool AnimateLayersRecursive(Layer* current, base::TimeTicks time); |
272 void SetAnimationEventsRecursive(const AnimationEventsVector& events, | 273 void SetAnimationEventsRecursive(const AnimationEventsVector& events, |
273 Layer* layer, | 274 Layer* layer, |
274 base::Time wall_clock_time); | 275 base::Time wall_clock_time); |
275 | 276 |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
325 size_t partial_texture_update_requests_; | 326 size_t partial_texture_update_requests_; |
326 | 327 |
327 scoped_ptr<AnimationRegistrar> animation_registrar_; | 328 scoped_ptr<AnimationRegistrar> animation_registrar_; |
328 | 329 |
329 DISALLOW_COPY_AND_ASSIGN(LayerTreeHost); | 330 DISALLOW_COPY_AND_ASSIGN(LayerTreeHost); |
330 }; | 331 }; |
331 | 332 |
332 } // namespace cc | 333 } // namespace cc |
333 | 334 |
334 #endif // CC_TREES_LAYER_TREE_HOST_H_ | 335 #endif // CC_TREES_LAYER_TREE_HOST_H_ |
OLD | NEW |