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 CONTENT_BROWSER_BROWSER_CHILD_PROCESS_HOST_IMPL_H_ | 5 #ifndef CONTENT_BROWSER_BROWSER_CHILD_PROCESS_HOST_IMPL_H_ |
6 #define CONTENT_BROWSER_BROWSER_CHILD_PROCESS_HOST_IMPL_H_ | 6 #define CONTENT_BROWSER_BROWSER_CHILD_PROCESS_HOST_IMPL_H_ |
7 | 7 |
8 #include <list> | 8 #include <list> |
9 | 9 |
10 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
11 #include "base/memory/scoped_ptr.h" | 11 #include "base/memory/scoped_ptr.h" |
12 #include "base/process/process.h" | 12 #include "base/process/process.h" |
13 #include "base/synchronization/waitable_event_watcher.h" | 13 #include "base/synchronization/waitable_event_watcher.h" |
14 #include "content/browser/child_process_launcher.h" | 14 #include "content/browser/child_process_launcher.h" |
| 15 #include "content/browser/power_monitor_message_broadcaster.h" |
15 #include "content/public/browser/browser_child_process_host.h" | 16 #include "content/public/browser/browser_child_process_host.h" |
16 #include "content/public/browser/child_process_data.h" | 17 #include "content/public/browser/child_process_data.h" |
17 #include "content/public/common/child_process_host_delegate.h" | 18 #include "content/public/common/child_process_host_delegate.h" |
18 | 19 |
19 namespace content { | 20 namespace content { |
20 | 21 |
21 class BrowserChildProcessHostIterator; | 22 class BrowserChildProcessHostIterator; |
22 class BrowserChildProcessObserver; | 23 class BrowserChildProcessObserver; |
23 | 24 |
24 // Plugins/workers and other child processes that live on the IO thread use this | 25 // Plugins/workers and other child processes that live on the IO thread use this |
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
97 void DeleteProcessWaitableEvent(base::WaitableEvent* event); | 98 void DeleteProcessWaitableEvent(base::WaitableEvent* event); |
98 void OnProcessExitedEarly(base::WaitableEvent* event); | 99 void OnProcessExitedEarly(base::WaitableEvent* event); |
99 #endif | 100 #endif |
100 | 101 |
101 ChildProcessData data_; | 102 ChildProcessData data_; |
102 BrowserChildProcessHostDelegate* delegate_; | 103 BrowserChildProcessHostDelegate* delegate_; |
103 scoped_ptr<ChildProcessHost> child_process_host_; | 104 scoped_ptr<ChildProcessHost> child_process_host_; |
104 | 105 |
105 scoped_ptr<ChildProcessLauncher> child_process_; | 106 scoped_ptr<ChildProcessLauncher> child_process_; |
106 | 107 |
| 108 PowerMonitorMessageBroadcaster power_monitor_message_broadcaster_; |
| 109 |
107 #if defined(OS_WIN) | 110 #if defined(OS_WIN) |
108 // Watches to see if the child process exits before the IPC channel has | 111 // Watches to see if the child process exits before the IPC channel has |
109 // been connected. Thereafter, its exit is determined by an error on the | 112 // been connected. Thereafter, its exit is determined by an error on the |
110 // IPC channel. | 113 // IPC channel. |
111 base::WaitableEventWatcher early_exit_watcher_; | 114 base::WaitableEventWatcher early_exit_watcher_; |
112 #endif | 115 #endif |
113 }; | 116 }; |
114 | 117 |
115 } // namespace content | 118 } // namespace content |
116 | 119 |
117 #endif // CONTENT_BROWSER_BROWSER_CHILD_PROCESS_HOST_IMPL_H_ | 120 #endif // CONTENT_BROWSER_BROWSER_CHILD_PROCESS_HOST_IMPL_H_ |
OLD | NEW |