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_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_ | 5 #ifndef CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_ |
6 #define CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_ | 6 #define CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
11 #include <list> | 11 #include <list> |
12 | 12 |
13 #include "base/id_map.h" | 13 #include "base/id_map.h" |
14 #include "base/memory/ptr_util.h" | 14 #include "base/memory/ptr_util.h" |
15 #include "base/process/kill.h" | 15 #include "base/process/kill.h" |
16 #include "base/process/process_handle.h" | 16 #include "base/process/process_handle.h" |
17 #include "base/supports_user_data.h" | 17 #include "base/supports_user_data.h" |
18 #include "content/common/content_export.h" | 18 #include "content/common/content_export.h" |
19 #include "ipc/ipc_channel_proxy.h" | 19 #include "ipc/ipc_channel_proxy.h" |
20 #include "ipc/ipc_sender.h" | 20 #include "ipc/ipc_sender.h" |
| 21 #include "media/media_features.h" |
21 #include "ui/gfx/native_widget_types.h" | 22 #include "ui/gfx/native_widget_types.h" |
22 | 23 |
23 class GURL; | 24 class GURL; |
24 | 25 |
25 namespace base { | 26 namespace base { |
26 class SharedPersistentMemoryAllocator; | 27 class SharedPersistentMemoryAllocator; |
27 class TimeDelta; | 28 class TimeDelta; |
28 } | 29 } |
29 | 30 |
30 namespace media { | 31 namespace media { |
(...skipping 191 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
222 // depends on when a derived class calls mark_child_process_activity_time(). | 223 // depends on when a derived class calls mark_child_process_activity_time(). |
223 // This is a rough indicator and its resolution should not be better than | 224 // This is a rough indicator and its resolution should not be better than |
224 // 10 milliseconds. | 225 // 10 milliseconds. |
225 virtual base::TimeDelta GetChildProcessIdleTime() const = 0; | 226 virtual base::TimeDelta GetChildProcessIdleTime() const = 0; |
226 | 227 |
227 // Checks that the given renderer can request |url|, if not it sets it to | 228 // Checks that the given renderer can request |url|, if not it sets it to |
228 // about:blank. | 229 // about:blank. |
229 // |empty_allowed| must be set to false for navigations for security reasons. | 230 // |empty_allowed| must be set to false for navigations for security reasons. |
230 virtual void FilterURL(bool empty_allowed, GURL* url) = 0; | 231 virtual void FilterURL(bool empty_allowed, GURL* url) = 0; |
231 | 232 |
232 #if defined(ENABLE_WEBRTC) | 233 #if BUILDFLAG(ENABLE_WEBRTC) |
233 virtual void EnableAudioDebugRecordings(const base::FilePath& file) = 0; | 234 virtual void EnableAudioDebugRecordings(const base::FilePath& file) = 0; |
234 virtual void DisableAudioDebugRecordings() = 0; | 235 virtual void DisableAudioDebugRecordings() = 0; |
235 | 236 |
236 // Starts a WebRTC event log for each peerconnection on the render process. | 237 // Starts a WebRTC event log for each peerconnection on the render process. |
237 // A base file_path can be supplied, which will be extended to include several | 238 // A base file_path can be supplied, which will be extended to include several |
238 // identifiers to ensure uniqueness. If a recording was already in progress, | 239 // identifiers to ensure uniqueness. If a recording was already in progress, |
239 // this call will return false and have no other effect. | 240 // this call will return false and have no other effect. |
240 virtual bool StartWebRTCEventLog(const base::FilePath& file_path) = 0; | 241 virtual bool StartWebRTCEventLog(const base::FilePath& file_path) = 0; |
241 | 242 |
242 // Stops recording a WebRTC event log for each peerconnection on the render | 243 // Stops recording a WebRTC event log for each peerconnection on the render |
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
387 static void SetMaxRendererProcessCount(size_t count); | 388 static void SetMaxRendererProcessCount(size_t count); |
388 | 389 |
389 // Returns the current maximum number of renderer process hosts kept by the | 390 // Returns the current maximum number of renderer process hosts kept by the |
390 // content module. | 391 // content module. |
391 static size_t GetMaxRendererProcessCount(); | 392 static size_t GetMaxRendererProcessCount(); |
392 }; | 393 }; |
393 | 394 |
394 } // namespace content. | 395 } // namespace content. |
395 | 396 |
396 #endif // CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_ | 397 #endif // CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_H_ |
OLD | NEW |