blob: f2e0447ee71683cc3e04ab169714bbbbba2df8b1 [file]
/*
* Copyright 2021 Google LLC
*
* 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/SkAPI.h"
#include "modules/svg/include/SkSVGFe.h"
#include "modules/svg/include/SkSVGNode.h"
#include "modules/svg/include/SkSVGTypes.h"
#include <vector>
class SkImageFilter;
class SkSVGFilterContext;
class SkSVGRenderContext;
class SK_API SkSVGFeImage : public SkSVGFe {
public:
static sk_sp<SkSVGFeImage> Make() { return sk_sp<SkSVGFeImage>(new SkSVGFeImage()); }
SVG_ATTR(Href , SkSVGIRI , SkSVGIRI())
SVG_ATTR(PreserveAspectRatio, SkSVGPreserveAspectRatio, SkSVGPreserveAspectRatio())
protected:
bool parseAndSetAttribute(const char*, const char*) override;
sk_sp<SkImageFilter> onMakeImageFilter(const SkSVGRenderContext&,
const SkSVGFilterContext&) const override;
std::vector<SkSVGFeInputType> getInputs() const override { return {}; }
private:
SkSVGFeImage() : INHERITED(SkSVGTag::kFeImage) {}
using INHERITED = SkSVGFe;
};
#endif // SkSVGFeImage_DEFINED