Index: chrome/browser/metrics/perf_provider_chromeos.h |
diff --git a/chrome/browser/metrics/perf_provider_chromeos.h b/chrome/browser/metrics/perf_provider_chromeos.h |
index 8f1ac2f830a0bef4d3fdb0055923a91ae695cc94..3f53ad922b21e47236e2d61b3ea08cefe5d156d5 100644 |
--- a/chrome/browser/metrics/perf_provider_chromeos.h |
+++ b/chrome/browser/metrics/perf_provider_chromeos.h |
@@ -85,6 +85,17 @@ class PerfProvider : public base::NonThreadSafe, |
// reschedules it to be collected again. |
void DoPeriodicCollection(); |
+ // Collects perf data after a resume. |sleep_duration| is the duration the |
+ // system was suspended before resuming. |time_after_resume_ms| is how long |
+ // ago the system resumed. |
+ void CollectPerfDataAfterResume(const base::TimeDelta& sleep_duration, |
+ const base::TimeDelta& time_after_resume); |
+ |
+ // Collects perf data after a session restore. |time_after_restore| is how |
+ // long ago the session restore started. |
+ void CollectPerfDataAfterSessionRestore( |
+ const base::TimeDelta& time_after_restore); |
+ |
// Parses a perf data protobuf from the |data| passed in only if the |
// |incognito_observer| indicates that no incognito window had been opened |
// during the profile collection period. |
@@ -97,8 +108,14 @@ class PerfProvider : public base::NonThreadSafe, |
// Vector of SampledProfile protobufs containing perf profiles. |
std::vector<SampledProfile> cached_perf_data_; |
- // For scheduling collection of perf data. |
- base::OneShotTimer<PerfProvider> timer_; |
+ // Timers for scheduling collection of perf data. |
+ |
+ // Timer for interval-based collection. |
+ base::OneShotTimer<PerfProvider> interval_timer_; |
+ // Timer for collection on resume from suspend. |
+ base::OneShotTimer<PerfProvider> resume_timer_; |
+ // Timer for collection on restore session. |
+ base::OneShotTimer<PerfProvider> restore_session_timer_; |
// For detecting when changes to the login state. |
LoginObserver login_observer_; |