Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(126)

Side by Side Diff: Source/core/html/canvas/WebGLTexture.h

Issue 365653002: Oilpan: move 2D Canvas and WebGL objects to the heap. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Have Nullable<T>::trace() use TraceIfNeeded<>. Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
35 35
36 class WebGLTexture FINAL : public WebGLSharedObject, public ScriptWrappable { 36 class WebGLTexture FINAL : public WebGLSharedObject, public ScriptWrappable {
37 public: 37 public:
38 enum TextureExtensionFlag { 38 enum TextureExtensionFlag {
39 NoTextureExtensionEnabled = 0, 39 NoTextureExtensionEnabled = 0,
40 TextureFloatLinearExtensionEnabled = 1 << 0, 40 TextureFloatLinearExtensionEnabled = 1 << 0,
41 TextureHalfFloatLinearExtensionEnabled = 1 << 1 41 TextureHalfFloatLinearExtensionEnabled = 1 << 1
42 }; 42 };
43 virtual ~WebGLTexture(); 43 virtual ~WebGLTexture();
44 44
45 static PassRefPtr<WebGLTexture> create(WebGLRenderingContextBase*); 45 static PassRefPtrWillBeRawPtr<WebGLTexture> create(WebGLRenderingContextBase *);
46 46
47 void setTarget(GLenum target, GLint maxLevel); 47 void setTarget(GLenum target, GLint maxLevel);
48 void setParameteri(GLenum pname, GLint param); 48 void setParameteri(GLenum pname, GLint param);
49 void setParameterf(GLenum pname, GLfloat param); 49 void setParameterf(GLenum pname, GLfloat param);
50 50
51 GLenum getTarget() const { return m_target; } 51 GLenum getTarget() const { return m_target; }
52 52
53 int getMinFilter() const { return m_minFilter; } 53 int getMinFilter() const { return m_minFilter; }
54 54
55 void setLevelInfo(GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLenum type); 55 void setLevelInfo(GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLenum type);
(...skipping 13 matching lines...) Expand all
69 69
70 bool isNPOT() const; 70 bool isNPOT() const;
71 // Determine if texture sampling should always return [0, 0, 0, 1] (OpenGL E S 2.0 Sec 3.8.2). 71 // Determine if texture sampling should always return [0, 0, 0, 1] (OpenGL E S 2.0 Sec 3.8.2).
72 bool needToUseBlackTexture(TextureExtensionFlag) const; 72 bool needToUseBlackTexture(TextureExtensionFlag) const;
73 73
74 bool hasEverBeenBound() const { return object() && m_target; } 74 bool hasEverBeenBound() const { return object() && m_target; }
75 75
76 static GLint computeLevelCount(GLsizei width, GLsizei height); 76 static GLint computeLevelCount(GLsizei width, GLsizei height);
77 77
78 protected: 78 protected:
79 WebGLTexture(WebGLRenderingContextBase*); 79 explicit WebGLTexture(WebGLRenderingContextBase*);
80 80
81 virtual void deleteObjectImpl(blink::WebGraphicsContext3D*, Platform3DObject ) OVERRIDE; 81 virtual void deleteObjectImpl(blink::WebGraphicsContext3D*, Platform3DObject ) OVERRIDE;
82 82
83 private: 83 private:
84 class LevelInfo { 84 class LevelInfo {
85 public: 85 public:
86 LevelInfo() 86 LevelInfo()
87 : valid(false) 87 : valid(false)
88 , internalFormat(0) 88 , internalFormat(0)
89 , width(0) 89 , width(0)
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
129 bool m_isCubeComplete; 129 bool m_isCubeComplete;
130 bool m_isComplete; 130 bool m_isComplete;
131 bool m_needToUseBlackTexture; 131 bool m_needToUseBlackTexture;
132 bool m_isFloatType; 132 bool m_isFloatType;
133 bool m_isHalfFloatType; 133 bool m_isHalfFloatType;
134 }; 134 };
135 135
136 } // namespace WebCore 136 } // namespace WebCore
137 137
138 #endif // WebGLTexture_h 138 #endif // WebGLTexture_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698