8#ifndef GrConvexPolyEffect_DEFINED
9#define GrConvexPolyEffect_DEFINED
23namespace skgpu {
class KeyBuilder; }
48 const float edges[]) {
53 return GrFPSuccess(std::unique_ptr<GrFragmentProcessor>(
65 const char*
name()
const override {
return "ConvexPoly"; }
66 std::unique_ptr<GrFragmentProcessor>
clone()
const override;
74 std::unique_ptr<ProgramImpl> onMakeProgramImpl()
const override;
82 std::array<float, 3*kMaxEdges> fEdges;
static GrFPResult GrFPSuccess(std::unique_ptr< GrFragmentProcessor > fp)
std::tuple< bool, std::unique_ptr< GrFragmentProcessor > > GrFPResult
static GrFPResult GrFPFailure(std::unique_ptr< GrFragmentProcessor > fp)
#define GR_DECLARE_FRAGMENT_PROCESSOR_TEST
const char * name() const override
~GrConvexPolyEffect() override
static constexpr int kMaxEdges
std::unique_ptr< GrFragmentProcessor > clone() const override
static GrFPResult Make(std::unique_ptr< GrFragmentProcessor > inputFP, GrClipEdgeType edgeType, int n, const float edges[])
GrFragmentProcessor(ClassID classID, OptimizationFlags optimizationFlags)