| Index: webkit/glue/plugins/pepper_plugin_module.h
|
| ===================================================================
|
| --- webkit/glue/plugins/pepper_plugin_module.h (revision 65099)
|
| +++ webkit/glue/plugins/pepper_plugin_module.h (working copy)
|
| @@ -16,10 +16,25 @@
|
| #include "ppapi/c/ppb.h"
|
|
|
| class FilePath;
|
| +class MessageLoop;
|
| typedef struct NPObject NPObject;
|
| struct PPB_Core;
|
| typedef void* NPIdentifier;
|
|
|
| +namespace base {
|
| +class WaitableEvent;
|
| +}
|
| +
|
| +namespace pp {
|
| +namespace proxy {
|
| +class HostDispatcher;
|
| +} // proxy
|
| +} // pp
|
| +
|
| +namespace IPC {
|
| +struct ChannelHandle;
|
| +}
|
| +
|
| namespace pepper {
|
|
|
| class ObjectVar;
|
| @@ -56,6 +71,10 @@
|
| static scoped_refptr<PluginModule> CreateModule(const FilePath& path);
|
| static scoped_refptr<PluginModule> CreateInternalModule(
|
| EntryPoints entry_points);
|
| + static scoped_refptr<PluginModule> CreateOutOfProcessModule(
|
| + MessageLoop* ipc_message_loop,
|
| + const IPC::ChannelHandle& handle,
|
| + base::WaitableEvent* shutdown_event);
|
|
|
| static const PPB_Core* GetCore();
|
|
|
| @@ -101,9 +120,16 @@
|
|
|
| bool InitFromEntryPoints(const EntryPoints& entry_points);
|
| bool InitFromFile(const FilePath& path);
|
| + bool InitForOutOfProcess(MessageLoop* ipc_message_loop,
|
| + const IPC::ChannelHandle& handle,
|
| + base::WaitableEvent* shutdown_event);
|
| static bool LoadEntryPoints(const base::NativeLibrary& library,
|
| EntryPoints* entry_points);
|
|
|
| + // Dispatcher for out-of-process plugins. This will be null when the plugin
|
| + // is being run in-process.
|
| + scoped_ptr<pp::proxy::HostDispatcher> dispatcher_;
|
| +
|
| PP_Module pp_module_;
|
|
|
| bool initialized_;
|
| @@ -115,7 +141,7 @@
|
| base::NativeLibrary library_;
|
|
|
| // Contains pointers to the entry points of the actual plugin
|
| - // implementation.
|
| + // implementation. These will be NULL for out-of-process plugins.
|
| EntryPoints entry_points_;
|
|
|
| // The name of the module.
|
|
|