#include "modules/sksg/include/SkSGMaskEffect.h"
#include "include/core/SkBlendMode.h"
#include "include/core/SkCanvas.h"
#include "include/core/SkColorFilter.h"
#include "include/core/SkPaint.h"
#include "include/effects/SkLumaColorFilter.h"
#include "include/private/base/SkAssert.h"
#include "include/private/base/SkTo.h"
#include "modules/sksg/include/SkSGNode.h"
class SkMatrix;
struct SkPoint;
namespace sksg {
static bool is_inverted(sksg::MaskEffect::Mode mode) { … }
static bool is_luma(sksg::MaskEffect::Mode mode) { … }
MaskEffect::MaskEffect(sk_sp<RenderNode> child, sk_sp<RenderNode> mask, Mode mode)
: … { … }
MaskEffect::~MaskEffect() { … }
void MaskEffect::onRender(SkCanvas* canvas, const RenderContext* ctx) const { … }
const RenderNode* MaskEffect::onNodeAt(const SkPoint& p) const { … }
SkRect MaskEffect::onRevalidate(InvalidationController* ic, const SkMatrix& ctm) { … }
}