diff options
author | Robert Phillips <robertphillips@google.com> | 2017-02-21 10:04:31 -0500 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-02-21 16:34:11 +0000 |
commit | dbc8eeb592123619d9c5bb4b6c6225b9fd45d03b (patch) | |
tree | 053905e92d6e9ac236a2a2adecb07104e9c0e390 /src/gpu/effects/GrDistanceFieldGeoProc.h | |
parent | 9048851e579dffad43f0c77e15030d4fdd5377a8 (diff) |
Remove GrProcessorTestData's GrTextures
(No longer) Blocked on: https://skia-review.googlesource.com/c/8450/ (Remove asTextureRef from SkSpecialImage & update effects accordingly (take 2))
This also (unfortunately) picks up a few straggling effects that didn't have a sk_sp<GrTextureProxy> factory.
Change-Id: I5ce583a084aa8fe00e866eec1db90e2ec9dd2ab0
Reviewed-on: https://skia-review.googlesource.com/8500
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Diffstat (limited to 'src/gpu/effects/GrDistanceFieldGeoProc.h')
-rw-r--r-- | src/gpu/effects/GrDistanceFieldGeoProc.h | 61 |
1 files changed, 59 insertions, 2 deletions
diff --git a/src/gpu/effects/GrDistanceFieldGeoProc.h b/src/gpu/effects/GrDistanceFieldGeoProc.h index 4355e8dd20..1852c13984 100644 --- a/src/gpu/effects/GrDistanceFieldGeoProc.h +++ b/src/gpu/effects/GrDistanceFieldGeoProc.h @@ -56,6 +56,16 @@ public: new GrDistanceFieldA8TextGeoProc(color, viewMatrix, tex, params, lum, flags, usesLocalCoords)); } + + static sk_sp<GrGeometryProcessor> Make(GrContext* context, + GrColor color, const SkMatrix& viewMatrix, + sk_sp<GrTextureProxy> proxy, + const GrSamplerParams& params, + float lum, uint32_t flags, bool usesLocalCoords) { + return sk_sp<GrGeometryProcessor>( + new GrDistanceFieldA8TextGeoProc(context, color, viewMatrix, std::move(proxy), + params, lum, flags, usesLocalCoords)); + } #else static sk_sp<GrGeometryProcessor> Make(GrColor color, const SkMatrix& viewMatrix, GrTexture* tex, const GrSamplerParams& params, @@ -64,6 +74,16 @@ public: new GrDistanceFieldA8TextGeoProc(color, viewMatrix, tex, params, flags, usesLocalCoords)); } + + static sk_sp<GrGeometryProcessor> Make(GrContext* context, + GrColor color, const SkMatrix& viewMatrix, + sk_sp<GrTextureProxy> proxy, + const GrSamplerParams& params, + uint32_t flags, bool usesLocalCoords) { + return sk_sp<GrGeometryProcessor>( + new GrDistanceFieldA8TextGeoProc(context, color, viewMatrix, std::move(proxy), + params, flags, usesLocalCoords)); + } #endif virtual ~GrDistanceFieldA8TextGeoProc() {} @@ -93,6 +113,13 @@ private: #endif uint32_t flags, bool usesLocalCoords); + GrDistanceFieldA8TextGeoProc(GrContext*, GrColor, const SkMatrix& viewMatrix, + sk_sp<GrTextureProxy> proxy, const GrSamplerParams& params, +#ifdef SK_GAMMA_APPLY_TO_A8 + float distanceAdjust, +#endif + uint32_t flags, bool usesLocalCoords); + GrColor fColor; SkMatrix fViewMatrix; TextureSampler fTextureSampler; @@ -126,7 +153,16 @@ public: new GrDistanceFieldPathGeoProc(color, viewMatrix, tex, params, flags, usesLocalCoords)); } - virtual ~GrDistanceFieldPathGeoProc() {} + static sk_sp<GrGeometryProcessor> Make(GrContext* context, GrColor color, + const SkMatrix& viewMatrix, sk_sp<GrTextureProxy> proxy, + const GrSamplerParams& params, + uint32_t flags, bool usesLocalCoords) { + return sk_sp<GrGeometryProcessor>( + new GrDistanceFieldPathGeoProc(context, color, viewMatrix, std::move(proxy), + params, flags, usesLocalCoords)); + } + + ~GrDistanceFieldPathGeoProc() override {} const char* name() const override { return "DistanceFieldPath"; } @@ -147,6 +183,10 @@ private: const GrSamplerParams& params, uint32_t flags, bool usesLocalCoords); + GrDistanceFieldPathGeoProc(GrContext*, GrColor, const SkMatrix& viewMatrix, + sk_sp<GrTextureProxy>, const GrSamplerParams&, uint32_t flags, + bool usesLocalCoords); + GrColor fColor; SkMatrix fViewMatrix; TextureSampler fTextureSampler; @@ -193,7 +233,19 @@ public: flags, usesLocalCoords)); } - virtual ~GrDistanceFieldLCDTextGeoProc() {} + static sk_sp<GrGeometryProcessor> Make(GrContext* context, GrColor color, + const SkMatrix& viewMatrix, + sk_sp<GrTextureProxy> proxy, + const GrSamplerParams& params, + DistanceAdjust distanceAdjust, uint32_t flags, + bool usesLocalCoords) { + return sk_sp<GrGeometryProcessor>( + new GrDistanceFieldLCDTextGeoProc(context, color, viewMatrix, std::move(proxy), + params, distanceAdjust, + flags, usesLocalCoords)); + } + + ~GrDistanceFieldLCDTextGeoProc() override {} const char* name() const override { return "DistanceFieldLCDText"; } @@ -216,6 +268,11 @@ private: DistanceAdjust wa, uint32_t flags, bool usesLocalCoords); + GrDistanceFieldLCDTextGeoProc(GrContext*, GrColor, const SkMatrix& viewMatrix, + sk_sp<GrTextureProxy> proxy, const GrSamplerParams& params, + DistanceAdjust wa, uint32_t flags, + bool usesLocalCoords); + GrColor fColor; SkMatrix fViewMatrix; TextureSampler fTextureSampler; |