OLD | NEW |
| (Empty) |
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 | |
3 // found in the LICENSE file. | |
4 | |
5 #include "cc/debug/layer_tree_debug_state.h" | |
6 | |
7 #include "base/logging.h" | |
8 | |
9 namespace cc { | |
10 | |
11 // IMPORTANT: new fields must be added to Equal() and Unite() | |
12 LayerTreeDebugState::LayerTreeDebugState() | |
13 : show_fps_counter(false), | |
14 show_debug_borders(false), | |
15 continuous_painting(false), | |
16 show_paint_rects(false), | |
17 show_property_changed_rects(false), | |
18 show_surface_damage_rects(false), | |
19 show_screen_space_rects(false), | |
20 show_replica_screen_space_rects(false), | |
21 show_touch_event_handler_rects(false), | |
22 show_wheel_event_handler_rects(false), | |
23 show_scroll_event_handler_rects(false), | |
24 show_non_fast_scrollable_rects(false), | |
25 show_layer_animation_bounds_rects(false), | |
26 slow_down_raster_scale_factor(0), | |
27 rasterize_only_visible_content(false), | |
28 show_picture_borders(false), | |
29 record_rendering_stats_(false) {} | |
30 | |
31 LayerTreeDebugState::~LayerTreeDebugState() {} | |
32 | |
33 void LayerTreeDebugState::SetRecordRenderingStats(bool enabled) { | |
34 record_rendering_stats_ = enabled; | |
35 } | |
36 | |
37 bool LayerTreeDebugState::RecordRenderingStats() const { | |
38 return record_rendering_stats_ || continuous_painting; | |
39 } | |
40 | |
41 bool LayerTreeDebugState::ShowHudInfo() const { | |
42 return show_fps_counter || continuous_painting || | |
43 ShowHudRects(); | |
44 } | |
45 | |
46 bool LayerTreeDebugState::ShowHudRects() const { | |
47 return show_paint_rects || show_property_changed_rects || | |
48 show_surface_damage_rects || show_screen_space_rects || | |
49 show_replica_screen_space_rects || show_touch_event_handler_rects || | |
50 show_wheel_event_handler_rects || show_scroll_event_handler_rects || | |
51 show_non_fast_scrollable_rects || show_layer_animation_bounds_rects; | |
52 } | |
53 | |
54 bool LayerTreeDebugState::ShowMemoryStats() const { | |
55 return show_fps_counter || continuous_painting; | |
56 } | |
57 | |
58 bool LayerTreeDebugState::Equal(const LayerTreeDebugState& a, | |
59 const LayerTreeDebugState& b) { | |
60 return ( | |
61 a.show_fps_counter == b.show_fps_counter && | |
62 a.show_debug_borders == b.show_debug_borders && | |
63 a.continuous_painting == b.continuous_painting && | |
64 a.show_paint_rects == b.show_paint_rects && | |
65 a.show_property_changed_rects == b.show_property_changed_rects && | |
66 a.show_surface_damage_rects == b.show_surface_damage_rects && | |
67 a.show_screen_space_rects == b.show_screen_space_rects && | |
68 a.show_replica_screen_space_rects == b.show_replica_screen_space_rects && | |
69 a.show_touch_event_handler_rects == b.show_touch_event_handler_rects && | |
70 a.show_wheel_event_handler_rects == b.show_wheel_event_handler_rects && | |
71 a.show_scroll_event_handler_rects == b.show_scroll_event_handler_rects && | |
72 a.show_non_fast_scrollable_rects == b.show_non_fast_scrollable_rects && | |
73 a.show_layer_animation_bounds_rects == | |
74 b.show_layer_animation_bounds_rects && | |
75 a.slow_down_raster_scale_factor == b.slow_down_raster_scale_factor && | |
76 a.rasterize_only_visible_content == b.rasterize_only_visible_content && | |
77 a.show_picture_borders == b.show_picture_borders && | |
78 a.record_rendering_stats_ == b.record_rendering_stats_); | |
79 } | |
80 | |
81 LayerTreeDebugState LayerTreeDebugState::Unite(const LayerTreeDebugState& a, | |
82 const LayerTreeDebugState& b) { | |
83 LayerTreeDebugState r(a); | |
84 | |
85 r.show_fps_counter |= b.show_fps_counter; | |
86 r.show_debug_borders |= b.show_debug_borders; | |
87 r.continuous_painting |= b.continuous_painting; | |
88 | |
89 r.show_paint_rects |= b.show_paint_rects; | |
90 r.show_property_changed_rects |= b.show_property_changed_rects; | |
91 r.show_surface_damage_rects |= b.show_surface_damage_rects; | |
92 r.show_screen_space_rects |= b.show_screen_space_rects; | |
93 r.show_replica_screen_space_rects |= b.show_replica_screen_space_rects; | |
94 r.show_touch_event_handler_rects |= b.show_touch_event_handler_rects; | |
95 r.show_wheel_event_handler_rects |= b.show_wheel_event_handler_rects; | |
96 r.show_scroll_event_handler_rects |= b.show_scroll_event_handler_rects; | |
97 r.show_non_fast_scrollable_rects |= b.show_non_fast_scrollable_rects; | |
98 r.show_layer_animation_bounds_rects |= b.show_layer_animation_bounds_rects; | |
99 | |
100 if (b.slow_down_raster_scale_factor) | |
101 r.slow_down_raster_scale_factor = b.slow_down_raster_scale_factor; | |
102 r.rasterize_only_visible_content |= b.rasterize_only_visible_content; | |
103 r.show_picture_borders |= b.show_picture_borders; | |
104 | |
105 r.record_rendering_stats_ |= b.record_rendering_stats_; | |
106 | |
107 return r; | |
108 } | |
109 | |
110 } // namespace cc | |
OLD | NEW |