diff options
author | Jocelyn Turcotte <jocelyn.turcotte@digia.com> | 2013-09-20 15:00:47 +0200 |
---|---|---|
committer | Jocelyn Turcotte <jocelyn.turcotte@digia.com> | 2013-11-06 17:30:55 +0100 |
commit | 56f2c0752454e38177322547b3750a6ff15dab97 (patch) | |
tree | 19f7f66cdc74f91d4bf748efb02b37b78c48265f /chromium/content | |
parent | 63f1510d708ce6e90354c63655fa21bd4906e52e (diff) | |
download | qtwebengine-chromium-56f2c0752454e38177322547b3750a6ff15dab97.tar.gz |
Add accessors for the Qt delegated renderer integration.
This is needed to fetch the MessageLoop, the MailboxManager and the
SyncPointManager of the GPU in-process host.
Change-Id: Ide000254dc8525e00388df8fd182f77405f8451c
Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
Diffstat (limited to 'chromium/content')
-rw-r--r-- | chromium/content/common/gpu/gpu_channel_manager.h | 2 | ||||
-rw-r--r-- | chromium/content/gpu/gpu_child_thread.cc | 6 | ||||
-rw-r--r-- | chromium/content/gpu/gpu_child_thread.h | 6 |
3 files changed, 14 insertions, 0 deletions
diff --git a/chromium/content/common/gpu/gpu_channel_manager.h b/chromium/content/common/gpu/gpu_channel_manager.h index f01a1c50768..e41a5481734 100644 --- a/chromium/content/common/gpu/gpu_channel_manager.h +++ b/chromium/content/common/gpu/gpu_channel_manager.h @@ -89,6 +89,8 @@ class GpuChannelManager : public IPC::Listener, gpu::gles2::ProgramCache* program_cache(); + gpu::gles2::MailboxManager* mailbox_manager() { return mailbox_manager_.get(); } + GpuMemoryManager* gpu_memory_manager() { return &gpu_memory_manager_; } GpuChannel* LookupChannel(int32 client_id); diff --git a/chromium/content/gpu/gpu_child_thread.cc b/chromium/content/gpu/gpu_child_thread.cc index 170b3648b56..a84a9e0a436 100644 --- a/chromium/content/gpu/gpu_child_thread.cc +++ b/chromium/content/gpu/gpu_child_thread.cc @@ -40,6 +40,8 @@ bool GpuProcessLogMessageHandler(int severity, } // namespace +GpuChildThread* GpuChildThread::instance_ = 0; + GpuChildThread::GpuChildThread(GpuWatchdogThread* watchdog_thread, bool dead_on_arrival, const gpu::GPUInfo& gpu_info, @@ -53,6 +55,8 @@ GpuChildThread::GpuChildThread(GpuWatchdogThread* watchdog_thread, target_services_ = NULL; #endif g_thread_safe_sender.Get() = thread_safe_sender(); + + instance_ = this; } GpuChildThread::GpuChildThread(const std::string& channel_id) @@ -71,6 +75,8 @@ GpuChildThread::GpuChildThread(const std::string& channel_id) VLOG(1) << "gfx::GLSurface::InitializeOneOff()"; } g_thread_safe_sender.Get() = thread_safe_sender(); + + instance_ = this; } GpuChildThread::~GpuChildThread() { diff --git a/chromium/content/gpu/gpu_child_thread.h b/chromium/content/gpu/gpu_child_thread.h index ff0c9258cd1..82bb32a67aa 100644 --- a/chromium/content/gpu/gpu_child_thread.h +++ b/chromium/content/gpu/gpu_child_thread.h @@ -56,6 +56,10 @@ class GpuChildThread : public ChildThread { virtual bool Send(IPC::Message* msg) OVERRIDE; virtual bool OnControlMessageReceived(const IPC::Message& msg) OVERRIDE; + GpuChannelManager* ChannelManager() const { return gpu_channel_manager_.get(); } + + static GpuChildThread* instance() { return instance_; } + private: // Message handlers. void OnInitialize(); @@ -94,6 +98,8 @@ class GpuChildThread : public ChildThread { // Whether the GPU thread is running in the browser process. bool in_browser_process_; + static GpuChildThread* instance_; + DISALLOW_COPY_AND_ASSIGN(GpuChildThread); }; |