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 <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
(...skipping 472 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
483 | 483 |
484 MicroBenchmarkController micro_benchmark_controller_; | 484 MicroBenchmarkController micro_benchmark_controller_; |
485 | 485 |
486 void OnCommitForSwapPromises(); | 486 void OnCommitForSwapPromises(); |
487 | 487 |
488 void RecordGpuRasterizationHistogram(); | 488 void RecordGpuRasterizationHistogram(); |
489 | 489 |
490 private: | 490 private: |
491 friend class LayerTreeHostSerializationTest; | 491 friend class LayerTreeHostSerializationTest; |
492 | 492 |
493 // Maximum amount of times to re-enable gpu rasterization after it's been | |
494 // turned off due to content. | |
495 enum { kMaxTimesToEnableGpuRasterization = 5 }; | |
enne (OOO)
2016/06/30 01:02:24
Why do you want to have a limit on how many times
ericrk
2016/06/30 18:46:00
+1
| |
496 // The number of commits to waitch before attempting to re-enable gpu | |
enne (OOO)
2016/06/30 01:02:24
<_<
| |
497 // rasterization. | |
498 enum { kFramePeriodToReeanbleGpuRasterization = 10 }; | |
enne (OOO)
2016/06/30 01:02:24
Reeanble?
ericrk
2016/06/30 18:46:00
There's a significant cost to switching I'd imagin
| |
499 | |
493 void InitializeProxy( | 500 void InitializeProxy( |
494 std::unique_ptr<Proxy> proxy, | 501 std::unique_ptr<Proxy> proxy, |
495 std::unique_ptr<BeginFrameSource> external_begin_frame_source); | 502 std::unique_ptr<BeginFrameSource> external_begin_frame_source); |
496 | 503 |
497 bool DoUpdateLayers(Layer* root_layer); | 504 bool DoUpdateLayers(Layer* root_layer); |
498 void UpdateHudLayer(); | 505 void UpdateHudLayer(); |
499 | 506 |
500 bool AnimateLayersRecursive(Layer* current, base::TimeTicks time); | 507 bool AnimateLayersRecursive(Layer* current, base::TimeTicks time); |
501 | 508 |
502 struct UIResourceClientData { | 509 struct UIResourceClientData { |
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
609 LayerIdMap layer_id_map_; | 616 LayerIdMap layer_id_map_; |
610 | 617 |
611 using ElementLayersMap = std::unordered_map<ElementId, Layer*, ElementIdHash>; | 618 using ElementLayersMap = std::unordered_map<ElementId, Layer*, ElementIdHash>; |
612 ElementLayersMap element_layers_map_; | 619 ElementLayersMap element_layers_map_; |
613 | 620 |
614 // Set of layers that need to push properties. | 621 // Set of layers that need to push properties. |
615 std::unordered_set<Layer*> layers_that_should_push_properties_; | 622 std::unordered_set<Layer*> layers_that_should_push_properties_; |
616 | 623 |
617 uint32_t surface_id_namespace_; | 624 uint32_t surface_id_namespace_; |
618 uint32_t next_surface_sequence_; | 625 uint32_t next_surface_sequence_; |
626 int num_times_gpu_rasterization_reenabled_ = 0; | |
619 | 627 |
620 DISALLOW_COPY_AND_ASSIGN(LayerTreeHost); | 628 DISALLOW_COPY_AND_ASSIGN(LayerTreeHost); |
621 }; | 629 }; |
622 | 630 |
623 } // namespace cc | 631 } // namespace cc |
624 | 632 |
625 #endif // CC_TREES_LAYER_TREE_HOST_H_ | 633 #endif // CC_TREES_LAYER_TREE_HOST_H_ |
OLD | NEW |