7#ifndef SkConicalGradient_DEFINED
8#define SkConicalGradient_DEFINED
90 friend void ::SkRegisterConicalGradientShaderFlattenable();
static void info(const char *fmt,...) SK_PRINTF_LIKE(1
static sk_sp< Effect > Create()
#define SK_FLATTENABLE_HOOKS(type)
static bool SkScalarNearlyZero(SkScalar x, SkScalar tolerance=SK_ScalarNearlyZero)
const SkPoint & getEndCenter() const
SkScalar getEndRadius() const
const SkPoint & getStartCenter() const
SkScalar getDiffRadius() const
SkScalar getCenterX1() const
void flatten(SkWriteBuffer &buffer) const override
SkScalar getStartRadius() const
GradientType asGradient(GradientInfo *info, SkMatrix *localMatrix) const override
const FocalData & getFocalData() const
void appendGradientStages(SkArenaAlloc *alloc, SkRasterPipeline *tPipeline, SkRasterPipeline *postPipeline) const override
bool isOpaque() const override
static const uint8_t buffer[]
bool set(SkScalar r0, SkScalar r1, SkMatrix *matrix)
bool isNativelyFocal() const
bool isWellBehaved() const
bool isFocalOnCircle() const
static float Distance(const SkPoint &a, const SkPoint &b)