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 #ifndef CHROME_BROWSER_CHROME_BROWSER_MAIN_H_ | 5 #ifndef CHROME_BROWSER_CHROME_BROWSER_MAIN_H_ |
6 #define CHROME_BROWSER_CHROME_BROWSER_MAIN_H_ | 6 #define CHROME_BROWSER_CHROME_BROWSER_MAIN_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "base/gtest_prod_util.h" | 9 #include "base/gtest_prod_util.h" |
10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
11 #include "base/memory/scoped_vector.h" | 11 #include "base/memory/scoped_vector.h" |
12 #include "base/metrics/field_trial.h" | 12 #include "base/metrics/field_trial.h" |
13 #include "base/tracked_objects.h" | 13 #include "base/tracked_objects.h" |
14 #include "chrome/browser/first_run/first_run.h" | 14 #include "chrome/browser/first_run/first_run.h" |
15 #include "chrome/browser/process_singleton.h" | 15 #include "chrome/browser/process_singleton.h" |
16 #include "chrome/browser/task_profiler/auto_tracking.h" | 16 #include "chrome/browser/task_profiler/auto_tracking.h" |
17 #include "chrome/browser/ui/startup/startup_browser_creator.h" | 17 #include "chrome/browser/ui/startup/startup_browser_creator.h" |
18 #include "content/public/browser/browser_main_parts.h" | 18 #include "content/public/browser/browser_main_parts.h" |
19 #include "content/public/browser/browser_thread.h" | 19 #include "content/public/browser/browser_thread.h" |
20 | 20 |
21 class BrowserProcessImpl; | 21 class BrowserProcessImpl; |
22 class ChromeBrowserMainExtraParts; | 22 class ChromeBrowserMainExtraParts; |
23 class FieldTrialSynchronizer; | 23 class FieldTrialSynchronizer; |
24 class HistogramSynchronizer; | |
25 class MetricsService; | 24 class MetricsService; |
26 class PrefService; | 25 class PrefService; |
27 class Profile; | 26 class Profile; |
28 class StartupBrowserCreator; | 27 class StartupBrowserCreator; |
29 class StartupTimeBomb; | 28 class StartupTimeBomb; |
30 class ShutdownWatcherHelper; | 29 class ShutdownWatcherHelper; |
31 class TranslateManager; | 30 class TranslateManager; |
32 | 31 |
33 namespace chrome_browser { | 32 namespace chrome_browser { |
34 // For use by ShowMissingLocaleMessageBox. | 33 // For use by ShowMissingLocaleMessageBox. |
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
188 scoped_ptr<base::FieldTrialList> field_trial_list_; | 187 scoped_ptr<base::FieldTrialList> field_trial_list_; |
189 | 188 |
190 // Vector of additional ChromeBrowserMainExtraParts. | 189 // Vector of additional ChromeBrowserMainExtraParts. |
191 // Parts are deleted in the inverse order they are added. | 190 // Parts are deleted in the inverse order they are added. |
192 std::vector<ChromeBrowserMainExtraParts*> chrome_extra_parts_; | 191 std::vector<ChromeBrowserMainExtraParts*> chrome_extra_parts_; |
193 | 192 |
194 // Members initialized after / released before main_message_loop_ ------------ | 193 // Members initialized after / released before main_message_loop_ ------------ |
195 | 194 |
196 scoped_ptr<StartupBrowserCreator> browser_creator_; | 195 scoped_ptr<StartupBrowserCreator> browser_creator_; |
197 scoped_ptr<BrowserProcessImpl> browser_process_; | 196 scoped_ptr<BrowserProcessImpl> browser_process_; |
198 scoped_refptr<HistogramSynchronizer> histogram_synchronizer_; | |
199 scoped_refptr<chrome_browser_metrics::TrackingSynchronizer> | 197 scoped_refptr<chrome_browser_metrics::TrackingSynchronizer> |
200 tracking_synchronizer_; | 198 tracking_synchronizer_; |
201 scoped_ptr<ProcessSingleton> process_singleton_; | 199 scoped_ptr<ProcessSingleton> process_singleton_; |
202 scoped_ptr<first_run::MasterPrefs> master_prefs_; | 200 scoped_ptr<first_run::MasterPrefs> master_prefs_; |
203 bool record_search_engine_; | 201 bool record_search_engine_; |
204 TranslateManager* translate_manager_; | 202 TranslateManager* translate_manager_; |
205 Profile* profile_; | 203 Profile* profile_; |
206 bool run_message_loop_; | 204 bool run_message_loop_; |
207 ProcessSingleton::NotifyResult notify_result_; | 205 ProcessSingleton::NotifyResult notify_result_; |
208 | 206 |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
244 // Records the time from our process' startup to the present time in | 242 // Records the time from our process' startup to the present time in |
245 // the Startup.BrowserMessageLoopStartTime UMA histogram. | 243 // the Startup.BrowserMessageLoopStartTime UMA histogram. |
246 void RecordBrowserStartupTime(); | 244 void RecordBrowserStartupTime(); |
247 | 245 |
248 // Records a time value to an UMA histogram in the context of the | 246 // Records a time value to an UMA histogram in the context of the |
249 // PreReadExperiment field-trial. This also reports to the appropriate | 247 // PreReadExperiment field-trial. This also reports to the appropriate |
250 // sub-histogram (_PreRead(Enabled|Disabled)). | 248 // sub-histogram (_PreRead(Enabled|Disabled)). |
251 void RecordPreReadExperimentTime(const char* name, base::TimeDelta time); | 249 void RecordPreReadExperimentTime(const char* name, base::TimeDelta time); |
252 | 250 |
253 #endif // CHROME_BROWSER_CHROME_BROWSER_MAIN_H_ | 251 #endif // CHROME_BROWSER_CHROME_BROWSER_MAIN_H_ |
OLD | NEW |