/* * Copyright 2020 Google Inc. * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ #ifndef SkSVGFeTurbulence_DEFINED #define SkSVGFeTurbulence_DEFINED #include "modules/svg/include/SkSVGFe.h" #include "modules/svg/include/SkSVGTypes.h" class SkSVGFeTurbulence : public SkSVGFe { public: static sk_sp Make() { return sk_sp(new SkSVGFeTurbulence()); } SVG_ATTR(BaseFrequency, SkSVGFeTurbulenceBaseFrequency, SkSVGFeTurbulenceBaseFrequency({})) SVG_ATTR(NumOctaves, SkSVGIntegerType, SkSVGIntegerType(1)) SVG_ATTR(Seed, SkSVGNumberType, SkSVGNumberType(0)) SVG_ATTR(TurbulenceType, SkSVGFeTurbulenceType, SkSVGFeTurbulenceType(SkSVGFeTurbulenceType::Type::kTurbulence)) protected: sk_sp onMakeImageFilter(const SkSVGRenderContext&, const SkSVGFilterContext&) const override; std::vector getInputs() const override { return {}; } bool parseAndSetAttribute(const char*, const char*) override; private: SkSVGFeTurbulence() : INHERITED(SkSVGTag::kFeTurbulence) {} using INHERITED = SkSVGFe; }; #endif // SkSVGFeTurbulence_DEFINED