aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrSurfaceProxyPriv.h
diff options
context:
space:
mode:
authorGravatar Yuqian Li <liyuqian@google.com>2017-03-16 15:04:53 +0000
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-03-16 15:05:04 +0000
commit9e9188f84b15a25e27f63d5f8de3ccd393d9a173 (patch)
treec2b0e775951a9cd0599bbd00f9ae062ca55212d1 /src/gpu/GrSurfaceProxyPriv.h
parenta6ae1f7cda072ff814a838e2d9013a017552cc35 (diff)
Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"
This reverts commit b64bcbdc3a5aa7b9e3ff216e4617ddc1db9260b5. Reason for revert: Android build failed as shown below. frameworks/base/libs/hwui/VkLayer.cpp:32:41: error: too many arguments to function call, expected 0, have 1 mImage = surface->makeImageSnapshot(SkBudgeted::kNo); Original change's description: > Remove budgeted parameter from SkSurface::makeImageSnapshot > > This unused feature complicates MDB. > > Chrome compiles locally for me with this CL. > > Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72 > Reviewed-on: https://skia-review.googlesource.com/9734 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Robert Phillips <robertphillips@google.com> > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: Iae6e313c15b2352bd0d4fc7b5629de0a51ac398e Reviewed-on: https://skia-review.googlesource.com/9788 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
Diffstat (limited to 'src/gpu/GrSurfaceProxyPriv.h')
-rw-r--r--src/gpu/GrSurfaceProxyPriv.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/gpu/GrSurfaceProxyPriv.h b/src/gpu/GrSurfaceProxyPriv.h
index e5a628c1e7..0d10ef6504 100644
--- a/src/gpu/GrSurfaceProxyPriv.h
+++ b/src/gpu/GrSurfaceProxyPriv.h
@@ -23,6 +23,18 @@ public:
// Don't abuse these two!!!!!!!
bool isExact() const { return SkBackingFit::kExact == fProxy->fFit; }
+ // These next two are very specialized and wacky - don't use them!
+
+ // In the case where an unbudgeted, deferred SkSurface_Gpu has snapped a budgeted, deferred
+ // SkImage_Gpu, this serves to propagate the budgeting forward in time. For now, and
+ // presumably forever, this will not change any flushing decisions but may make Ganesh
+ // appear to have gone over budget. In the case of non-deferred proxies this will immediately
+ // propagate the budget decision to the resource, which in itself is dubious.
+ void makeBudgeted();
+ // In the case where a budgeted, deferred SkSurface_Gpu has snapped an unbudgeted, deferred
+ // SkImage_Gpu, this serves to propagate the lack of budgeting forward in time.
+ void makeUnbudgeted();
+
private:
explicit GrSurfaceProxyPriv(GrSurfaceProxy* proxy) : fProxy(proxy) {}
GrSurfaceProxyPriv(const GrSurfaceProxyPriv&) {} // unimpl