diff options
author | 2018-06-16 17:22:59 -0600 | |
---|---|---|
committer | 2018-06-18 15:32:48 +0000 | |
commit | 4c458b12f68d8704a297c1ec252127c77bdee595 (patch) | |
tree | 588efa8ae1870e6d20107c371cc1077662c5ff15 /src/gpu/GrReducedClip.cpp | |
parent | 3567c14a41cd55860fcc836af32d8748c1e3c856 (diff) |
ccpr: Use lazy proxies with GrCCAtlas
Bug: skia:
Change-Id: I576d9303d451352778de0425e3ecbc561331cd09
Reviewed-on: https://skia-review.googlesource.com/135362
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Diffstat (limited to 'src/gpu/GrReducedClip.cpp')
-rw-r--r-- | src/gpu/GrReducedClip.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/gpu/GrReducedClip.cpp b/src/gpu/GrReducedClip.cpp index e6cd6b36fe..2377846153 100644 --- a/src/gpu/GrReducedClip.cpp +++ b/src/gpu/GrReducedClip.cpp @@ -34,7 +34,7 @@ * take a rect in case the caller knows a bound on what is to be drawn through this clip. */ GrReducedClip::GrReducedClip(const SkClipStack& stack, const SkRect& queryBounds, - const GrShaderCaps* caps, int maxWindowRectangles, int maxAnalyticFPs, + const GrCaps* caps, int maxWindowRectangles, int maxAnalyticFPs, int maxCCPRClipPaths) : fCaps(caps) , fMaxWindowRectangles(maxWindowRectangles) @@ -630,7 +630,8 @@ GrReducedClip::ClipResult GrReducedClip::addAnalyticFP(const SkRRect& deviceSpac return ClipResult::kNotClipped; } - if (auto fp = GrRRectEffect::Make(GetClipEdgeType(invert, aa), deviceSpaceRRect, *fCaps)) { + if (auto fp = GrRRectEffect::Make(GetClipEdgeType(invert, aa), deviceSpaceRRect, + *fCaps->shaderCaps())) { fAnalyticFPs.push_back(std::move(fp)); return ClipResult::kClipped; } @@ -956,8 +957,7 @@ bool GrReducedClip::drawStencilClipMask(GrContext* context, } std::unique_ptr<GrFragmentProcessor> GrReducedClip::finishAndDetachAnalyticFPs( - GrCoverageCountingPathRenderer* ccpr, GrProxyProvider* proxyProvider, uint32_t opListID, - int rtWidth, int rtHeight) { + GrCoverageCountingPathRenderer* ccpr, uint32_t opListID, int rtWidth, int rtHeight) { // Make sure finishAndDetachAnalyticFPs hasn't been called already. SkDEBUGCODE(for (const auto& fp : fAnalyticFPs) { SkASSERT(fp); }) @@ -966,8 +966,8 @@ std::unique_ptr<GrFragmentProcessor> GrReducedClip::finishAndDetachAnalyticFPs( for (const SkPath& ccprClipPath : fCCPRClipPaths) { SkASSERT(ccpr); SkASSERT(fHasScissor); - auto fp = ccpr->makeClipProcessor(proxyProvider, opListID, ccprClipPath, fScissor, - rtWidth, rtHeight); + auto fp = ccpr->makeClipProcessor(opListID, ccprClipPath, fScissor, rtWidth, rtHeight, + *fCaps); fAnalyticFPs.push_back(std::move(fp)); } fCCPRClipPaths.reset(); |