diff options
Diffstat (limited to 'WebCore/platform/graphics/gpu/SharedGraphicsContext3D.h')
-rw-r--r-- | WebCore/platform/graphics/gpu/SharedGraphicsContext3D.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/WebCore/platform/graphics/gpu/SharedGraphicsContext3D.h b/WebCore/platform/graphics/gpu/SharedGraphicsContext3D.h index 3ba3c52..05008c2 100644 --- a/WebCore/platform/graphics/gpu/SharedGraphicsContext3D.h +++ b/WebCore/platform/graphics/gpu/SharedGraphicsContext3D.h @@ -47,6 +47,7 @@ class AffineTransform; class Color; class GraphicsContext3D; class FloatRect; +class HostWindow; class IntSize; class SolidFillShader; class TexShader; @@ -55,7 +56,7 @@ typedef HashMap<NativeImagePtr, RefPtr<Texture> > TextureHashMap; class SharedGraphicsContext3D : public RefCounted<SharedGraphicsContext3D> { public: - static PassRefPtr<SharedGraphicsContext3D> create(PassOwnPtr<GraphicsContext3D>); + static PassRefPtr<SharedGraphicsContext3D> create(HostWindow*); ~SharedGraphicsContext3D(); // Functions that delegate directly to GraphicsContext3D, with caching @@ -117,14 +118,16 @@ public: // the texture. PassRefPtr<Texture> createTexture(Texture::Format, int width, int height); + GraphicsContext3D* graphicsContext3D() const { return m_context.get(); } + private: - explicit SharedGraphicsContext3D(PassOwnPtr<GraphicsContext3D> context); + SharedGraphicsContext3D(PassRefPtr<GraphicsContext3D>, PassOwnPtr<SolidFillShader>, PassOwnPtr<TexShader>); // Used to implement removeTexturesFor(), see the comment above. static HashSet<SharedGraphicsContext3D*>* allContexts(); void removeTextureFor(NativeImagePtr); - OwnPtr<GraphicsContext3D> m_context; + RefPtr<GraphicsContext3D> m_context; unsigned m_quadVertices; |