Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(97)

Unified Diff: content/renderer/render_thread_impl.h

Issue 12212100: Provide shared context to Platform API in renderer. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebaseforreals Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/renderer/gpu/render_widget_compositor.cc ('k') | content/renderer/render_thread_impl.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/render_thread_impl.h
diff --git a/content/renderer/render_thread_impl.h b/content/renderer/render_thread_impl.h
index c9cf70875dc1b5672eeeacb38d9a0c9e3af8bef4..9f88a45b8a12f008a96b2fae4bc03fea699abb1f 100644
--- a/content/renderer/render_thread_impl.h
+++ b/content/renderer/render_thread_impl.h
@@ -22,10 +22,12 @@
#include "ipc/ipc_channel_proxy.h"
#include "ui/gfx/native_widget_types.h"
+class GrContext;
class SkBitmap;
struct ViewMsg_New_Params;
namespace WebKit {
+class WebGraphicsContext3D;
class WebMediaStreamCenter;
class WebMediaStreamCenterClient;
}
@@ -41,6 +43,10 @@ class ScopedCOMInitializer;
#endif
}
+namespace cc {
+class ContextProvider;
+}
+
namespace IPC {
class ForwardingMessageFilter;
}
@@ -53,6 +59,12 @@ namespace v8 {
class Extension;
}
+namespace webkit {
+namespace gpu {
+class GrContextForWebGraphicsContext3D;
+}
+}
+
namespace content {
class AppCacheDispatcher;
@@ -216,7 +228,6 @@ class CONTENT_EXPORT RenderThreadImpl : public RenderThread,
}
-
// Creates the embedder implementation of WebMediaStreamCenter.
// The resulting object is owned by WebKit and deleted by WebKit at tear-down.
WebKit::WebMediaStreamCenter* CreateMediaStreamCenter(
@@ -262,6 +273,10 @@ class CONTENT_EXPORT RenderThreadImpl : public RenderThread,
// Handle loss of the shared GpuVDAContext3D context above.
static void OnGpuVDAContextLoss();
+ scoped_refptr<cc::ContextProvider> OffscreenContextProviderForMainThread();
+ scoped_refptr<cc::ContextProvider>
+ OffscreenContextProviderForCompositorThread();
+
// AudioRendererMixerManager instance which manages renderer side mixer
// instances shared based on configured audio parameters. Lazily created on
// first call.
@@ -340,6 +355,8 @@ class CONTENT_EXPORT RenderThreadImpl : public RenderThread,
void IdleHandlerInForegroundTab();
+ scoped_ptr<WebGraphicsContext3DCommandBufferImpl> CreateOffscreenContext3d();
+
// These objects live solely on the render thread.
scoped_ptr<AppCacheDispatcher> appcache_dispatcher_;
scoped_ptr<DomStorageDispatcher> dom_storage_dispatcher_;
@@ -407,6 +424,12 @@ class CONTENT_EXPORT RenderThreadImpl : public RenderThread,
scoped_ptr<CompositorThread> compositor_thread_;
scoped_refptr<IPC::ForwardingMessageFilter> compositor_output_surface_filter_;
+ class RendererContextProviderCommandBuffer;
+ scoped_refptr<RendererContextProviderCommandBuffer>
+ shared_contexts_main_thread_;
+ scoped_refptr<RendererContextProviderCommandBuffer>
+ shared_contexts_compositor_thread_;
+
ObserverList<RenderProcessObserver> observers_;
class GpuVDAContextLostCallback;
« no previous file with comments | « content/renderer/gpu/render_widget_compositor.cc ('k') | content/renderer/render_thread_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698