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_COMMON_CHILD_THREAD_H_ | 5 #ifndef CONTENT_COMMON_CHILD_THREAD_H_ |
6 #define CONTENT_COMMON_CHILD_THREAD_H_ | 6 #define CONTENT_COMMON_CHILD_THREAD_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/shared_memory.h" | 10 #include "base/shared_memory.h" |
11 #include "base/tracked_objects.h" | 11 #include "base/tracked_objects.h" |
12 #include "content/common/content_export.h" | 12 #include "content/common/content_export.h" |
13 #include "content/common/message_router.h" | 13 #include "content/common/message_router.h" |
14 #include "ipc/ipc_message.h" // For IPC_MESSAGE_LOG_ENABLED. | 14 #include "ipc/ipc_message.h" // For IPC_MESSAGE_LOG_ENABLED. |
15 #include "webkit/glue/resource_loader_bridge.h" | 15 #include "webkit/glue/resource_loader_bridge.h" |
16 | 16 |
17 class FileSystemDispatcher; | 17 class FileSystemDispatcher; |
18 class MessageLoop; | 18 class MessageLoop; |
19 class QuotaDispatcher; | 19 class QuotaDispatcher; |
20 class SocketStreamDispatcher; | 20 class SocketStreamDispatcher; |
21 | 21 |
22 namespace content { | 22 namespace content { |
| 23 class ChildHistogramMessageFilter; |
23 class ResourceDispatcher; | 24 class ResourceDispatcher; |
24 } | 25 } |
25 | 26 |
26 namespace IPC { | 27 namespace IPC { |
27 class SyncChannel; | 28 class SyncChannel; |
28 class SyncMessageFilter; | 29 class SyncMessageFilter; |
29 } | 30 } |
30 | 31 |
31 namespace WebKit { | 32 namespace WebKit { |
32 class WebFrame; | 33 class WebFrame; |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
74 } | 75 } |
75 | 76 |
76 QuotaDispatcher* quota_dispatcher() const { | 77 QuotaDispatcher* quota_dispatcher() const { |
77 return quota_dispatcher_.get(); | 78 return quota_dispatcher_.get(); |
78 } | 79 } |
79 | 80 |
80 // Safe to call on any thread, as long as it's guaranteed that the thread's | 81 // Safe to call on any thread, as long as it's guaranteed that the thread's |
81 // lifetime is less than the main thread. | 82 // lifetime is less than the main thread. |
82 IPC::SyncMessageFilter* sync_message_filter(); | 83 IPC::SyncMessageFilter* sync_message_filter(); |
83 | 84 |
| 85 content::ChildHistogramMessageFilter* child_histogram_message_filter() const { |
| 86 return histogram_message_filter_.get(); |
| 87 } |
| 88 |
84 MessageLoop* message_loop(); | 89 MessageLoop* message_loop(); |
85 | 90 |
86 // Returns the one child thread. | 91 // Returns the one child thread. |
87 static ChildThread* current(); | 92 static ChildThread* current(); |
88 | 93 |
89 virtual bool IsWebFrameValid(WebKit::WebFrame* frame); | 94 virtual bool IsWebFrameValid(WebKit::WebFrame* frame); |
90 | 95 |
91 protected: | 96 protected: |
92 friend class ChildProcess; | 97 friend class ChildProcess; |
93 | 98 |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
139 // The OnChannelError() callback was invoked - the channel is dead, don't | 144 // The OnChannelError() callback was invoked - the channel is dead, don't |
140 // attempt to communicate. | 145 // attempt to communicate. |
141 bool on_channel_error_called_; | 146 bool on_channel_error_called_; |
142 | 147 |
143 MessageLoop* message_loop_; | 148 MessageLoop* message_loop_; |
144 | 149 |
145 scoped_ptr<FileSystemDispatcher> file_system_dispatcher_; | 150 scoped_ptr<FileSystemDispatcher> file_system_dispatcher_; |
146 | 151 |
147 scoped_ptr<QuotaDispatcher> quota_dispatcher_; | 152 scoped_ptr<QuotaDispatcher> quota_dispatcher_; |
148 | 153 |
| 154 scoped_refptr<content::ChildHistogramMessageFilter> histogram_message_filter_; |
| 155 |
149 DISALLOW_COPY_AND_ASSIGN(ChildThread); | 156 DISALLOW_COPY_AND_ASSIGN(ChildThread); |
150 }; | 157 }; |
151 | 158 |
152 #endif // CONTENT_COMMON_CHILD_THREAD_H_ | 159 #endif // CONTENT_COMMON_CHILD_THREAD_H_ |
OLD | NEW |