| Index: chrome/ppapi_plugin/ppapi_thread.h
|
| ===================================================================
|
| --- chrome/ppapi_plugin/ppapi_thread.h (revision 0)
|
| +++ chrome/ppapi_plugin/ppapi_thread.h (revision 0)
|
| @@ -0,0 +1,67 @@
|
| +// Copyright (c) 2010 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#ifndef CHROME_PPAPI_PLUGIN_PPAPI_THREAD_H_
|
| +#define CHROME_PPAPI_PLUGIN_PPAPI_THREAD_H_
|
| +#pragma once
|
| +
|
| +#include "base/basictypes.h"
|
| +#include "base/scoped_native_library.h"
|
| +#include "base/scoped_ptr.h"
|
| +#include "build/build_config.h"
|
| +#include "chrome/common/child_thread.h"
|
| +
|
| +class FilePath;
|
| +
|
| +namespace IPC {
|
| +class ChannelHandle;
|
| +}
|
| +
|
| +namespace pp {
|
| +namespace proxy {
|
| +class PluginDispatcher;
|
| +}
|
| +}
|
| +
|
| +class PpapiThread : public ChildThread {
|
| + public:
|
| + PpapiThread();
|
| + ~PpapiThread();
|
| +
|
| + private:
|
| + // ChildThread overrides.
|
| + virtual void OnMessageReceived(const IPC::Message& msg);
|
| +
|
| + // Message handlers.
|
| + void OnLoadPlugin(const FilePath& path, int renderer_id);
|
| +
|
| + bool LoadPluginLib(const FilePath& path);
|
| +
|
| + // Sets up the channel to the given renderer. On success, returns true and
|
| + // fills the given ChannelHandle with the information from the new channel.
|
| + bool SetupRendererChannel(int renderer_id,
|
| + IPC::ChannelHandle* handle);
|
| +
|
| +#if defined(OS_POSIX)
|
| + // Close the plugin process' copy of the renderer's side of the plugin
|
| + // channel. This can be called after the renderer is known to have its own
|
| + // copy of renderer_fd_.
|
| + void CloseRendererFD();
|
| +#endif
|
| +
|
| + base::ScopedNativeLibrary library_;
|
| +
|
| + scoped_ptr<pp::proxy::PluginDispatcher> dispatcher_;
|
| +
|
| +#if defined(OS_POSIX)
|
| + // FD for the renderer end of the socket. It is closed when the IPC layer
|
| + // indicates that the channel is connected, proving that the renderer has
|
| + // access to its side of the socket.
|
| + int renderer_fd_;
|
| +#endif
|
| +
|
| + DISALLOW_COPY_AND_ASSIGN(PpapiThread);
|
| +};
|
| +
|
| +#endif // CHROME_PPAPI_PLUGIN_PPAPI_THREAD_H_
|
|
|
| Property changes on: chrome/ppapi_plugin/ppapi_thread.h
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|