summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/angle/src/libGLESv2/renderer/TextureImpl.h
diff options
context:
space:
mode:
authorAndrew Knight <andrew.knight@digia.com>2014-09-25 13:22:55 +0300
committerAndrew Knight <andrew.knight@digia.com>2014-09-29 16:09:29 +0200
commit311157c3c6849e8efccd88f7594bb34c570a6780 (patch)
treea50c252b638488326529c0e69aa05e42abce7462 /src/3rdparty/angle/src/libGLESv2/renderer/TextureImpl.h
parent04d3a89e20d49a3b5015b071bfdedc81973b090c (diff)
ANGLE: Upgrade to 2.1~abce76206141
Upgrade to address issues discovered since the last upgrade. Patch notes: 0000-General-fixes-for-ANGLE-2.1.patch added removal of the unused third-party tracing functions 0003-Fix-compilation-with-MinGW-gcc-64-bit.patch removed as it is no longer needed 0011-ANGLE-Fix-compilation-error-on-MinGW-caused-by-trace.patch removed as it is no longer needed 0016-ANGLE-Fix-compilation-with-MinGW-D3D11.patch now supports MinGW 64-bit [ChangeLog][Third-party libraries] ANGLE updated to 2.1~f8602ad91e4f Task-number: QTBUG-40649 Task-number: QTBUG-40658 Task-number: QTBUG-41031 Task-number: QTBUG-41081 Task-number: QTBUG-41308 Task-number: QTBUG-41563 Change-Id: I9f776c8d5cb94ddb12d608a8d5630bfc54437bea Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Oliver Wolff <oliver.wolff@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Diffstat (limited to 'src/3rdparty/angle/src/libGLESv2/renderer/TextureImpl.h')
-rw-r--r--src/3rdparty/angle/src/libGLESv2/renderer/TextureImpl.h134
1 files changed, 19 insertions, 115 deletions
diff --git a/src/3rdparty/angle/src/libGLESv2/renderer/TextureImpl.h b/src/3rdparty/angle/src/libGLESv2/renderer/TextureImpl.h
index 35c9166023..e3cc50d680 100644
--- a/src/3rdparty/angle/src/libGLESv2/renderer/TextureImpl.h
+++ b/src/3rdparty/angle/src/libGLESv2/renderer/TextureImpl.h
@@ -11,6 +11,10 @@
#include "common/angleutils.h"
+#include "angle_gl.h"
+
+#include "libGLESv2/ImageIndex.h"
+
namespace egl
{
class Surface;
@@ -27,138 +31,38 @@ namespace rx
{
class Image;
-class RenderTarget;
class Renderer;
-class TextureStorageInterface;
+class TextureStorage;
-class Texture2DImpl
+class TextureImpl
{
public:
- virtual ~Texture2DImpl() {}
+ virtual ~TextureImpl() {};
// TODO: If this methods could go away that would be ideal;
// TextureStorage should only be necessary for the D3D backend, and as such
// higher level code should not rely on it.
- virtual TextureStorageInterface *getNativeTexture() = 0;
-
- virtual Image *getImage(int level) const = 0;
-
- virtual void setUsage(GLenum usage) = 0;
- virtual bool hasDirtyImages() const = 0;
- virtual void resetDirty() = 0;
-
- virtual bool isSamplerComplete(const gl::SamplerState &samplerState) const = 0;
- virtual void bindTexImage(egl::Surface *surface) = 0;
- virtual void releaseTexImage() = 0;
-
- virtual void setImage(GLint level, GLsizei width, GLsizei height, GLenum internalFormat, GLenum format, GLenum type, const gl::PixelUnpackState &unpack, const void *pixels) = 0;
- virtual void setCompressedImage(GLint level, GLenum format, GLsizei width, GLsizei height, GLsizei imageSize, const void *pixels) = 0;
- virtual void subImage(GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const gl::PixelUnpackState &unpack, const void *pixels) = 0;
- virtual void subImageCompressed(GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *pixels) = 0;
- virtual void copyImage(GLint level, GLenum format, GLint x, GLint y, GLsizei width, GLsizei height, gl::Framebuffer *source) = 0;
- virtual void copySubImage(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height, gl::Framebuffer *source) = 0;
- virtual void storage(GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height) = 0;
- virtual void generateMipmaps() = 0;
-
- virtual unsigned int getRenderTargetSerial(GLint level) = 0;
-
- virtual RenderTarget *getRenderTarget(GLint level) = 0;
- virtual RenderTarget *getDepthSencil(GLint level) = 0;
-
- virtual void redefineImage(GLint level, GLenum internalformat, GLsizei width, GLsizei height) = 0;
-};
-
-class TextureCubeImpl
-{
- public:
- virtual ~TextureCubeImpl() {}
-
- virtual TextureStorageInterface *getNativeTexture() = 0;
-
- virtual Image *getImage(GLenum target, int level) const = 0;
-
- virtual void setUsage(GLenum usage) = 0;
- virtual bool hasDirtyImages() const = 0;
- virtual void resetDirty() = 0;
-
- virtual bool isSamplerComplete(const gl::SamplerState &samplerState) const = 0;
- virtual bool isCubeComplete() const = 0;
-
- virtual void setImage(int faceIndex, GLint level, GLsizei width, GLsizei height, GLenum internalFormat, GLenum format, GLenum type, const gl::PixelUnpackState &unpack, const void *pixels) = 0;
- virtual void setCompressedImage(GLenum target, GLint level, GLenum format, GLsizei width, GLsizei height, GLsizei imageSize, const void *pixels) = 0;
- virtual void subImage(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const gl::PixelUnpackState &unpack, const void *pixels) = 0;
- virtual void subImageCompressed(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *pixels) = 0;
- virtual void copyImage(GLenum target, GLint level, GLenum format, GLint x, GLint y, GLsizei width, GLsizei height, gl::Framebuffer *source) = 0;
- virtual void copySubImage(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height, gl::Framebuffer *source) = 0;
- virtual void storage(GLsizei levels, GLenum internalformat, GLsizei size) = 0;
- virtual void generateMipmaps() = 0;
-
- virtual unsigned int getRenderTargetSerial(GLenum target, GLint level) = 0;
-
- virtual RenderTarget *getRenderTarget(GLenum target, GLint level) = 0;
- virtual RenderTarget *getDepthStencil(GLenum target, GLint level) = 0;
-};
-
-class Texture3DImpl
-{
- public:
- virtual ~Texture3DImpl() {}
-
- virtual TextureStorageInterface *getNativeTexture() = 0;
-
- virtual Image *getImage(int level) const = 0;
-
- virtual void setUsage(GLenum usage) = 0;
- virtual bool hasDirtyImages() const = 0;
- virtual void resetDirty() = 0;
-
- virtual bool isSamplerComplete(const gl::SamplerState &samplerState) const = 0;
- virtual bool isMipmapComplete() const = 0;
-
- virtual void setImage(GLint level, GLsizei width, GLsizei height, GLsizei depth, GLenum internalFormat, GLenum format, GLenum type, const gl::PixelUnpackState &unpack, const void *pixels) = 0;
- virtual void setCompressedImage(GLint level, GLenum format, GLsizei width, GLsizei height, GLsizei depth, GLsizei imageSize, const void *pixels) = 0;
- virtual void subImage(GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const gl::PixelUnpackState &unpack, const void *pixels) = 0;
- virtual void subImageCompressed(GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *pixels) = 0;
- virtual void copySubImage(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height, gl::Framebuffer *source) = 0;
- virtual void storage(GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth) = 0;
- virtual void generateMipmaps() = 0;
-
- virtual unsigned int getRenderTargetSerial(GLint level, GLint layer) = 0;
-
- virtual RenderTarget *getRenderTarget(GLint level) = 0;
- virtual RenderTarget *getRenderTarget(GLint level, GLint layer) = 0;
- virtual RenderTarget *getDepthStencil(GLint level, GLint layer) = 0;
-};
-
-class Texture2DArrayImpl
-{
- public:
- virtual ~Texture2DArrayImpl() {}
-
- virtual TextureStorageInterface *getNativeTexture() = 0;
+ virtual TextureStorage *getNativeTexture() = 0;
+ // Deprecated in favour of the ImageIndex method
virtual Image *getImage(int level, int layer) const = 0;
+ virtual Image *getImage(const gl::ImageIndex &index) const = 0;
virtual GLsizei getLayerCount(int level) const = 0;
virtual void setUsage(GLenum usage) = 0;
- virtual bool hasDirtyImages() const = 0;
- virtual void resetDirty() = 0;
- virtual bool isSamplerComplete(const gl::SamplerState &samplerState) const = 0;
- virtual bool isMipmapComplete() const = 0;
-
- virtual void setImage(GLint level, GLsizei width, GLsizei height, GLsizei depth, GLenum internalFormat, GLenum format, GLenum type, const gl::PixelUnpackState &unpack, const void *pixels) = 0;
- virtual void setCompressedImage(GLint level, GLenum format, GLsizei width, GLsizei height, GLsizei depth, GLsizei imageSize, const void *pixels) = 0;
- virtual void subImage(GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const gl::PixelUnpackState &unpack, const void *pixels) = 0;
- virtual void subImageCompressed(GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *pixels) = 0;
+ virtual void setImage(GLenum target, GLint level, GLsizei width, GLsizei height, GLsizei depth, GLenum internalFormat, GLenum format, GLenum type, const gl::PixelUnpackState &unpack, const void *pixels) = 0;
+ virtual void setCompressedImage(GLenum target, GLint level, GLenum format, GLsizei width, GLsizei height, GLsizei depth, GLsizei imageSize, const void *pixels) = 0;
+ virtual void subImage(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const gl::PixelUnpackState &unpack, const void *pixels) = 0;
+ virtual void subImageCompressed(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *pixels) = 0;
+ virtual void copyImage(GLenum target, GLint level, GLenum format, GLint x, GLint y, GLsizei width, GLsizei height, gl::Framebuffer *source) = 0;
virtual void copySubImage(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height, gl::Framebuffer *source) = 0;
- virtual void storage(GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth) = 0;
- virtual void generateMipmaps() = 0;
+ virtual void storage(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth) = 0;
- virtual unsigned int getRenderTargetSerial(GLint level, GLint layer) = 0;
+ virtual void generateMipmaps() = 0;
- virtual RenderTarget *getRenderTarget(GLint level, GLint layer) = 0;
- virtual RenderTarget *getDepthStencil(GLint level, GLint layer) = 0;
+ virtual void bindTexImage(egl::Surface *surface) = 0;
+ virtual void releaseTexImage() = 0;
};
}