| Index: chrome/browser/metrics/metrics_service.h
|
| ===================================================================
|
| --- chrome/browser/metrics/metrics_service.h (revision 271296)
|
| +++ chrome/browser/metrics/metrics_service.h (working copy)
|
| @@ -15,6 +15,7 @@
|
| #include "base/basictypes.h"
|
| #include "base/gtest_prod_util.h"
|
| #include "base/memory/scoped_ptr.h"
|
| +#include "base/memory/scoped_vector.h"
|
| #include "base/memory/weak_ptr.h"
|
| #include "base/metrics/field_trial.h"
|
| #include "base/metrics/user_metrics.h"
|
| @@ -27,6 +28,7 @@
|
| #include "chrome/browser/metrics/tracking_synchronizer_observer.h"
|
| #include "chrome/common/metrics/metrics_service_base.h"
|
| #include "chrome/installer/util/google_update_settings.h"
|
| +#include "components/metrics/metrics_data_provider.h"
|
| #include "content/public/browser/browser_child_process_observer.h"
|
| #include "content/public/browser/notification_observer.h"
|
| #include "content/public/browser/notification_registrar.h"
|
| @@ -282,6 +284,10 @@
|
| // To use this method, SyntheticTrialGroup should friend your class.
|
| void RegisterSyntheticFieldTrial(const SyntheticTrialGroup& trial_group);
|
|
|
| + // Register the specified |provider| to provide additional metrics into the
|
| + // UMA log. Should be called during MetricsService initialization only.
|
| + void RegisterDataProvider(scoped_ptr<metrics::MetricsDataProvider> provider);
|
| +
|
| // Check if this install was cloned or imaged from another machine. If a
|
| // clone is detected, reset the client id and low entropy source. This
|
| // should not be called more than once.
|
| @@ -487,6 +493,9 @@
|
| // low entropy source and whether metrics reporting is enabled. Weak pointer.
|
| metrics::MetricsStateManager* state_manager_;
|
|
|
| + // Registered metrics data providers.
|
| + ScopedVector<metrics::MetricsDataProvider> data_providers_;
|
| +
|
| base::ActionCallback action_callback_;
|
|
|
| content::NotificationRegistrar registrar_;
|
|
|