diff options
author | gman@chromium.org <gman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-12-23 02:00:26 +0000 |
---|---|---|
committer | gman@chromium.org <gman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-12-23 02:00:26 +0000 |
commit | 9edc6b2c8f0e0992c2f17eb5434d7c3044baff19 (patch) | |
tree | ab01dd716b3d0f01675029635ffde9ff9f4d64d9 /gpu/command_buffer/service/renderbuffer_manager.h | |
parent | d5d9bf9b6414fecc6c9c764b05fb7f0f9a8c8745 (diff) | |
download | chromium_src-9edc6b2c8f0e0992c2f17eb5434d7c3044baff19.zip chromium_src-9edc6b2c8f0e0992c2f17eb5434d7c3044baff19.tar.gz chromium_src-9edc6b2c8f0e0992c2f17eb5434d7c3044baff19.tar.bz2 |
Make CopyTexImage2D and CopyTexSubImage2D fail if
formats are incompatible.
TEST=unit tests, more WebGL conformance tests pass.
BUG=none
Review URL: http://codereview.chromium.org/6028005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70021 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu/command_buffer/service/renderbuffer_manager.h')
-rw-r--r-- | gpu/command_buffer/service/renderbuffer_manager.h | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/gpu/command_buffer/service/renderbuffer_manager.h b/gpu/command_buffer/service/renderbuffer_manager.h index c6992c3a..db9ba816 100644 --- a/gpu/command_buffer/service/renderbuffer_manager.h +++ b/gpu/command_buffer/service/renderbuffer_manager.h @@ -26,7 +26,10 @@ class RenderbufferManager { explicit RenderbufferInfo(GLuint service_id) : service_id_(service_id), cleared_(false), - internal_format_(GL_RGBA4) { + samples_(0), + internal_format_(GL_RGBA4), + width_(0), + height_(0) { } GLuint service_id() const { @@ -45,8 +48,24 @@ class RenderbufferManager { return internal_format_; } - void set_internal_format(GLenum internalformat) { + GLsizei samples() const { + return samples_; + } + + GLsizei width() const { + return width_; + } + + GLsizei height() const { + return height_; + } + + void SetInfo( + GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height) { + samples_ = samples; internal_format_ = internalformat; + width_ = width; + height_ = height; cleared_ = false; } @@ -70,8 +89,15 @@ class RenderbufferManager { // Whether this renderbuffer has been cleared bool cleared_; + // Number of samples (for multi-sampled renderbuffers) + GLsizei samples_; + // Renderbuffer internalformat set through RenderbufferStorage(). GLenum internal_format_; + + // Dimensions of renderbuffer. + GLsizei width_; + GLsizei height_; }; explicit RenderbufferManager(GLint max_renderbuffer_size); |