Index: content/public/renderer/renderer_ppapi_host.h |
=================================================================== |
--- content/public/renderer/renderer_ppapi_host.h (revision 162270) |
+++ content/public/renderer/renderer_ppapi_host.h (working copy) |
@@ -5,9 +5,18 @@ |
#ifndef CONTENT_PUBLIC_RENDERER_RENDERER_PPAPI_HOST_H_ |
#define CONTENT_PUBLIC_RENDERER_RENDERER_PPAPI_HOST_H_ |
+#include "base/memory/ref_counted.h" |
+#include "content/common/content_export.h" |
#include "ppapi/c/pp_instance.h" |
+class FilePath; |
+ |
+namespace IPC { |
+struct ChannelHandle; |
+} |
+ |
namespace ppapi { |
+class PpapiPermissions; |
namespace host { |
class PpapiHost; |
} |
@@ -17,6 +26,13 @@ |
class WebPluginContainer; |
} |
+namespace webkit { |
+namespace ppapi { |
+class PluginInstance; |
+class PluginModule; |
+} |
+} |
+ |
namespace content { |
class RenderView; |
@@ -27,6 +43,19 @@ |
// There will be one of these objects in the renderer per plugin module. |
class RendererPpapiHost { |
public: |
+ // Creates a host and sets up an out-of-process proxy for an external plugin |
+ // module. |file_path| should identify the module. It is only used to report |
+ // failures to the renderer. |
+ // Returns a host if the external module is proxied successfully, otherwise |
+ // returns NULL. |
+ CONTENT_EXPORT static RendererPpapiHost* CreateExternalPluginModule( |
+ scoped_refptr<webkit::ppapi::PluginModule> plugin_module, |
+ webkit::ppapi::PluginInstance* plugin_instance, |
+ const FilePath& file_path, |
+ ppapi::PpapiPermissions permissions, |
+ const IPC::ChannelHandle& channel_handle, |
+ int plugin_child_id); |
+ |
// Returns the PpapiHost object. |
virtual ppapi::host::PpapiHost* GetPpapiHost() = 0; |