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_CHILD_CHILD_THREAD_H_ | 5 #ifndef CONTENT_CHILD_CHILD_THREAD_H_ |
6 #define CONTENT_CHILD_CHILD_THREAD_H_ | 6 #define CONTENT_CHILD_CHILD_THREAD_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
(...skipping 25 matching lines...) Expand all Loading... |
36 } // namespace blink | 36 } // namespace blink |
37 | 37 |
38 namespace content { | 38 namespace content { |
39 class ChildDiscardableSharedMemoryManager; | 39 class ChildDiscardableSharedMemoryManager; |
40 class ChildGpuMemoryBufferManager; | 40 class ChildGpuMemoryBufferManager; |
41 class ChildHistogramMessageFilter; | 41 class ChildHistogramMessageFilter; |
42 class ChildResourceMessageFilter; | 42 class ChildResourceMessageFilter; |
43 class ChildSharedBitmapManager; | 43 class ChildSharedBitmapManager; |
44 class FileSystemDispatcher; | 44 class FileSystemDispatcher; |
45 class GeofencingMessageFilter; | 45 class GeofencingMessageFilter; |
| 46 class NotificationDispatcher; |
46 class ServiceWorkerMessageFilter; | 47 class ServiceWorkerMessageFilter; |
47 class QuotaDispatcher; | 48 class QuotaDispatcher; |
48 class QuotaMessageFilter; | 49 class QuotaMessageFilter; |
49 class ResourceDispatcher; | 50 class ResourceDispatcher; |
50 class ThreadSafeSender; | 51 class ThreadSafeSender; |
51 class WebSocketDispatcher; | 52 class WebSocketDispatcher; |
52 struct RequestInfo; | 53 struct RequestInfo; |
53 | 54 |
54 // The main thread of a child process derives from this class. | 55 // The main thread of a child process derives from this class. |
55 class CONTENT_EXPORT ChildThread : public IPC::Listener, public IPC::Sender { | 56 class CONTENT_EXPORT ChildThread : public IPC::Listener, public IPC::Sender { |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
116 } | 117 } |
117 | 118 |
118 FileSystemDispatcher* file_system_dispatcher() const { | 119 FileSystemDispatcher* file_system_dispatcher() const { |
119 return file_system_dispatcher_.get(); | 120 return file_system_dispatcher_.get(); |
120 } | 121 } |
121 | 122 |
122 QuotaDispatcher* quota_dispatcher() const { | 123 QuotaDispatcher* quota_dispatcher() const { |
123 return quota_dispatcher_.get(); | 124 return quota_dispatcher_.get(); |
124 } | 125 } |
125 | 126 |
| 127 NotificationDispatcher* notification_dispatcher() const { |
| 128 return notification_dispatcher_.get(); |
| 129 } |
| 130 |
126 IPC::SyncMessageFilter* sync_message_filter() const { | 131 IPC::SyncMessageFilter* sync_message_filter() const { |
127 return sync_message_filter_.get(); | 132 return sync_message_filter_.get(); |
128 } | 133 } |
129 | 134 |
130 // The getter should only be called on the main thread, however the | 135 // The getter should only be called on the main thread, however the |
131 // IPC::Sender it returns may be safely called on any thread including | 136 // IPC::Sender it returns may be safely called on any thread including |
132 // the main thread. | 137 // the main thread. |
133 ThreadSafeSender* thread_safe_sender() const { | 138 ThreadSafeSender* thread_safe_sender() const { |
134 return thread_safe_sender_.get(); | 139 return thread_safe_sender_.get(); |
135 } | 140 } |
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
236 scoped_ptr<QuotaDispatcher> quota_dispatcher_; | 241 scoped_ptr<QuotaDispatcher> quota_dispatcher_; |
237 | 242 |
238 scoped_refptr<ChildHistogramMessageFilter> histogram_message_filter_; | 243 scoped_refptr<ChildHistogramMessageFilter> histogram_message_filter_; |
239 | 244 |
240 scoped_refptr<ChildResourceMessageFilter> resource_message_filter_; | 245 scoped_refptr<ChildResourceMessageFilter> resource_message_filter_; |
241 | 246 |
242 scoped_refptr<ServiceWorkerMessageFilter> service_worker_message_filter_; | 247 scoped_refptr<ServiceWorkerMessageFilter> service_worker_message_filter_; |
243 | 248 |
244 scoped_refptr<QuotaMessageFilter> quota_message_filter_; | 249 scoped_refptr<QuotaMessageFilter> quota_message_filter_; |
245 | 250 |
| 251 scoped_refptr<NotificationDispatcher> notification_dispatcher_; |
| 252 |
246 scoped_ptr<ChildSharedBitmapManager> shared_bitmap_manager_; | 253 scoped_ptr<ChildSharedBitmapManager> shared_bitmap_manager_; |
247 | 254 |
248 scoped_ptr<ChildGpuMemoryBufferManager> gpu_memory_buffer_manager_; | 255 scoped_ptr<ChildGpuMemoryBufferManager> gpu_memory_buffer_manager_; |
249 | 256 |
250 scoped_ptr<ChildDiscardableSharedMemoryManager> | 257 scoped_ptr<ChildDiscardableSharedMemoryManager> |
251 discardable_shared_memory_manager_; | 258 discardable_shared_memory_manager_; |
252 | 259 |
253 // Observes the trace event system. When tracing is enabled, optionally | 260 // Observes the trace event system. When tracing is enabled, optionally |
254 // starts profiling the tcmalloc heap. | 261 // starts profiling the tcmalloc heap. |
255 scoped_ptr<base::debug::TraceMemoryController> trace_memory_controller_; | 262 scoped_ptr<base::debug::TraceMemoryController> trace_memory_controller_; |
256 | 263 |
257 scoped_ptr<base::PowerMonitor> power_monitor_; | 264 scoped_ptr<base::PowerMonitor> power_monitor_; |
258 | 265 |
259 scoped_refptr<GeofencingMessageFilter> geofencing_message_filter_; | 266 scoped_refptr<GeofencingMessageFilter> geofencing_message_filter_; |
260 | 267 |
261 bool in_browser_process_; | 268 bool in_browser_process_; |
262 | 269 |
263 base::WeakPtrFactory<ChildThread> channel_connected_factory_; | 270 base::WeakPtrFactory<ChildThread> channel_connected_factory_; |
264 | 271 |
265 DISALLOW_COPY_AND_ASSIGN(ChildThread); | 272 DISALLOW_COPY_AND_ASSIGN(ChildThread); |
266 }; | 273 }; |
267 | 274 |
268 } // namespace content | 275 } // namespace content |
269 | 276 |
270 #endif // CONTENT_CHILD_CHILD_THREAD_H_ | 277 #endif // CONTENT_CHILD_CHILD_THREAD_H_ |
OLD | NEW |