Chromium Code Reviews| Index: base/metrics/user_metrics.h |
| diff --git a/base/metrics/user_metrics.h b/base/metrics/user_metrics.h |
| index bcfefb809942e203590dfd9db7672cc56f861c7c..69be8ea4da98e4fe4c874c71fee78e8dd374f229 100644 |
| --- a/base/metrics/user_metrics.h |
| +++ b/base/metrics/user_metrics.h |
| @@ -10,6 +10,7 @@ |
| #include "base/base_export.h" |
| #include "base/callback.h" |
| #include "base/metrics/user_metrics_action.h" |
| +#include "base/single_thread_task_runner.h" |
| namespace base { |
| @@ -17,7 +18,8 @@ namespace base { |
| // the user metrics system. |
| // Record that the user performed an action. |
| -// This method *must* be called from the main thread. |
| +// This function must be called after the task runner has been set with |
| +// SetRecordActionTaskRunner. |
|
Lei Zhang
2016/04/19 17:52:00
nit: SetRecordActionTaskRunner() so it is obvious
beaudoin
2016/04/19 18:36:22
Done.
|
| // |
| // "Action" here means a user-generated event: |
| // good: "Reload", "CloseTab", and "IMEInvoked" |
| @@ -46,15 +48,24 @@ BASE_EXPORT void RecordAction(const UserMetricsAction& action); |
| // when it's a pain to enumerate all possible actions, but if you use this |
| // you need to also update the rules for extracting known actions in |
| // tools/metrics/actions/extract_actions.py. |
| +// This function must be called after the task runner has been set with |
| +// SetRecordActionTaskRunner. |
| BASE_EXPORT void RecordComputedAction(const std::string& action); |
| // Called with the action string. |
| -typedef base::Callback<void(const std::string&)> ActionCallback; |
| +typedef Callback<void(const std::string&)> ActionCallback; |
| // Add/remove action callbacks (see above). |
| +// These functions must be called after the task runner has been set with |
| +// SetRecordActionTaskRunner. |
| BASE_EXPORT void AddActionCallback(const ActionCallback& callback); |
| BASE_EXPORT void RemoveActionCallback(const ActionCallback& callback); |
| +// Set the task runner on which to record actions. The task runner can only be |
| +// set once, unless ResetRecordActionTaskRunnerForTesting is called. |
| +BASE_EXPORT void SetRecordActionTaskRunner( |
| + scoped_refptr<SingleThreadTaskRunner> task_runner); |
| + |
| } // namespace base |
| #endif // BASE_METRICS_USER_METRICS_H_ |