Commit bfcda81d by Jamie Madill

Add a method to return the Texture serial of a Renderbuffer, or zero if this is…

Add a method to return the Texture serial of a Renderbuffer, or zero if this is a non-texture Renderbuffer. TRAC #24039 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods
parent 2e559bbc
......@@ -100,6 +100,11 @@ unsigned int RenderbufferTexture2D::getSerial() const
return mTexture2D->getRenderTargetSerial(mLevel);
}
unsigned int RenderbufferTexture2D::getTextureSerial() const
{
return mTexture2D->getTextureSerial();
}
///// RenderbufferTextureCubeMap Implementation ////////
RenderbufferTextureCubeMap::RenderbufferTextureCubeMap(TextureCubeMap *texture, GLenum faceTarget, GLint level)
......@@ -165,6 +170,11 @@ unsigned int RenderbufferTextureCubeMap::getSerial() const
return mTextureCubeMap->getRenderTargetSerial(mFaceTarget, mLevel);
}
unsigned int RenderbufferTextureCubeMap::getTextureSerial() const
{
return mTextureCubeMap->getTextureSerial();
}
///// RenderbufferTexture3DLayer Implementation ////////
RenderbufferTexture3DLayer::RenderbufferTexture3DLayer(Texture3D *texture, GLint level, GLint layer)
......@@ -230,6 +240,11 @@ unsigned int RenderbufferTexture3DLayer::getSerial() const
return mTexture3D->getRenderTargetSerial(mLevel, mLayer);
}
unsigned int RenderbufferTexture3DLayer::getTextureSerial() const
{
return mTexture3D->getTextureSerial();
}
////// RenderbufferTexture2DArrayLayer Implementation //////
RenderbufferTexture2DArrayLayer::RenderbufferTexture2DArrayLayer(Texture2DArray *texture, GLint level, GLint layer)
......@@ -293,6 +308,11 @@ unsigned int RenderbufferTexture2DArrayLayer::getSerial() const
return mTexture2DArray->getRenderTargetSerial(mLevel, mLayer);
}
unsigned int RenderbufferTexture2DArrayLayer::getTextureSerial() const
{
return mTexture2DArray->getTextureSerial();
}
////// Renderbuffer Implementation //////
Renderbuffer::Renderbuffer(rx::Renderer *renderer, GLuint id, RenderbufferInterface *instance) : RefCountObject(id)
......@@ -405,6 +425,11 @@ unsigned int Renderbuffer::getSerial() const
return mInstance->getSerial();
}
unsigned int Renderbuffer::getTextureSerial() const
{
return mInstance->getTextureSerial();
}
void Renderbuffer::setStorage(RenderbufferStorage *newStorage)
{
ASSERT(newStorage != NULL);
......
......@@ -56,6 +56,7 @@ class RenderbufferInterface
virtual GLsizei getSamples() const = 0;
virtual unsigned int getSerial() const = 0;
virtual unsigned int getTextureSerial() const = 0;
private:
DISALLOW_COPY_AND_ASSIGN(RenderbufferInterface);
......@@ -81,6 +82,7 @@ class RenderbufferTexture2D : public RenderbufferInterface
virtual GLsizei getSamples() const;
virtual unsigned int getSerial() const;
virtual unsigned int getTextureSerial() const;
private:
DISALLOW_COPY_AND_ASSIGN(RenderbufferTexture2D);
......@@ -109,6 +111,7 @@ class RenderbufferTextureCubeMap : public RenderbufferInterface
virtual GLsizei getSamples() const;
virtual unsigned int getSerial() const;
virtual unsigned int getTextureSerial() const;
private:
DISALLOW_COPY_AND_ASSIGN(RenderbufferTextureCubeMap);
......@@ -138,6 +141,7 @@ public:
virtual GLsizei getSamples() const;
virtual unsigned int getSerial() const;
virtual unsigned int getTextureSerial() const;
private:
DISALLOW_COPY_AND_ASSIGN(RenderbufferTexture3DLayer);
......@@ -167,6 +171,7 @@ public:
virtual GLsizei getSamples() const;
virtual unsigned int getSerial() const;
virtual unsigned int getTextureSerial() const;
private:
DISALLOW_COPY_AND_ASSIGN(RenderbufferTexture2DArrayLayer);
......@@ -196,6 +201,7 @@ class RenderbufferStorage : public RenderbufferInterface
virtual GLsizei getSamples() const;
virtual unsigned int getSerial() const;
virtual unsigned int getTextureSerial() const { return 0; }
static unsigned int issueSerials(GLuint count);
......@@ -249,6 +255,7 @@ class Renderbuffer : public RefCountObject
GLsizei getSamples() const;
unsigned int getSerial() const;
unsigned int getTextureSerial() const;
void setStorage(RenderbufferStorage *newStorage);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment