Chromium Code Reviews| Index: content/public/browser/render_process_host.h |
| diff --git a/content/public/browser/render_process_host.h b/content/public/browser/render_process_host.h |
| index 3aedc59ed4b8dc722dfb483e70cc3d722e03688c..daf754cda2ede73cd04768721a3c31c8b57e20a1 100644 |
| --- a/content/public/browser/render_process_host.h |
| +++ b/content/public/browser/render_process_host.h |
| @@ -26,6 +26,7 @@ class TimeDelta; |
| namespace content { |
| class BrowserContext; |
| class BrowserMessageFilter; |
| +class RenderProcessHostObserver; |
| class RenderWidgetHost; |
| class StoragePartition; |
| @@ -55,6 +56,8 @@ class CONTENT_EXPORT RenderProcessHost : public IPC::Sender, |
| int exit_code; |
| }; |
| + // General functions --------------------------------------------------------- |
| + |
| virtual ~RenderProcessHost() {} |
| // Initialize the new renderer process, returning true on success. This must |
| @@ -73,6 +76,12 @@ class CONTENT_EXPORT RenderProcessHost : public IPC::Sender, |
| virtual void AddRoute(int32 routing_id, IPC::Listener* listener) = 0; |
| virtual void RemoveRoute(int32 routing_id) = 0; |
| + // Add and remove observers for lifecycle events. The order in which |
| + // notifications are sent to observers is undefined. Observers must be sure to |
| + // remove the observer before they go away. |
| + virtual void AddObserver(RenderProcessHostObserver* observer) = 0; |
| + virtual void RemoveObserver(RenderProcessHostObserver* observer) = 0; |
| + |
| // Called to wait for the next UpdateRect message for the specified render |
| // widget. Returns true if successful, and the msg out-param will contain a |
| // copy of the received UpdateRect message. |
| @@ -216,6 +225,9 @@ class CONTENT_EXPORT RenderProcessHost : public IPC::Sender, |
| // modifies the current process' command line. |
| static void SetRunRendererInProcess(bool value); |
| + // This forces a renderer that is running "in process" to shut down. |
| + static void ShutDownInProcessRenderer(); |
|
jam
2013/11/18 19:16:20
nit: since this is only called inside content, put
Avi (use Gerrit)
2013/11/18 19:22:21
Right. I was thinking BrowserMainLoop was in chrom
|
| + |
| // Allows iteration over all the RenderProcessHosts in the browser. Note |
| // that each host may not be active, and therefore may have NULL channels. |
| static iterator AllHostsIterator(); |