OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 COMPONENTS_METRICS_METRICS_PROVIDER_H_ | 5 #ifndef COMPONENTS_METRICS_METRICS_PROVIDER_H_ |
6 #define COMPONENTS_METRICS_METRICS_PROVIDER_H_ | 6 #define COMPONENTS_METRICS_METRICS_PROVIDER_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 | 9 |
10 namespace metrics { | 10 namespace metrics { |
(...skipping 25 matching lines...) Expand all Loading... |
36 // Called once at startup to see whether this provider has stability events | 36 // Called once at startup to see whether this provider has stability events |
37 // to share. Default implementation always returns false. | 37 // to share. Default implementation always returns false. |
38 virtual bool HasStabilityMetrics(); | 38 virtual bool HasStabilityMetrics(); |
39 | 39 |
40 // Provides additional stability metrics. Stability metrics can be provided | 40 // Provides additional stability metrics. Stability metrics can be provided |
41 // directly into |stability_proto| fields or by logging stability histograms | 41 // directly into |stability_proto| fields or by logging stability histograms |
42 // via the UMA_STABILITY_HISTOGRAM_ENUMERATION() macro. | 42 // via the UMA_STABILITY_HISTOGRAM_ENUMERATION() macro. |
43 virtual void ProvideStabilityMetrics( | 43 virtual void ProvideStabilityMetrics( |
44 SystemProfileProto* system_profile_proto); | 44 SystemProfileProto* system_profile_proto); |
45 | 45 |
| 46 // Called to indicate that saved stability prefs should be cleared, e.g. |
| 47 // because they are from an old version and should not be kept. |
| 48 virtual void ClearSavedStabilityMetrics(); |
| 49 |
46 // Provides general metrics that are neither system profile nor stability | 50 // Provides general metrics that are neither system profile nor stability |
47 // metrics. | 51 // metrics. |
48 virtual void ProvideGeneralMetrics( | 52 virtual void ProvideGeneralMetrics( |
49 ChromeUserMetricsExtension* uma_proto); | 53 ChromeUserMetricsExtension* uma_proto); |
50 | 54 |
51 private: | 55 private: |
52 DISALLOW_COPY_AND_ASSIGN(MetricsProvider); | 56 DISALLOW_COPY_AND_ASSIGN(MetricsProvider); |
53 }; | 57 }; |
54 | 58 |
55 } // namespace metrics | 59 } // namespace metrics |
56 | 60 |
57 #endif // COMPONENTS_METRICS_METRICS_PROVIDER_H_ | 61 #endif // COMPONENTS_METRICS_METRICS_PROVIDER_H_ |
OLD | NEW |