| 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 | 
|  11  *    documentation and/or other materials provided with the distribution. |  11  *    documentation and/or other materials provided with the distribution. | 
|  12  * |  12  * | 
|  13  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY |  13  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY | 
|  14  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |  14  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 
|  15  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |  15  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | 
|  16  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR |  16  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR | 
|  17  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, |  17  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, | 
|  18  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, |  18  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, | 
|  19  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |  19  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR | 
|  20  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY |  20  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY | 
|  21  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |  21  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 
|  22  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |  22  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 
|  23  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |  23  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 
|  24  */ |  24  */ | 
|  25  |  25  | 
|  26 #include "modules/webgl/WebGLShader.h" |  26 #include "modules/webgl/WebGLShader.h" | 
|  27  |  27  | 
 |  28 #include "gpu/command_buffer/client/gles2_interface.h" | 
|  28 #include "modules/webgl/WebGLRenderingContextBase.h" |  29 #include "modules/webgl/WebGLRenderingContextBase.h" | 
|  29  |  30  | 
|  30 namespace blink { |  31 namespace blink { | 
|  31  |  32  | 
|  32 WebGLShader* WebGLShader::create(WebGLRenderingContextBase* ctx, GLenum type) |  33 WebGLShader* WebGLShader::create(WebGLRenderingContextBase* ctx, GLenum type) | 
|  33 { |  34 { | 
|  34     return new WebGLShader(ctx, type); |  35     return new WebGLShader(ctx, type); | 
|  35 } |  36 } | 
|  36  |  37  | 
|  37 WebGLShader::WebGLShader(WebGLRenderingContextBase* ctx, GLenum type) |  38 WebGLShader::WebGLShader(WebGLRenderingContextBase* ctx, GLenum type) | 
|  38     : WebGLSharedPlatform3DObject(ctx) |  39     : WebGLSharedPlatform3DObject(ctx) | 
|  39     , m_type(type) |  40     , m_type(type) | 
|  40     , m_source("") |  41     , m_source("") | 
|  41 { |  42 { | 
|  42     setObject(ctx->webContext()->createShader(type)); |  43     setObject(ctx->contextGL()->CreateShader(type)); | 
|  43 } |  44 } | 
|  44  |  45  | 
|  45 WebGLShader::~WebGLShader() |  46 WebGLShader::~WebGLShader() | 
|  46 { |  47 { | 
|  47     // See the comment in WebGLObject::detachAndDeleteObject(). |  48     // See the comment in WebGLObject::detachAndDeleteObject(). | 
|  48     detachAndDeleteObject(); |  49     detachAndDeleteObject(); | 
|  49 } |  50 } | 
|  50  |  51  | 
|  51 void WebGLShader::deleteObjectImpl(WebGraphicsContext3D* context3d) |  52 void WebGLShader::deleteObjectImpl(WebGraphicsContext3D* context3d, gpu::gles2::
    GLES2Interface* gl) | 
|  52 { |  53 { | 
|  53     context3d->deleteShader(m_object); |  54     gl->DeleteShader(m_object); | 
|  54     m_object = 0; |  55     m_object = 0; | 
|  55 } |  56 } | 
|  56  |  57  | 
|  57 } // namespace blink |  58 } // namespace blink | 
| OLD | NEW |