Added a RenderBuffer/RenderBufferInterface getTextureStorage method.
Change-Id: I710fba737524e735349ce1c0b09fa535555bd029
Reviewed-on: https://chromium-review.googlesource.com/177034
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Commit-Queue: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
diff --git a/src/libGLESv2/Renderbuffer.cpp b/src/libGLESv2/Renderbuffer.cpp
index fd01cd5..2e05f38 100644
--- a/src/libGLESv2/Renderbuffer.cpp
+++ b/src/libGLESv2/Renderbuffer.cpp
@@ -14,6 +14,7 @@
#include "libGLESv2/Texture.h"
#include "libGLESv2/renderer/Renderer.h"
+#include "libGLESv2/renderer/TextureStorage.h"
#include "common/utilities.h"
#include "libGLESv2/formatutils.h"
@@ -70,6 +71,11 @@
return mTexture2D->getDepthSencil(mLevel);
}
+rx::TextureStorage *RenderbufferTexture2D::getTextureStorage()
+{
+ return mTexture2D->getNativeTexture()->getStorageInstance();
+}
+
GLsizei RenderbufferTexture2D::getWidth() const
{
return mTexture2D->getWidth(mLevel);
@@ -140,6 +146,11 @@
return mTextureCubeMap->getDepthStencil(mFaceTarget, mLevel);
}
+rx::TextureStorage *RenderbufferTextureCubeMap::getTextureStorage()
+{
+ return mTextureCubeMap->getNativeTexture()->getStorageInstance();
+}
+
GLsizei RenderbufferTextureCubeMap::getWidth() const
{
return mTextureCubeMap->getWidth(mFaceTarget, mLevel);
@@ -210,6 +221,11 @@
return mTexture3D->getDepthStencil(mLevel, mLayer);
}
+rx::TextureStorage *RenderbufferTexture3DLayer::getTextureStorage()
+{
+ return mTexture3D->getNativeTexture()->getStorageInstance();
+}
+
GLsizei RenderbufferTexture3DLayer::getWidth() const
{
return mTexture3D->getWidth(mLevel);
@@ -278,6 +294,11 @@
return mTexture2DArray->getDepthStencil(mLevel, mLayer);
}
+rx::TextureStorage *RenderbufferTexture2DArrayLayer::getTextureStorage()
+{
+ return mTexture2DArray->getNativeTexture()->getStorageInstance();
+}
+
GLsizei RenderbufferTexture2DArrayLayer::getWidth() const
{
return mTexture2DArray->getWidth(mLevel);
@@ -355,6 +376,11 @@
return mInstance->getDepthStencil();
}
+rx::TextureStorage *Renderbuffer::getTextureStorage()
+{
+ return mInstance->getTextureStorage();
+}
+
GLsizei Renderbuffer::getWidth() const
{
return mInstance->getWidth();
@@ -461,6 +487,11 @@
return NULL;
}
+rx::TextureStorage *RenderbufferStorage::getTextureStorage()
+{
+ return NULL;
+}
+
GLsizei RenderbufferStorage::getWidth() const
{
return mWidth;