diff options
author | hclam@chromium.org <hclam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-10-07 21:47:58 +0000 |
---|---|---|
committer | hclam@chromium.org <hclam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-10-07 21:47:58 +0000 |
commit | 885ff1dfd127346d8fd1bfa239c7375773aabe48 (patch) | |
tree | 6004858fef22e08c5c1b4570231e01e1f0290a43 /chrome/renderer/gpu_channel_host.h | |
parent | 3bb08606c22e357896714764731a7af21e04377d (diff) | |
download | chromium_src-885ff1dfd127346d8fd1bfa239c7375773aabe48.zip chromium_src-885ff1dfd127346d8fd1bfa239c7375773aabe48.tar.gz chromium_src-885ff1dfd127346d8fd1bfa239c7375773aabe48.tar.bz2 |
GpuVideoDecoderHost runs on IO thread instead of Render thread
Move GpuVideoDecoderHost to IO thread and change GpuVideoServiceHost to
be a MessageFilter.
BUG=53714
TEST=Tree is green. Will pending on WebKit changes to make this work.
Review URL: http://codereview.chromium.org/3462015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61854 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/gpu_channel_host.h')
-rw-r--r-- | chrome/renderer/gpu_channel_host.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/chrome/renderer/gpu_channel_host.h b/chrome/renderer/gpu_channel_host.h index c139219..e6eecea 100644 --- a/chrome/renderer/gpu_channel_host.h +++ b/chrome/renderer/gpu_channel_host.h @@ -20,6 +20,7 @@ #include "ipc/ipc_sync_channel.h" class CommandBufferProxy; +class GpuVideoServiceHost; // Encapsulates an IPC channel between the renderer and one plugin process. // On the plugin side there's a corresponding GpuChannel. @@ -72,6 +73,10 @@ class GpuChannelHost : public IPC::Channel::Listener, // Destroy a command buffer created by this channel. void DestroyCommandBuffer(CommandBufferProxy* command_buffer); + GpuVideoServiceHost* gpu_video_service_host() { + return gpu_video_service_host_.get(); + } + private: State state_; @@ -88,6 +93,10 @@ class GpuChannelHost : public IPC::Channel::Listener, typedef base::hash_map<int, IPC::Channel::Listener*> ProxyMap; ProxyMap proxies_; + // This is a MessageFilter to intercept IPC messages and distribute them + // to the corresponding GpuVideoDecoderHost. + scoped_ptr<GpuVideoServiceHost> gpu_video_service_host_; + DISALLOW_COPY_AND_ASSIGN(GpuChannelHost); }; |