Added an abstract invalidate method to rx::RenderTarget.

TRAC #23133 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Geoff Lang git-svn-id: https://angleproject.googlecode.com/svn/branches/es3proto@2334 736b8ea6-26fd-11df-bfd4-992fa37f6226
parent c796484e
...@@ -35,7 +35,9 @@ class RenderTarget ...@@ -35,7 +35,9 @@ class RenderTarget
GLenum getInternalFormat() { return mInternalFormat; } GLenum getInternalFormat() { return mInternalFormat; }
GLenum getActualFormat() { return mActualFormat; } GLenum getActualFormat() { return mActualFormat; }
GLsizei getSamples() { return mSamples; } GLsizei getSamples() { return mSamples; }
virtual void invalidate(GLint x, GLint y, GLsizei width, GLsizei height) = 0;
struct Desc { struct Desc {
GLsizei width; GLsizei width;
GLsizei height; GLsizei height;
......
...@@ -386,6 +386,11 @@ RenderTarget11 *RenderTarget11::makeRenderTarget11(RenderTarget *target) ...@@ -386,6 +386,11 @@ RenderTarget11 *RenderTarget11::makeRenderTarget11(RenderTarget *target)
return static_cast<rx::RenderTarget11*>(target); return static_cast<rx::RenderTarget11*>(target);
} }
void RenderTarget11::invalidate(GLint x, GLint y, GLsizei width, GLsizei height)
{
// Currently a no-op
}
ID3D11Resource *RenderTarget11::getTexture() const ID3D11Resource *RenderTarget11::getTexture() const
{ {
if (mTexture) if (mTexture)
......
...@@ -27,6 +27,8 @@ class RenderTarget11 : public RenderTarget ...@@ -27,6 +27,8 @@ class RenderTarget11 : public RenderTarget
static RenderTarget11 *makeRenderTarget11(RenderTarget *renderTarget); static RenderTarget11 *makeRenderTarget11(RenderTarget *renderTarget);
virtual void invalidate(GLint x, GLint y, GLsizei width, GLsizei height);
// Adds reference, caller must call Release // Adds reference, caller must call Release
ID3D11Resource *getTexture() const; ID3D11Resource *getTexture() const;
......
...@@ -107,6 +107,11 @@ RenderTarget9 *RenderTarget9::makeRenderTarget9(RenderTarget *target) ...@@ -107,6 +107,11 @@ RenderTarget9 *RenderTarget9::makeRenderTarget9(RenderTarget *target)
return static_cast<rx::RenderTarget9*>(target); return static_cast<rx::RenderTarget9*>(target);
} }
void RenderTarget9::invalidate(GLint x, GLint y, GLsizei width, GLsizei height)
{
// Currently a no-op
}
IDirect3DSurface9 *RenderTarget9::getSurface() IDirect3DSurface9 *RenderTarget9::getSurface()
{ {
// Caller is responsible for releasing the returned surface reference. // Caller is responsible for releasing the returned surface reference.
......
...@@ -25,6 +25,9 @@ class RenderTarget9 : public RenderTarget ...@@ -25,6 +25,9 @@ class RenderTarget9 : public RenderTarget
virtual ~RenderTarget9(); virtual ~RenderTarget9();
static RenderTarget9 *makeRenderTarget9(RenderTarget *renderTarget); static RenderTarget9 *makeRenderTarget9(RenderTarget *renderTarget);
virtual void invalidate(GLint x, GLint y, GLsizei width, GLsizei height);
IDirect3DSurface9 *getSurface(); IDirect3DSurface9 *getSurface();
private: private:
......
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