OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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_WORKER_HOST_WORKER_PROCESS_HOST_H_ | 5 #ifndef CONTENT_BROWSER_WORKER_HOST_WORKER_PROCESS_HOST_H_ |
6 #define CONTENT_BROWSER_WORKER_HOST_WORKER_PROCESS_HOST_H_ | 6 #define CONTENT_BROWSER_WORKER_HOST_WORKER_PROCESS_HOST_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <list> | 9 #include <list> |
10 #include <utility> | 10 #include <utility> |
11 | 11 |
12 #include "base/basictypes.h" | 12 #include "base/basictypes.h" |
13 #include "base/file_path.h" | 13 #include "base/file_path.h" |
14 #include "base/memory/scoped_ptr.h" | 14 #include "base/memory/scoped_ptr.h" |
15 #include "content/common/content_export.h" | 15 #include "content/common/content_export.h" |
16 #include "content/browser/worker_host/worker_document_set.h" | 16 #include "content/browser/worker_host/worker_document_set.h" |
17 #include "content/public/browser/browser_child_process_host_delegate.h" | 17 #include "content/public/browser/browser_child_process_host_delegate.h" |
18 #include "content/public/browser/browser_child_process_host_iterator.h" | 18 #include "content/public/browser/browser_child_process_host_iterator.h" |
19 #include "googleurl/src/gurl.h" | 19 #include "googleurl/src/gurl.h" |
20 #include "ipc/ipc_message.h" | 20 #include "ipc/ipc_message.h" |
21 | 21 |
22 class BrowserChildProcessHost; | 22 class BrowserChildProcessHostImpl; |
23 | 23 |
24 namespace content { | 24 namespace content { |
25 class ResourceContext; | 25 class ResourceContext; |
26 class WorkerServiceImpl; | 26 class WorkerServiceImpl; |
27 } // namespace content | 27 } // namespace content |
28 | 28 |
29 // The WorkerProcessHost is the interface that represents the browser side of | 29 // The WorkerProcessHost is the interface that represents the browser side of |
30 // the browser <-> worker communication channel. There will be one | 30 // the browser <-> worker communication channel. There will be one |
31 // WorkerProcessHost per worker process. Currently each worker runs in its own | 31 // WorkerProcessHost per worker process. Currently each worker runs in its own |
32 // process, but that may change. However, we do assume (by storing a | 32 // process, but that may change. However, we do assume (by storing a |
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
187 | 187 |
188 Instances instances_; | 188 Instances instances_; |
189 | 189 |
190 const content::ResourceContext* const resource_context_; | 190 const content::ResourceContext* const resource_context_; |
191 | 191 |
192 // A reference to the filter associated with this worker process. We need to | 192 // A reference to the filter associated with this worker process. We need to |
193 // keep this around since we'll use it when forward messages to the worker | 193 // keep this around since we'll use it when forward messages to the worker |
194 // process. | 194 // process. |
195 scoped_refptr<WorkerMessageFilter> worker_message_filter_; | 195 scoped_refptr<WorkerMessageFilter> worker_message_filter_; |
196 | 196 |
197 scoped_ptr<BrowserChildProcessHost> process_; | 197 scoped_ptr<BrowserChildProcessHostImpl> process_; |
198 | 198 |
199 DISALLOW_COPY_AND_ASSIGN(WorkerProcessHost); | 199 DISALLOW_COPY_AND_ASSIGN(WorkerProcessHost); |
200 }; | 200 }; |
201 | 201 |
202 class WorkerProcessHostIterator | 202 class WorkerProcessHostIterator |
203 : public content::BrowserChildProcessHostTypeIterator<WorkerProcessHost> { | 203 : public content::BrowserChildProcessHostTypeIterator<WorkerProcessHost> { |
204 public: | 204 public: |
205 WorkerProcessHostIterator() | 205 WorkerProcessHostIterator() |
206 : content::BrowserChildProcessHostTypeIterator<WorkerProcessHost>( | 206 : content::BrowserChildProcessHostTypeIterator<WorkerProcessHost>( |
207 content::PROCESS_TYPE_WORKER) { | 207 content::PROCESS_TYPE_WORKER) { |
208 } | 208 } |
209 }; | 209 }; |
210 | 210 |
211 #endif // CONTENT_BROWSER_WORKER_HOST_WORKER_PROCESS_HOST_H_ | 211 #endif // CONTENT_BROWSER_WORKER_HOST_WORKER_PROCESS_HOST_H_ |
OLD | NEW |