Chromium Code Reviews
[email protected] (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(247)

Side by Side Diff: chrome/browser/chrome_browser_main.h

Issue 12096114: Extract locking behaviour from ProcessSingleton. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Comment clarification. Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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/memory/scoped_ptr.h" 9 #include "base/memory/scoped_ptr.h"
10 #include "base/metrics/field_trial.h" 10 #include "base/metrics/field_trial.h"
11 #include "base/tracked_objects.h" 11 #include "base/tracked_objects.h"
12 #include "chrome/browser/chrome_browser_field_trials.h" 12 #include "chrome/browser/chrome_browser_field_trials.h"
13 #include "chrome/browser/first_run/first_run.h" 13 #include "chrome/browser/first_run/first_run.h"
14 #include "chrome/browser/process_singleton.h" 14 #include "chrome/browser/process_singleton.h"
15 #include "chrome/browser/process_singleton_modal_dialog_lock.h"
16 #include "chrome/browser/process_singleton_startup_lock.h"
15 #include "chrome/browser/task_profiler/auto_tracking.h" 17 #include "chrome/browser/task_profiler/auto_tracking.h"
16 #include "chrome/browser/ui/startup/startup_browser_creator.h" 18 #include "chrome/browser/ui/startup/startup_browser_creator.h"
17 #include "content/public/browser/browser_main_parts.h" 19 #include "content/public/browser/browser_main_parts.h"
18 20
19 class ActiveTabTracker; 21 class ActiveTabTracker;
20 class BrowserProcessImpl; 22 class BrowserProcessImpl;
21 class ChromeBrowserMainExtraParts; 23 class ChromeBrowserMainExtraParts;
22 class FieldTrialSynchronizer; 24 class FieldTrialSynchronizer;
23 class MetricsService; 25 class MetricsService;
24 class PrefService; 26 class PrefService;
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
160 162
161 scoped_ptr<BrowserProcessImpl> browser_process_; 163 scoped_ptr<BrowserProcessImpl> browser_process_;
162 scoped_refptr<chrome_browser_metrics::TrackingSynchronizer> 164 scoped_refptr<chrome_browser_metrics::TrackingSynchronizer>
163 tracking_synchronizer_; 165 tracking_synchronizer_;
164 #if !defined(OS_ANDROID) 166 #if !defined(OS_ANDROID)
165 // Browser creation happens on the Java side in Android. 167 // Browser creation happens on the Java side in Android.
166 scoped_ptr<StartupBrowserCreator> browser_creator_; 168 scoped_ptr<StartupBrowserCreator> browser_creator_;
167 169
168 // Android doesn't support multiple browser processes, so it doesn't implement 170 // Android doesn't support multiple browser processes, so it doesn't implement
169 // ProcessSingleton. 171 // ProcessSingleton.
172 ProcessSingletonStartupLock startup_lock_;
173 ProcessSingletonModalDialogLock modal_dialog_lock_;
170 scoped_ptr<ProcessSingleton> process_singleton_; 174 scoped_ptr<ProcessSingleton> process_singleton_;
Nico 2013/04/17 21:04:24 I started reviewing this a few times, and always g
171 #endif 175 #endif
172 scoped_ptr<first_run::MasterPrefs> master_prefs_; 176 scoped_ptr<first_run::MasterPrefs> master_prefs_;
173 bool record_search_engine_; 177 bool record_search_engine_;
174 TranslateManager* translate_manager_; 178 TranslateManager* translate_manager_;
175 Profile* profile_; 179 Profile* profile_;
176 bool run_message_loop_; 180 bool run_message_loop_;
177 ProcessSingleton::NotifyResult notify_result_; 181 ProcessSingleton::NotifyResult notify_result_;
178 scoped_ptr<ThreeDAPIObserver> three_d_observer_; 182 scoped_ptr<ThreeDAPIObserver> three_d_observer_;
179 183
180 // Initialized in SetupMetricsAndFieldTrials. 184 // Initialized in SetupMetricsAndFieldTrials.
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
213 // Records the time from our process' startup to the present time in 217 // Records the time from our process' startup to the present time in
214 // the Startup.BrowserMessageLoopStartTime UMA histogram. 218 // the Startup.BrowserMessageLoopStartTime UMA histogram.
215 void RecordBrowserStartupTime(); 219 void RecordBrowserStartupTime();
216 220
217 // Records a time value to an UMA histogram in the context of the 221 // Records a time value to an UMA histogram in the context of the
218 // PreReadExperiment field-trial. This also reports to the appropriate 222 // PreReadExperiment field-trial. This also reports to the appropriate
219 // sub-histogram (_PreRead(Enabled|Disabled)). 223 // sub-histogram (_PreRead(Enabled|Disabled)).
220 void RecordPreReadExperimentTime(const char* name, base::TimeDelta time); 224 void RecordPreReadExperimentTime(const char* name, base::TimeDelta time);
221 225
222 #endif // CHROME_BROWSER_CHROME_BROWSER_MAIN_H_ 226 #endif // CHROME_BROWSER_CHROME_BROWSER_MAIN_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/chrome_browser_main.cc » ('j') | chrome/browser/process_singleton_modal_dialog_lock.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698