OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 // This file defines a service that collects information about the user | 5 // This file defines a service that collects information about the user |
6 // experience in order to help improve future versions of the app. | 6 // experience in order to help improve future versions of the app. |
7 | 7 |
8 #ifndef CHROME_FRAME_METRICS_SERVICE_H_ | 8 #ifndef CHROME_FRAME_METRICS_SERVICE_H_ |
9 #define CHROME_FRAME_METRICS_SERVICE_H_ | 9 #define CHROME_FRAME_METRICS_SERVICE_H_ |
10 | 10 |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
43 MetricsService(); | 43 MetricsService(); |
44 virtual ~MetricsService(); | 44 virtual ~MetricsService(); |
45 // The MetricsService has a lifecycle that is stored as a state. | 45 // The MetricsService has a lifecycle that is stored as a state. |
46 // See metrics_service.cc for description of this lifecycle. | 46 // See metrics_service.cc for description of this lifecycle. |
47 enum State { | 47 enum State { |
48 INITIALIZED, // Constructor was called. | 48 INITIALIZED, // Constructor was called. |
49 ACTIVE, // Accumalating log data | 49 ACTIVE, // Accumalating log data |
50 STOPPED, // Service has stopped | 50 STOPPED, // Service has stopped |
51 }; | 51 }; |
52 | 52 |
53 // Maintain a map of histogram names to the sample stats we've sent. | |
54 typedef std::map<std::string, base::Histogram::SampleSet> LoggedSampleMap; | |
55 | |
56 // Sets and gets whether metrics recording is active. | 53 // Sets and gets whether metrics recording is active. |
57 // SetRecording(false) also forces a persistent save of logging state (if | 54 // SetRecording(false) also forces a persistent save of logging state (if |
58 // anything has been recorded, or transmitted). | 55 // anything has been recorded, or transmitted). |
59 void SetRecording(bool enabled); | 56 void SetRecording(bool enabled); |
60 | 57 |
61 // Enable/disable transmission of accumulated logs and crash reports (dumps). | 58 // Enable/disable transmission of accumulated logs and crash reports (dumps). |
62 // Return value "true" indicates setting was definitively set as requested). | 59 // Return value "true" indicates setting was definitively set as requested). |
63 // Return value of "false" indicates that the enable state is effectively | 60 // Return value of "false" indicates that the enable state is effectively |
64 // stuck in the other logical setting. | 61 // stuck in the other logical setting. |
65 // Google Update maintains the authoritative preference in the registry, so | 62 // Google Update maintains the authoritative preference in the registry, so |
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
145 // The transmission timer id returned by SetTimer | 142 // The transmission timer id returned by SetTimer |
146 int transmission_timer_id_; | 143 int transmission_timer_id_; |
147 | 144 |
148 // Used to serialize the Start and Stop operations on the metrics service. | 145 // Used to serialize the Start and Stop operations on the metrics service. |
149 static base::Lock metrics_service_lock_; | 146 static base::Lock metrics_service_lock_; |
150 | 147 |
151 DISALLOW_COPY_AND_ASSIGN(MetricsService); | 148 DISALLOW_COPY_AND_ASSIGN(MetricsService); |
152 }; | 149 }; |
153 | 150 |
154 #endif // CHROME_FRAME_METRICS_SERVICE_H_ | 151 #endif // CHROME_FRAME_METRICS_SERVICE_H_ |
OLD | NEW |