OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CC_DEBUG_RENDERING_STATS_H_ | 5 #ifndef CC_DEBUG_RENDERING_STATS_H_ |
6 #define CC_DEBUG_RENDERING_STATS_H_ | 6 #define CC_DEBUG_RENDERING_STATS_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
11 #include "base/time/time.h" | 11 #include "base/time/time.h" |
12 #include "base/trace_event/trace_event_argument.h" | 12 #include "base/trace_event/trace_event_argument.h" |
13 #include "base/values.h" | 13 #include "base/values.h" |
14 #include "cc/base/cc_export.h" | 14 #include "cc/base/cc_export.h" |
15 #include "cc/debug/traced_value.h" | 15 #include "cc/debug/traced_value.h" |
16 | 16 |
17 namespace cc { | 17 namespace cc { |
18 | 18 |
19 struct CC_EXPORT RenderingStats { | 19 struct CC_EXPORT RenderingStats { |
20 // Stores a sequence of TimeDelta objects. | 20 // Stores a sequence of TimeDelta objects. |
21 class CC_EXPORT TimeDeltaList { | 21 class CC_EXPORT TimeDeltaList { |
22 public: | 22 public: |
23 TimeDeltaList(); | 23 TimeDeltaList(); |
24 ~TimeDeltaList(); | 24 ~TimeDeltaList(); |
25 | 25 |
26 void Append(base::TimeDelta value); | 26 void Append(base::TimeDelta value); |
27 void AddToTracedValue(const char* name, | 27 void AddToTracedValue(const char* name, |
28 base::debug::TracedValue* list_value) const; | 28 base::trace_event::TracedValue* list_value) const; |
29 | 29 |
30 void Add(const TimeDeltaList& other); | 30 void Add(const TimeDeltaList& other); |
31 | 31 |
32 base::TimeDelta GetLastTimeDelta() const; | 32 base::TimeDelta GetLastTimeDelta() const; |
33 | 33 |
34 private: | 34 private: |
35 std::vector<base::TimeDelta> values; | 35 std::vector<base::TimeDelta> values; |
36 }; | 36 }; |
37 | 37 |
38 RenderingStats(); | 38 RenderingStats(); |
39 ~RenderingStats(); | 39 ~RenderingStats(); |
40 | 40 |
41 // Note: when adding new members, please remember to update Add in | 41 // Note: when adding new members, please remember to update Add in |
42 // rendering_stats.cc. | 42 // rendering_stats.cc. |
43 | 43 |
44 int64 frame_count; | 44 int64 frame_count; |
45 int64 visible_content_area; | 45 int64 visible_content_area; |
46 int64 approximated_visible_content_area; | 46 int64 approximated_visible_content_area; |
47 | 47 |
48 TimeDeltaList draw_duration; | 48 TimeDeltaList draw_duration; |
49 TimeDeltaList draw_duration_estimate; | 49 TimeDeltaList draw_duration_estimate; |
50 TimeDeltaList begin_main_frame_to_commit_duration; | 50 TimeDeltaList begin_main_frame_to_commit_duration; |
51 TimeDeltaList begin_main_frame_to_commit_duration_estimate; | 51 TimeDeltaList begin_main_frame_to_commit_duration_estimate; |
52 TimeDeltaList commit_to_activate_duration; | 52 TimeDeltaList commit_to_activate_duration; |
53 TimeDeltaList commit_to_activate_duration_estimate; | 53 TimeDeltaList commit_to_activate_duration_estimate; |
54 | 54 |
55 scoped_refptr<base::debug::ConvertableToTraceFormat> AsTraceableData() const; | 55 scoped_refptr<base::trace_event::ConvertableToTraceFormat> AsTraceableData() |
| 56 const; |
56 void Add(const RenderingStats& other); | 57 void Add(const RenderingStats& other); |
57 }; | 58 }; |
58 | 59 |
59 } // namespace cc | 60 } // namespace cc |
60 | 61 |
61 #endif // CC_DEBUG_RENDERING_STATS_H_ | 62 #endif // CC_DEBUG_RENDERING_STATS_H_ |
OLD | NEW |