From 83d118550f7237d25e7e096cc968dbb9a06678a3 Mon Sep 17 00:00:00 2001 From: Ethan Nicholas Date: Thu, 13 Jul 2017 16:00:16 -0400 Subject: converted CircleEffect to SkSL Bug: skia: Change-Id: I93d117c22ae2b374294f6a5e961c497ac2c92b09 Reviewed-on: https://skia-review.googlesource.com/23301 Reviewed-by: Brian Osman Commit-Queue: Ethan Nicholas --- src/gpu/effects/GrCircleEffect.h | 46 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 src/gpu/effects/GrCircleEffect.h (limited to 'src/gpu/effects/GrCircleEffect.h') diff --git a/src/gpu/effects/GrCircleEffect.h b/src/gpu/effects/GrCircleEffect.h new file mode 100644 index 0000000000..24a238da6c --- /dev/null +++ b/src/gpu/effects/GrCircleEffect.h @@ -0,0 +1,46 @@ +/* + * Copyright 2017 Google Inc. + * + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + */ + +/* + * This file was autogenerated from GrCircleEffect.fp; do not modify. + */ +#ifndef GrCircleEffect_DEFINED +#define GrCircleEffect_DEFINED +#include "SkTypes.h" +#if SK_SUPPORT_GPU +#include "GrFragmentProcessor.h" +#include "GrCoordTransform.h" +#include "GrColorSpaceXform.h" +#include "effects/GrProxyMove.h" +class GrCircleEffect : public GrFragmentProcessor { +public: + int edgeType() const { return fEdgeType; } + SkPoint center() const { return fCenter; } + float radius() const { return fRadius; } + static sk_sp Make(int edgeType, SkPoint center, float radius) { + return sk_sp(new GrCircleEffect(edgeType, center, radius)); + } + const char* name() const override { return "CircleEffect"; } +private: + GrCircleEffect(int edgeType, SkPoint center, float radius) + : INHERITED((OptimizationFlags) kCompatibleWithCoverageAsAlpha_OptimizationFlag ) + , fEdgeType(edgeType) + , fCenter(center) + , fRadius(radius) { + this->initClassID(); + } + GrGLSLFragmentProcessor* onCreateGLSLInstance() const override; + void onGetGLSLProcessorKey(const GrShaderCaps&,GrProcessorKeyBuilder*) const override; + bool onIsEqual(const GrFragmentProcessor&) const override; + GR_DECLARE_FRAGMENT_PROCESSOR_TEST + int fEdgeType; + SkPoint fCenter; + float fRadius; + typedef GrFragmentProcessor INHERITED; +}; +#endif +#endif -- cgit v1.2.3