21 : fTransparent(transparent)
22 , fForceGeometric(forceGeometric) {
39 static const char kTransChars[2] = {
42 static const char kGeomChars[2] = {
46 fBaseName.
printf(
"%s_%c_%c",
root, kTransChars[fTransparent], kGeomChars[fForceGeometric]);
73 if (fForceGeometric) {
85 for (
int i = 0;
i < loops; ++
i) {
constexpr SkColor SK_ColorWHITE
@ kGeometricOnly_ShadowFlag
@ kTransparentOccluder_ShadowFlag
virtual void setupPaint(SkPaint *paint)
void computeName(const char root[])
const char * onGetName() override
void onDelayedSetup() override
void onDraw(int loops, SkCanvas *canvas) override
ShadowBench(bool transparent, bool forceGeometric)
void private_draw_shadow_rec(const SkPath &, const SkDrawShadowRec &)
SkPath & addRRect(const SkRRect &rrect, SkPathDirection dir=SkPathDirection::kCW)
static SkRRect MakeRectXY(const SkRect &rect, SkScalar xRad, SkScalar yRad)
void printf(const char format[],...) SK_PRINTF_LIKE(2
const char * c_str() const
sk_sp< SkBlender > blender SkRect rect
static SkPoint3 Make(SkScalar x, SkScalar y, SkScalar z)
static constexpr SkRect MakeXYWH(float x, float y, float w, float h)