| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2009 Apple Inc. All rights reserved. | 2 * Copyright (C) 2009 Apple Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
| 8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
| 9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 24 matching lines...) Expand all Loading... |
| 35 | 35 |
| 36 class WebGLRenderingContext final : public WebGLRenderingContextBase { | 36 class WebGLRenderingContext final : public WebGLRenderingContextBase { |
| 37 DEFINE_WRAPPERTYPEINFO(); | 37 DEFINE_WRAPPERTYPEINFO(); |
| 38 public: | 38 public: |
| 39 class Factory : public CanvasRenderingContextFactory { | 39 class Factory : public CanvasRenderingContextFactory { |
| 40 WTF_MAKE_NONCOPYABLE(Factory); | 40 WTF_MAKE_NONCOPYABLE(Factory); |
| 41 public: | 41 public: |
| 42 Factory() {} | 42 Factory() {} |
| 43 ~Factory() override {} | 43 ~Factory() override {} |
| 44 | 44 |
| 45 PassOwnPtrWillBeRawPtr<CanvasRenderingContext> create(HTMLCanvasElement*
, const CanvasContextCreationAttributes&, Document&) override; | 45 RawPtr<CanvasRenderingContext> create(HTMLCanvasElement*, const CanvasCo
ntextCreationAttributes&, Document&) override; |
| 46 CanvasRenderingContext::ContextType getContextType() const override { re
turn CanvasRenderingContext::ContextWebgl; } | 46 CanvasRenderingContext::ContextType getContextType() const override { re
turn CanvasRenderingContext::ContextWebgl; } |
| 47 void onError(HTMLCanvasElement*, const String& error) override; | 47 void onError(HTMLCanvasElement*, const String& error) override; |
| 48 }; | 48 }; |
| 49 | 49 |
| 50 ~WebGLRenderingContext() override; | 50 ~WebGLRenderingContext() override; |
| 51 | 51 |
| 52 CanvasRenderingContext::ContextType getContextType() const override { return
CanvasRenderingContext::ContextWebgl; } | 52 CanvasRenderingContext::ContextType getContextType() const override { return
CanvasRenderingContext::ContextWebgl; } |
| 53 unsigned version() const override { return 1; } | 53 unsigned version() const override { return 1; } |
| 54 String contextName() const override { return "WebGLRenderingContext"; } | 54 String contextName() const override { return "WebGLRenderingContext"; } |
| 55 void registerContextExtensions() override; | 55 void registerContextExtensions() override; |
| 56 void setCanvasGetContextResult(RenderingContext&) final; | 56 void setCanvasGetContextResult(RenderingContext&) final; |
| 57 | 57 |
| 58 EAGERLY_FINALIZE(); | 58 EAGERLY_FINALIZE(); |
| 59 DECLARE_VIRTUAL_TRACE(); | 59 DECLARE_VIRTUAL_TRACE(); |
| 60 | 60 |
| 61 private: | 61 private: |
| 62 WebGLRenderingContext(HTMLCanvasElement*, PassOwnPtr<WebGraphicsContext3DPro
vider>, const WebGLContextAttributes&); | 62 WebGLRenderingContext(HTMLCanvasElement*, PassOwnPtr<WebGraphicsContext3DPro
vider>, const WebGLContextAttributes&); |
| 63 | 63 |
| 64 // Enabled extension objects. | 64 // Enabled extension objects. |
| 65 PersistentWillBeMember<ANGLEInstancedArrays> m_angleInstancedArrays; | 65 Member<ANGLEInstancedArrays> m_angleInstancedArrays; |
| 66 PersistentWillBeMember<CHROMIUMSubscribeUniform> m_chromiumSubscribeUniform; | 66 Member<CHROMIUMSubscribeUniform> m_chromiumSubscribeUniform; |
| 67 PersistentWillBeMember<EXTBlendMinMax> m_extBlendMinMax; | 67 Member<EXTBlendMinMax> m_extBlendMinMax; |
| 68 PersistentWillBeMember<EXTDisjointTimerQuery> m_extDisjointTimerQuery; | 68 Member<EXTDisjointTimerQuery> m_extDisjointTimerQuery; |
| 69 PersistentWillBeMember<EXTFragDepth> m_extFragDepth; | 69 Member<EXTFragDepth> m_extFragDepth; |
| 70 PersistentWillBeMember<EXTShaderTextureLOD> m_extShaderTextureLOD; | 70 Member<EXTShaderTextureLOD> m_extShaderTextureLOD; |
| 71 PersistentWillBeMember<EXTsRGB> m_extsRGB; | 71 Member<EXTsRGB> m_extsRGB; |
| 72 PersistentWillBeMember<EXTTextureFilterAnisotropic> m_extTextureFilterAnisot
ropic; | 72 Member<EXTTextureFilterAnisotropic> m_extTextureFilterAnisotropic; |
| 73 PersistentWillBeMember<OESTextureFloat> m_oesTextureFloat; | 73 Member<OESTextureFloat> m_oesTextureFloat; |
| 74 PersistentWillBeMember<OESTextureFloatLinear> m_oesTextureFloatLinear; | 74 Member<OESTextureFloatLinear> m_oesTextureFloatLinear; |
| 75 PersistentWillBeMember<OESTextureHalfFloat> m_oesTextureHalfFloat; | 75 Member<OESTextureHalfFloat> m_oesTextureHalfFloat; |
| 76 PersistentWillBeMember<OESTextureHalfFloatLinear> m_oesTextureHalfFloatLinea
r; | 76 Member<OESTextureHalfFloatLinear> m_oesTextureHalfFloatLinear; |
| 77 PersistentWillBeMember<OESStandardDerivatives> m_oesStandardDerivatives; | 77 Member<OESStandardDerivatives> m_oesStandardDerivatives; |
| 78 PersistentWillBeMember<OESVertexArrayObject> m_oesVertexArrayObject; | 78 Member<OESVertexArrayObject> m_oesVertexArrayObject; |
| 79 PersistentWillBeMember<OESElementIndexUint> m_oesElementIndexUint; | 79 Member<OESElementIndexUint> m_oesElementIndexUint; |
| 80 PersistentWillBeMember<WebGLLoseContext> m_webglLoseContext; | 80 Member<WebGLLoseContext> m_webglLoseContext; |
| 81 PersistentWillBeMember<WebGLDebugRendererInfo> m_webglDebugRendererInfo; | 81 Member<WebGLDebugRendererInfo> m_webglDebugRendererInfo; |
| 82 PersistentWillBeMember<WebGLDebugShaders> m_webglDebugShaders; | 82 Member<WebGLDebugShaders> m_webglDebugShaders; |
| 83 PersistentWillBeMember<WebGLDrawBuffers> m_webglDrawBuffers; | 83 Member<WebGLDrawBuffers> m_webglDrawBuffers; |
| 84 PersistentWillBeMember<WebGLCompressedTextureASTC> m_webglCompressedTextureA
STC; | 84 Member<WebGLCompressedTextureASTC> m_webglCompressedTextureASTC; |
| 85 PersistentWillBeMember<WebGLCompressedTextureATC> m_webglCompressedTextureAT
C; | 85 Member<WebGLCompressedTextureATC> m_webglCompressedTextureATC; |
| 86 PersistentWillBeMember<WebGLCompressedTextureETC1> m_webglCompressedTextureE
TC1; | 86 Member<WebGLCompressedTextureETC1> m_webglCompressedTextureETC1; |
| 87 PersistentWillBeMember<WebGLCompressedTexturePVRTC> m_webglCompressedTexture
PVRTC; | 87 Member<WebGLCompressedTexturePVRTC> m_webglCompressedTexturePVRTC; |
| 88 PersistentWillBeMember<WebGLCompressedTextureS3TC> m_webglCompressedTextureS
3TC; | 88 Member<WebGLCompressedTextureS3TC> m_webglCompressedTextureS3TC; |
| 89 PersistentWillBeMember<WebGLDepthTexture> m_webglDepthTexture; | 89 Member<WebGLDepthTexture> m_webglDepthTexture; |
| 90 }; | 90 }; |
| 91 | 91 |
| 92 DEFINE_TYPE_CASTS(WebGLRenderingContext, CanvasRenderingContext, context, | 92 DEFINE_TYPE_CASTS(WebGLRenderingContext, CanvasRenderingContext, context, |
| 93 context->is3d() && WebGLRenderingContextBase::getWebGLVersion(context) == 1, | 93 context->is3d() && WebGLRenderingContextBase::getWebGLVersion(context) == 1, |
| 94 context.is3d() && WebGLRenderingContextBase::getWebGLVersion(&context) == 1)
; | 94 context.is3d() && WebGLRenderingContextBase::getWebGLVersion(&context) == 1)
; |
| 95 | 95 |
| 96 } // namespace blink | 96 } // namespace blink |
| 97 | 97 |
| 98 #endif // WebGLRenderingContext_h | 98 #endif // WebGLRenderingContext_h |
| OLD | NEW |