#ifndef WebGLProgram_h
#define WebGLProgram_h
-#include "bindings/v8/ScriptWrappable.h"
+#include "bindings/core/v8/ScriptWrappable.h"
#include "core/html/canvas/WebGLSharedObject.h"
#include "core/html/canvas/WebGLShader.h"
#include "wtf/PassRefPtr.h"
#include "wtf/Vector.h"
-namespace WebCore {
+namespace blink {
class WebGLProgram FINAL : public WebGLSharedObject, public ScriptWrappable {
public:
virtual ~WebGLProgram();
- static PassRefPtr<WebGLProgram> create(WebGLRenderingContextBase*);
+ static PassRefPtrWillBeRawPtr<WebGLProgram> create(WebGLRenderingContextBase*);
unsigned numActiveAttribLocations();
GLint getActiveAttribLocation(GLuint index);
bool attachShader(WebGLShader*);
bool detachShader(WebGLShader*);
+ virtual void trace(Visitor*) OVERRIDE;
+
protected:
- WebGLProgram(WebGLRenderingContextBase*);
+ explicit WebGLProgram(WebGLRenderingContextBase*);
virtual void deleteObjectImpl(blink::WebGraphicsContext3D*, Platform3DObject) OVERRIDE;
// program or not.
unsigned m_linkCount;
- RefPtr<WebGLShader> m_vertexShader;
- RefPtr<WebGLShader> m_fragmentShader;
+ RefPtrWillBeMember<WebGLShader> m_vertexShader;
+ RefPtrWillBeMember<WebGLShader> m_fragmentShader;
bool m_infoValid;
};
-} // namespace WebCore
+} // namespace blink
#endif // WebGLProgram_h