aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/effects/GrDistanceFieldGeoProc.h
diff options
context:
space:
mode:
authorGravatar Robert Phillips <robertphillips@google.com>2017-02-21 10:04:31 -0500
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-02-21 16:34:11 +0000
commitdbc8eeb592123619d9c5bb4b6c6225b9fd45d03b (patch)
tree053905e92d6e9ac236a2a2adecb07104e9c0e390 /src/gpu/effects/GrDistanceFieldGeoProc.h
parent9048851e579dffad43f0c77e15030d4fdd5377a8 (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.h61
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;