From 296b1ccf9b8e9c8b945645efcbaa9c71c7135f58 Mon Sep 17 00:00:00 2001 From: Robert Phillips Date: Wed, 15 Mar 2017 10:42:12 -0400 Subject: Retract GrContext from src/gpu/effects Change-Id: Iceb7263098286bafb2605ef17d1fe6bb25d71e97 Reviewed-on: https://skia-review.googlesource.com/9693 Commit-Queue: Robert Phillips Reviewed-by: Brian Salomon --- src/gpu/GrTextureToYUVPlanes.cpp | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'src/gpu/GrTextureToYUVPlanes.cpp') diff --git a/src/gpu/GrTextureToYUVPlanes.cpp b/src/gpu/GrTextureToYUVPlanes.cpp index 7d01626162..0a0edee4df 100644 --- a/src/gpu/GrTextureToYUVPlanes.cpp +++ b/src/gpu/GrTextureToYUVPlanes.cpp @@ -19,7 +19,7 @@ namespace { SkYUVColorSpace colorSpace); }; -static bool convert_proxy(GrContext* context, sk_sp src, +static bool convert_proxy(sk_sp src, GrRenderTargetContext* dst, int dstW, int dstH, SkYUVColorSpace colorSpace, MakeFPProc proc) { @@ -32,7 +32,10 @@ static bool convert_proxy(GrContext* context, sk_sp src, filter = GrSamplerParams::kBilerp_FilterMode; } - sk_sp fp(GrSimpleTextureEffect::Make(context, std::move(src), nullptr, + GrResourceProvider* resourceProvider = dst->resourceProvider(); + + sk_sp fp(GrSimpleTextureEffect::Make(resourceProvider, std::move(src), + nullptr, SkMatrix::MakeScale(xScale, yScale), filter)); if (!fp) { @@ -121,32 +124,32 @@ bool GrTextureToYUVPlanes(GrContext* context, sk_sp proxy, // Do all the draws before any readback. if (yuvRenderTargetContext) { - if (!convert_proxy(context, std::move(proxy), yuvRenderTargetContext.get(), + if (!convert_proxy(std::move(proxy), yuvRenderTargetContext.get(), sizes[0].fWidth, sizes[0].fHeight, colorSpace, GrYUVEffect::MakeRGBToYUV)) { return false; } } else { SkASSERT(yRenderTargetContext); - if (!convert_proxy(context, proxy, yRenderTargetContext.get(), + if (!convert_proxy(proxy, yRenderTargetContext.get(), sizes[0].fWidth, sizes[0].fHeight, colorSpace, GrYUVEffect::MakeRGBToY)) { return false; } if (uvRenderTargetContext) { - if (!convert_proxy(context, std::move(proxy), uvRenderTargetContext.get(), + if (!convert_proxy(std::move(proxy), uvRenderTargetContext.get(), sizes[1].fWidth, sizes[1].fHeight, colorSpace, GrYUVEffect::MakeRGBToUV)) { return false; } } else { SkASSERT(uRenderTargetContext && vRenderTargetContext); - if (!convert_proxy(context, proxy, uRenderTargetContext.get(), + if (!convert_proxy(proxy, uRenderTargetContext.get(), sizes[1].fWidth, sizes[1].fHeight, colorSpace, GrYUVEffect::MakeRGBToU)) { return false; } - if (!convert_proxy(context, std::move(proxy), vRenderTargetContext.get(), + if (!convert_proxy(std::move(proxy), vRenderTargetContext.get(), sizes[2].fWidth, sizes[2].fHeight, colorSpace, GrYUVEffect::MakeRGBToV)) { return false; -- cgit v1.2.3