Index: cc/debug/latency_info.h |
diff --git a/cc/debug/latency_info.h b/cc/debug/latency_info.h |
index 1e75db8f93b8c051d24bc761baf3f39873867915..99cd5104672089f6dabb03d96e1c8e64af1d6b07 100644 |
--- a/cc/debug/latency_info.h |
+++ b/cc/debug/latency_info.h |
@@ -5,23 +5,36 @@ |
#ifndef CC_DEBUG_LATENCY_INFO_H_ |
#define CC_DEBUG_LATENCY_INFO_H_ |
+#include <map> |
+#include <utility> |
+ |
#include "base/time.h" |
+#include "cc/base/cc_export.h" |
namespace cc { |
-struct LatencyInfo { |
- int64 renderer_main_frame_number; |
- int64 renderer_impl_frame_number; |
- int64 browser_main_frame_number; |
- int64 browser_impl_frame_number; |
+enum LatencyComponent { |
+ kRendererMainThread, |
+ kRendererImplThread, |
+ kBrowserMainThread, |
+ kBrowserImplThread, |
+ kInputEvent, |
+}; |
+ |
+struct CC_EXPORT LatencyInfo { |
+ // Map a Latency Component (with an int64 id) to a number representing what |
+ // events have happened in that component. |
+ typedef std::map<std::pair<LatencyComponent, int64>, int64> LatencyMap; |
+ |
+ LatencyMap latency_numbers; |
base::TimeTicks swap_timestamp; |
- LatencyInfo() : |
- renderer_main_frame_number(0), |
- renderer_impl_frame_number(0), |
- browser_main_frame_number(0), |
- browser_impl_frame_number(0) {} |
+ LatencyInfo() {} |
+ |
+ void MergeWith(const LatencyInfo& other); |
+ |
+ void AddLatencyNumber(LatencyComponent component, int64 id, int64 number); |
}; |
} // namespace cc |