/* * Copyright 2021 Google Inc. * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ #ifndef SkSVGFeImage_DEFINED #define SkSVGFeImage_DEFINED #include "include/core/SkRefCnt.h" #include "include/private/base/SkAPI.h" #include "modules/svg/include/SkSVGFe.h" #include "modules/svg/include/SkSVGNode.h" #include "modules/svg/include/SkSVGTypes.h" #include class SkImageFilter; class SkSVGFilterContext; class SkSVGRenderContext; class SK_API SkSVGFeImage : public SkSVGFe { public: static sk_sp Make() { return sk_sp(new SkSVGFeImage()); } SVG_ATTR(Href , SkSVGIRI , SkSVGIRI()) SVG_ATTR(PreserveAspectRatio, SkSVGPreserveAspectRatio, SkSVGPreserveAspectRatio()) protected: bool parseAndSetAttribute(const char*, const char*) override; sk_sp onMakeImageFilter(const SkSVGRenderContext&, const SkSVGFilterContext&) const override; std::vector getInputs() const override { return {}; } private: SkSVGFeImage() : INHERITED(SkSVGTag::kFeImage) {} using INHERITED = SkSVGFe; }; #endif // SkSVGFeImage_DEFINED