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 <set> | 8 #include <set> |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
11 | 11 |
12 #include "base/basictypes.h" | 12 #include "base/basictypes.h" |
13 #include "base/containers/hash_tables.h" | 13 #include "base/containers/hash_tables.h" |
14 #include "base/memory/scoped_ptr.h" | 14 #include "base/memory/scoped_ptr.h" |
15 #include "base/time/time.h" | 15 #include "base/time/time.h" |
16 #include "cc/animation/animation_events.h" | 16 #include "cc/animation/animation_events.h" |
17 #include "cc/animation/animation_registrar.h" | 17 #include "cc/animation/animation_registrar.h" |
18 #include "cc/animation/scrollbar_animation_controller.h" | 18 #include "cc/animation/scrollbar_animation_controller.h" |
19 #include "cc/base/cc_export.h" | 19 #include "cc/base/cc_export.h" |
20 #include "cc/base/synced_property.h" | 20 #include "cc/base/synced_property.h" |
| 21 #include "cc/debug/frame_timing_tracker.h" |
21 #include "cc/debug/micro_benchmark_controller_impl.h" | 22 #include "cc/debug/micro_benchmark_controller_impl.h" |
22 #include "cc/input/input_handler.h" | 23 #include "cc/input/input_handler.h" |
23 #include "cc/input/layer_scroll_offset_delegate.h" | 24 #include "cc/input/layer_scroll_offset_delegate.h" |
24 #include "cc/input/top_controls_manager_client.h" | 25 #include "cc/input/top_controls_manager_client.h" |
25 #include "cc/layers/layer_lists.h" | 26 #include "cc/layers/layer_lists.h" |
26 #include "cc/layers/render_pass_sink.h" | 27 #include "cc/layers/render_pass_sink.h" |
27 #include "cc/output/begin_frame_args.h" | 28 #include "cc/output/begin_frame_args.h" |
28 #include "cc/output/managed_memory_policy.h" | 29 #include "cc/output/managed_memory_policy.h" |
29 #include "cc/output/output_surface_client.h" | 30 #include "cc/output/output_surface_client.h" |
30 #include "cc/output/renderer.h" | 31 #include "cc/output/renderer.h" |
(...skipping 474 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
505 void SynchronouslyInitializeAllTiles(); | 506 void SynchronouslyInitializeAllTiles(); |
506 | 507 |
507 virtual scoped_ptr<Rasterizer> CreateRasterizer(); | 508 virtual scoped_ptr<Rasterizer> CreateRasterizer(); |
508 virtual void CreateResourceAndTileTaskWorkerPool( | 509 virtual void CreateResourceAndTileTaskWorkerPool( |
509 scoped_ptr<TileTaskWorkerPool>* tile_task_worker_pool, | 510 scoped_ptr<TileTaskWorkerPool>* tile_task_worker_pool, |
510 scoped_ptr<ResourcePool>* resource_pool, | 511 scoped_ptr<ResourcePool>* resource_pool, |
511 scoped_ptr<ResourcePool>* staging_resource_pool); | 512 scoped_ptr<ResourcePool>* staging_resource_pool); |
512 | 513 |
513 bool prepare_tiles_needed() const { return tile_priorities_dirty_; } | 514 bool prepare_tiles_needed() const { return tile_priorities_dirty_; } |
514 | 515 |
| 516 FrameTimingTracker* frame_timing_tracker() { |
| 517 return frame_timing_tracker_.get(); |
| 518 } |
| 519 |
515 protected: | 520 protected: |
516 LayerTreeHostImpl( | 521 LayerTreeHostImpl( |
517 const LayerTreeSettings& settings, | 522 const LayerTreeSettings& settings, |
518 LayerTreeHostImplClient* client, | 523 LayerTreeHostImplClient* client, |
519 Proxy* proxy, | 524 Proxy* proxy, |
520 RenderingStatsInstrumentation* rendering_stats_instrumentation, | 525 RenderingStatsInstrumentation* rendering_stats_instrumentation, |
521 SharedBitmapManager* shared_bitmap_manager, | 526 SharedBitmapManager* shared_bitmap_manager, |
522 gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager, | 527 gpu::GpuMemoryBufferManager* gpu_memory_buffer_manager, |
523 int id); | 528 int id); |
524 | 529 |
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
723 int id_; | 728 int id_; |
724 | 729 |
725 std::set<SwapPromiseMonitor*> swap_promise_monitor_; | 730 std::set<SwapPromiseMonitor*> swap_promise_monitor_; |
726 | 731 |
727 std::vector<PictureLayerImpl*> picture_layers_; | 732 std::vector<PictureLayerImpl*> picture_layers_; |
728 std::vector<PictureLayerImpl::Pair> picture_layer_pairs_; | 733 std::vector<PictureLayerImpl::Pair> picture_layer_pairs_; |
729 | 734 |
730 bool requires_high_res_to_draw_; | 735 bool requires_high_res_to_draw_; |
731 bool required_for_draw_tile_is_top_of_raster_queue_; | 736 bool required_for_draw_tile_is_top_of_raster_queue_; |
732 | 737 |
| 738 scoped_ptr<FrameTimingTracker> frame_timing_tracker_; |
| 739 std::vector<FrameTimingTracker::FrameAndRectIds> current_composite_events_; |
| 740 |
733 DISALLOW_COPY_AND_ASSIGN(LayerTreeHostImpl); | 741 DISALLOW_COPY_AND_ASSIGN(LayerTreeHostImpl); |
734 }; | 742 }; |
735 | 743 |
736 } // namespace cc | 744 } // namespace cc |
737 | 745 |
738 #endif // CC_TREES_LAYER_TREE_HOST_IMPL_H_ | 746 #endif // CC_TREES_LAYER_TREE_HOST_IMPL_H_ |
OLD | NEW |