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 #ifndef CC_DEBUG_LAYER_TREE_DEBUG_STATE_H_ 6 #define CC_DEBUG_LAYER_TREE_DEBUG_STATE_H_ 7 8 #include "base/basictypes.h" 9 #include "cc/base/cc_export.h" 10 11 namespace cc { 12 13 class CC_EXPORT LayerTreeDebugState { 14 public: 15 LayerTreeDebugState(); 16 ~LayerTreeDebugState(); 17 18 bool show_fps_counter; 19 bool show_debug_borders; 20 bool continuous_painting; 21 22 bool show_paint_rects; 23 bool show_property_changed_rects; 24 bool show_surface_damage_rects; 25 bool show_screen_space_rects; 26 bool show_replica_screen_space_rects; 27 bool show_occluding_rects; 28 bool show_non_occluding_rects; 29 bool show_touch_event_handler_rects; 30 bool show_wheel_event_handler_rects; 31 bool show_scroll_event_handler_rects; 32 bool show_non_fast_scrollable_rects; 33 bool show_layer_animation_bounds_rects; 34 35 int slow_down_raster_scale_factor; 36 bool rasterize_only_visible_content; 37 bool show_picture_borders; 38 39 void SetRecordRenderingStats(bool enabled); 40 bool RecordRenderingStats() const; 41 42 bool ShowHudInfo() const; 43 bool ShowHudRects() const; 44 bool ShowMemoryStats() const; 45 46 static bool Equal(const LayerTreeDebugState& a, const LayerTreeDebugState& b); 47 static LayerTreeDebugState Unite(const LayerTreeDebugState& a, 48 const LayerTreeDebugState& b); 49 50 private: 51 bool record_rendering_stats_; 52 }; 53 54 } // namespace cc 55 56 #endif // CC_DEBUG_LAYER_TREE_DEBUG_STATE_H_ 57