Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / cc / debug / layer_tree_debug_state.h
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_