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/chrome_browser_field_trials.h" | 14 #include "chrome/browser/chrome_browser_field_trials.h" |
15 #include "chrome/browser/first_run/first_run.h" | 15 #include "chrome/browser/first_run/first_run.h" |
16 #include "chrome/browser/process_singleton.h" | 16 #include "chrome/browser/process_singleton.h" |
| 17 #include "chrome/browser/process_singleton_modal_dialog_lock.h" |
| 18 #include "chrome/browser/process_singleton_startup_lock.h" |
17 #include "chrome/browser/task_profiler/auto_tracking.h" | 19 #include "chrome/browser/task_profiler/auto_tracking.h" |
18 #include "chrome/browser/ui/startup/startup_browser_creator.h" | 20 #include "chrome/browser/ui/startup/startup_browser_creator.h" |
19 #include "content/public/browser/browser_main_parts.h" | 21 #include "content/public/browser/browser_main_parts.h" |
20 | 22 |
21 class ActiveTabTracker; | 23 class ActiveTabTracker; |
22 class BrowserProcessImpl; | 24 class BrowserProcessImpl; |
23 class ChromeBrowserMainExtraParts; | 25 class ChromeBrowserMainExtraParts; |
24 class FieldTrialSynchronizer; | 26 class FieldTrialSynchronizer; |
25 class MetricsService; | 27 class MetricsService; |
26 class PrefService; | 28 class PrefService; |
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
162 | 164 |
163 scoped_ptr<BrowserProcessImpl> browser_process_; | 165 scoped_ptr<BrowserProcessImpl> browser_process_; |
164 scoped_refptr<chrome_browser_metrics::TrackingSynchronizer> | 166 scoped_refptr<chrome_browser_metrics::TrackingSynchronizer> |
165 tracking_synchronizer_; | 167 tracking_synchronizer_; |
166 #if !defined(OS_ANDROID) | 168 #if !defined(OS_ANDROID) |
167 // Browser creation happens on the Java side in Android. | 169 // Browser creation happens on the Java side in Android. |
168 scoped_ptr<StartupBrowserCreator> browser_creator_; | 170 scoped_ptr<StartupBrowserCreator> browser_creator_; |
169 | 171 |
170 // Android doesn't support multiple browser processes, so it doesn't implement | 172 // Android doesn't support multiple browser processes, so it doesn't implement |
171 // ProcessSingleton. | 173 // ProcessSingleton. |
| 174 ProcessSingletonStartupLock startup_lock_; |
| 175 ProcessSingletonModalDialogLock modal_dialog_lock_; |
172 scoped_ptr<ProcessSingleton> process_singleton_; | 176 scoped_ptr<ProcessSingleton> process_singleton_; |
173 #endif | 177 #endif |
174 scoped_ptr<first_run::MasterPrefs> master_prefs_; | 178 scoped_ptr<first_run::MasterPrefs> master_prefs_; |
175 bool record_search_engine_; | 179 bool record_search_engine_; |
176 TranslateManager* translate_manager_; | 180 TranslateManager* translate_manager_; |
177 Profile* profile_; | 181 Profile* profile_; |
178 bool run_message_loop_; | 182 bool run_message_loop_; |
179 ProcessSingleton::NotifyResult notify_result_; | 183 ProcessSingleton::NotifyResult notify_result_; |
180 scoped_ptr<ThreeDAPIObserver> three_d_observer_; | 184 scoped_ptr<ThreeDAPIObserver> three_d_observer_; |
181 | 185 |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
220 // Records the time from our process' startup to the present time in | 224 // Records the time from our process' startup to the present time in |
221 // the Startup.BrowserMessageLoopStartTime UMA histogram. | 225 // the Startup.BrowserMessageLoopStartTime UMA histogram. |
222 void RecordBrowserStartupTime(); | 226 void RecordBrowserStartupTime(); |
223 | 227 |
224 // Records a time value to an UMA histogram in the context of the | 228 // Records a time value to an UMA histogram in the context of the |
225 // PreReadExperiment field-trial. This also reports to the appropriate | 229 // PreReadExperiment field-trial. This also reports to the appropriate |
226 // sub-histogram (_PreRead(Enabled|Disabled)). | 230 // sub-histogram (_PreRead(Enabled|Disabled)). |
227 void RecordPreReadExperimentTime(const char* name, base::TimeDelta time); | 231 void RecordPreReadExperimentTime(const char* name, base::TimeDelta time); |
228 | 232 |
229 #endif // CHROME_BROWSER_CHROME_BROWSER_MAIN_H_ | 233 #endif // CHROME_BROWSER_CHROME_BROWSER_MAIN_H_ |
OLD | NEW |