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_non_fast_scrollable_rects; 32 33 int slow_down_raster_scale_factor; 34 bool rasterize_only_visible_content; 35 bool show_picture_borders; 36 37 void SetRecordRenderingStats(bool enabled); 38 bool RecordRenderingStats() const; 39 40 bool ShowHudInfo() const; 41 bool ShowHudRects() const; 42 bool ShowMemoryStats() const; 43 44 static bool Equal(const LayerTreeDebugState& a, const LayerTreeDebugState& b); 45 static LayerTreeDebugState Unite(const LayerTreeDebugState& a, 46 const LayerTreeDebugState& b); 47 48 private: 49 bool record_rendering_stats_; 50 }; 51 52 } // namespace cc 53 54 #endif // CC_DEBUG_LAYER_TREE_DEBUG_STATE_H_ 55