Chromium Code Reviews| Index: src/gpu/gl/GrGLTexture.h |
| diff --git a/src/gpu/gl/GrGLTexture.h b/src/gpu/gl/GrGLTexture.h |
| index 11d63531cf48225c06bd52188105cf4adafb7119..2248670c0517ea4df45065eed9aff9372a81a8eb 100644 |
| --- a/src/gpu/gl/GrGLTexture.h |
| +++ b/src/gpu/gl/GrGLTexture.h |
| @@ -10,7 +10,8 @@ |
| #define GrGLTexture_DEFINED |
| #include "GrGpu.h" |
| -#include "GrGLRenderTarget.h" |
| +#include "GrTexture.h" |
| +#include "GrGLUtil.h" |
|
robertphillips
2014/11/03 13:58:54
Can we move GrGLTexID into GrGLTexture.cpp ?
bsalomon
2014/11/03 15:20:14
Yup, forthcoming.
|
| /** |
| * A ref counted tex id that deletes the texture in its destructor. |
| @@ -62,10 +63,6 @@ public: |
| bool fIsWrapped; |
| }; |
| - // creates a texture that is also an RT |
| - GrGLTexture(GrGpuGL* gpu, const GrSurfaceDesc&, const IDDesc&, const GrGLRenderTarget::IDDesc&); |
| - |
| - // creates a non-RT texture |
| GrGLTexture(GrGpuGL* gpu, const GrSurfaceDesc&, const IDDesc&); |
| virtual ~GrGLTexture() { this->release(); } |
| @@ -89,7 +86,12 @@ public: |
| GrGLuint textureID() const { return (fTexIDObj.get()) ? fTexIDObj->id() : 0; } |
| protected: |
| - // overrides of GrTexture |
| + // The public constructor registers this object with the cache. However, only the most derived |
| + // class should register with the cache. This constructor does not do the registration and |
| + // rather moves that burden onto the derived class. |
| + enum Derived { kDerived }; |
| + GrGLTexture(GrGpuGL* gpu, const GrSurfaceDesc&, const IDDesc&, Derived); |
| + |
| virtual void onAbandon() SK_OVERRIDE; |
| virtual void onRelease() SK_OVERRIDE; |
| @@ -98,8 +100,6 @@ private: |
| GrGpu::ResetTimestamp fTexParamsTimestamp; |
| SkAutoTUnref<GrGLTexID> fTexIDObj; |
| - void init(GrGpuGL* gpu, const GrSurfaceDesc&, const IDDesc&, const GrGLRenderTarget::IDDesc*); |
| - |
| typedef GrTexture INHERITED; |
| }; |