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 CHROME_BROWSER_METRICS_CHROME_METRICS_SERVICE_CLIENT_H_ | 5 #ifndef CHROME_BROWSER_METRICS_CHROME_METRICS_SERVICE_CLIENT_H_ |
6 #define CHROME_BROWSER_METRICS_CHROME_METRICS_SERVICE_CLIENT_H_ | 6 #define CHROME_BROWSER_METRICS_CHROME_METRICS_SERVICE_CLIENT_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
11 #include "base/callback.h" | 11 #include "base/callback.h" |
12 #include "base/memory/scoped_ptr.h" | 12 #include "base/memory/scoped_ptr.h" |
13 #include "base/memory/weak_ptr.h" | 13 #include "base/memory/weak_ptr.h" |
14 #include "base/threading/thread_checker.h" | 14 #include "base/threading/thread_checker.h" |
15 #include "chrome/browser/metrics/metrics_memory_details.h" | 15 #include "chrome/browser/metrics/metrics_memory_details.h" |
16 #include "chrome/browser/metrics/network_stats_uploader.h" | 16 #include "chrome/browser/metrics/network_stats_uploader.h" |
17 #include "components/metrics/metrics_service_client.h" | 17 #include "components/metrics/metrics_service_client.h" |
18 #include "components/metrics/profiler/tracking_synchronizer_observer.h" | 18 #include "components/metrics/profiler/tracking_synchronizer_observer.h" |
19 #include "content/public/browser/notification_observer.h" | 19 #include "content/public/browser/notification_observer.h" |
20 #include "content/public/browser/notification_registrar.h" | 20 #include "content/public/browser/notification_registrar.h" |
21 | 21 |
| 22 class CallStackProfileMetricsProvider; |
22 class ChromeOSMetricsProvider; | 23 class ChromeOSMetricsProvider; |
23 class GoogleUpdateMetricsProviderWin; | 24 class GoogleUpdateMetricsProviderWin; |
24 class PluginMetricsProvider; | 25 class PluginMetricsProvider; |
25 class PrefRegistrySimple; | 26 class PrefRegistrySimple; |
26 | 27 |
27 #if !defined(OS_CHROMEOS) && !defined(OS_IOS) | 28 #if !defined(OS_CHROMEOS) && !defined(OS_IOS) |
28 class SigninStatusMetricsProvider; | 29 class SigninStatusMetricsProvider; |
29 #endif | 30 #endif |
30 | 31 |
31 namespace base { | 32 namespace base { |
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
157 // MetricsService. Has the same lifetime as |metrics_service_|. | 158 // MetricsService. Has the same lifetime as |metrics_service_|. |
158 PluginMetricsProvider* plugin_metrics_provider_; | 159 PluginMetricsProvider* plugin_metrics_provider_; |
159 #endif | 160 #endif |
160 | 161 |
161 #if defined(OS_WIN) | 162 #if defined(OS_WIN) |
162 // The GoogleUpdateMetricsProviderWin instance that was registered with | 163 // The GoogleUpdateMetricsProviderWin instance that was registered with |
163 // MetricsService. Has the same lifetime as |metrics_service_|. | 164 // MetricsService. Has the same lifetime as |metrics_service_|. |
164 GoogleUpdateMetricsProviderWin* google_update_metrics_provider_; | 165 GoogleUpdateMetricsProviderWin* google_update_metrics_provider_; |
165 #endif | 166 #endif |
166 | 167 |
| 168 // The CallStackProfileMetricsProvider instance that was registered with |
| 169 // MetricsService. Has the same lifetime as |metrics_service_|. This is |
| 170 // Windows x64-only until implemented for other platforms. |
| 171 CallStackProfileMetricsProvider* call_stack_profile_metrics_provider_; |
| 172 |
167 // Callback that is called when initial metrics gathering is complete. | 173 // Callback that is called when initial metrics gathering is complete. |
168 base::Closure finished_gathering_initial_metrics_callback_; | 174 base::Closure finished_gathering_initial_metrics_callback_; |
169 | 175 |
170 // The MemoryGrowthTracker instance that tracks memory usage growth in | 176 // The MemoryGrowthTracker instance that tracks memory usage growth in |
171 // MemoryDetails. | 177 // MemoryDetails. |
172 MemoryGrowthTracker memory_growth_tracker_; | 178 MemoryGrowthTracker memory_growth_tracker_; |
173 | 179 |
174 base::WeakPtrFactory<ChromeMetricsServiceClient> weak_ptr_factory_; | 180 base::WeakPtrFactory<ChromeMetricsServiceClient> weak_ptr_factory_; |
175 | 181 |
176 DISALLOW_COPY_AND_ASSIGN(ChromeMetricsServiceClient); | 182 DISALLOW_COPY_AND_ASSIGN(ChromeMetricsServiceClient); |
177 }; | 183 }; |
178 | 184 |
179 #endif // CHROME_BROWSER_METRICS_CHROME_METRICS_SERVICE_CLIENT_H_ | 185 #endif // CHROME_BROWSER_METRICS_CHROME_METRICS_SERVICE_CLIENT_H_ |
OLD | NEW |