Consolidate GrSurfaceProxy Make methods
I think GrSurfaceDesc is still the most compact way to communicate the deferred GrSurface's settings to the Proxy but this CL, at least, reduces where it is used.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4559
Change-Id: Ica599c28a5aef1ed4094f47a4ac119e2d204d652
Reviewed-on: https://skia-review.googlesource.com/4559
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
diff --git a/src/gpu/GrTextureRenderTargetProxy.cpp b/src/gpu/GrTextureRenderTargetProxy.cpp
index 74c3b71..95451e9 100644
--- a/src/gpu/GrTextureRenderTargetProxy.cpp
+++ b/src/gpu/GrTextureRenderTargetProxy.cpp
@@ -22,11 +22,12 @@
// Wrapped version
// This class is virtually derived from GrSurfaceProxy (via both GrTextureProxy and
// GrRenderTargetProxy) so its constructor must be explicitly called.
-GrTextureRenderTargetProxy::GrTextureRenderTargetProxy(sk_sp<GrRenderTarget> rt)
- : GrSurfaceProxy(rt, SkBackingFit::kExact)
- , GrTextureProxy(sk_ref_sp(rt->asTexture()))
- , GrRenderTargetProxy(rt) {
- SkASSERT(rt->asTexture());
+GrTextureRenderTargetProxy::GrTextureRenderTargetProxy(sk_sp<GrSurface> surf)
+ : GrSurfaceProxy(surf, SkBackingFit::kExact)
+ , GrTextureProxy(sk_ref_sp(surf->asTexture()))
+ , GrRenderTargetProxy(sk_ref_sp(surf->asRenderTarget())) {
+ SkASSERT(surf->asTexture());
+ SkASSERT(surf->asRenderTarget());
}
size_t GrTextureRenderTargetProxy::onGpuMemorySize() const {
@@ -38,28 +39,3 @@
return GrSurface::ComputeSize(fDesc, fDesc.fSampleCnt+1, true);
}
-sk_sp<GrTextureRenderTargetProxy> GrTextureRenderTargetProxy::Make(const GrCaps& caps,
- const GrSurfaceDesc& desc,
- SkBackingFit fit,
- SkBudgeted budgeted) {
- SkASSERT(desc.fFlags & kRenderTarget_GrSurfaceFlag);
-
- return sk_sp<GrTextureRenderTargetProxy>(new GrTextureRenderTargetProxy(caps, desc,
- fit, budgeted));
-}
-
-sk_sp<GrTextureRenderTargetProxy> GrTextureRenderTargetProxy::Make(sk_sp<GrTexture> tex) {
- SkASSERT(tex->asRenderTarget());
-
- return sk_sp<GrTextureRenderTargetProxy>(new GrTextureRenderTargetProxy(
- sk_ref_sp(tex->asRenderTarget())));
-}
-
-sk_sp<GrTextureRenderTargetProxy> GrTextureRenderTargetProxy::Make(sk_sp<GrRenderTarget> rt) {
- SkASSERT(rt->asTexture());
-
- return sk_sp<GrTextureRenderTargetProxy>(new GrTextureRenderTargetProxy(std::move(rt)));
-}
-
-
-