| // Copyright 2011 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef CC_DEBUG_LAYER_TREE_DEBUG_STATE_H_ |
| #define CC_DEBUG_LAYER_TREE_DEBUG_STATE_H_ |
| |
| #include "cc/base/cc_export.h" |
| |
| namespace cc { |
| |
| namespace proto { |
| class LayerTreeDebugState; |
| } // namespace proto |
| |
| class CC_EXPORT LayerTreeDebugState { |
| public: |
| LayerTreeDebugState(); |
| LayerTreeDebugState(const LayerTreeDebugState& other); |
| ~LayerTreeDebugState(); |
| |
| bool show_fps_counter; |
| bool show_debug_borders; |
| |
| bool show_paint_rects; |
| bool show_property_changed_rects; |
| bool show_surface_damage_rects; |
| bool show_screen_space_rects; |
| bool show_replica_screen_space_rects; |
| bool show_touch_event_handler_rects; |
| bool show_wheel_event_handler_rects; |
| bool show_scroll_event_handler_rects; |
| bool show_non_fast_scrollable_rects; |
| bool show_layer_animation_bounds_rects; |
| |
| int slow_down_raster_scale_factor; |
| bool rasterize_only_visible_content; |
| bool show_picture_borders; |
| |
| void SetRecordRenderingStats(bool enabled); |
| bool RecordRenderingStats() const; |
| |
| bool ShowHudInfo() const; |
| bool ShowHudRects() const; |
| bool ShowMemoryStats() const; |
| |
| void ToProtobuf(proto::LayerTreeDebugState* proto) const; |
| void FromProtobuf(const proto::LayerTreeDebugState& proto); |
| |
| static bool Equal(const LayerTreeDebugState& a, const LayerTreeDebugState& b); |
| static LayerTreeDebugState Unite(const LayerTreeDebugState& a, |
| const LayerTreeDebugState& b); |
| |
| private: |
| bool record_rendering_stats_; |
| }; |
| |
| } // namespace cc |
| |
| #endif // CC_DEBUG_LAYER_TREE_DEBUG_STATE_H_ |