Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(142)

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: Fix non-windows compile. Created 7 years, 9 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/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
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
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_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/chrome_browser_main.cc » ('j') | chrome/browser/chrome_browser_main.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698