summaryrefslogtreecommitdiffstats
path: root/WebCore/platform/graphics/gpu/SharedGraphicsContext3D.h
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/platform/graphics/gpu/SharedGraphicsContext3D.h')
-rw-r--r--WebCore/platform/graphics/gpu/SharedGraphicsContext3D.h9
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;