OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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_BROWSER_PROCESS_PLATFORM_PART_CHROMEOS_H_ | 5 #ifndef CHROME_BROWSER_BROWSER_PROCESS_PLATFORM_PART_CHROMEOS_H_ |
6 #define CHROME_BROWSER_BROWSER_PROCESS_PLATFORM_PART_CHROMEOS_H_ | 6 #define CHROME_BROWSER_BROWSER_PROCESS_PLATFORM_PART_CHROMEOS_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/threading/non_thread_safe.h" | 10 #include "base/threading/non_thread_safe.h" |
11 | 11 #include "chrome/browser/browser_process_platform_part_base.h" |
12 class CommandLine; | |
13 | 12 |
14 namespace chromeos { | 13 namespace chromeos { |
15 class OomPriorityManager; | 14 class OomPriorityManager; |
16 class ProfileHelper; | 15 class ProfileHelper; |
17 } | 16 } |
18 | 17 |
19 class BrowserProcessPlatformPart : public base::NonThreadSafe { | 18 class BrowserProcessPlatformPart : public BrowserProcessPlatformPartBase, |
| 19 public base::NonThreadSafe { |
20 public: | 20 public: |
21 BrowserProcessPlatformPart(); | 21 BrowserProcessPlatformPart(); |
22 virtual ~BrowserProcessPlatformPart(); | 22 virtual ~BrowserProcessPlatformPart(); |
23 | 23 |
24 // Called after creating the process singleton or when another chrome | |
25 // rendez-vous with this one. | |
26 virtual void PlatformSpecificCommandLineProcessing( | |
27 const CommandLine& command_line); | |
28 | |
29 // Called from BrowserProcessImpl::StartTearDown(). | |
30 virtual void StartTearDown(); | |
31 | |
32 // Returns the out-of-memory priority manager. | 24 // Returns the out-of-memory priority manager. |
33 virtual chromeos::OomPriorityManager* oom_priority_manager(); | 25 virtual chromeos::OomPriorityManager* oom_priority_manager(); |
34 | 26 |
35 // Returns the ProfileHelper instance that is used to identify | 27 // Returns the ProfileHelper instance that is used to identify |
36 // users and their profiles in Chrome OS multi user session. | 28 // users and their profiles in Chrome OS multi user session. |
37 virtual chromeos::ProfileHelper* profile_helper(); | 29 virtual chromeos::ProfileHelper* profile_helper(); |
38 | 30 |
| 31 // Overridden from BrowserProcessPlatformPartBase: |
| 32 virtual void StartTearDown() OVERRIDE; |
| 33 |
39 protected: | 34 protected: |
40 virtual void CreateProfileHelper(); | 35 virtual void CreateProfileHelper(); |
41 | 36 |
42 bool created_profile_helper_; | 37 bool created_profile_helper_; |
43 scoped_ptr<chromeos::ProfileHelper> profile_helper_; | 38 scoped_ptr<chromeos::ProfileHelper> profile_helper_; |
44 | 39 |
45 private: | 40 private: |
46 scoped_ptr<chromeos::OomPriorityManager> oom_priority_manager_; | 41 scoped_ptr<chromeos::OomPriorityManager> oom_priority_manager_; |
47 | 42 |
48 DISALLOW_COPY_AND_ASSIGN(BrowserProcessPlatformPart); | 43 DISALLOW_COPY_AND_ASSIGN(BrowserProcessPlatformPart); |
49 }; | 44 }; |
50 | 45 |
51 #endif // CHROME_BROWSER_BROWSER_PROCESS_PLATFORM_PART_CHROMEOS_H_ | 46 #endif // CHROME_BROWSER_BROWSER_PROCESS_PLATFORM_PART_CHROMEOS_H_ |
OLD | NEW |