Flutter Engine
The Flutter Engine
SkSVGFeMerge.h
Go to the documentation of this file.
1/*
2 * Copyright 2024 Google Inc.
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7
8#ifndef SkSVGFeMerge_DEFINED
9#define SkSVGFeMerge_DEFINED
10
15
16// https://www.w3.org/TR/SVG11/filters.html#feMergeNodeElement
18public:
19 static constexpr SkSVGTag tag = SkSVGTag::kFeMergeNode;
20
23 }
24
26
27protected:
28 bool parseAndSetAttribute(const char*, const char*) override;
29
30private:
31 SkSVGFeMergeNode() : INHERITED(tag) {}
32
34};
35
36// https://www.w3.org/TR/SVG11/filters.html#feMergeElement
37class SK_API SkSVGFeMerge : public SkSVGFe {
38public:
39 static constexpr SkSVGTag tag = SkSVGTag::kFeMerge;
40
42
43protected:
44 sk_sp<SkImageFilter> onMakeImageFilter(const SkSVGRenderContext&,
45 const SkSVGFilterContext&) const override;
46
47 std::vector<SkSVGFeInputType> getInputs() const override;
48
49private:
50 SkSVGFeMerge() : INHERITED(tag) {}
51
52 using INHERITED = SkSVGFe;
53};
54
55#endif // SkSVGFeMerge_DEFINED
#define SK_API
Definition: SkAPI.h:35
#define INHERITED(method,...)
Definition: SkRecorder.cpp:128
SkSVGTag
Definition: SkSVGNode.h:23
#define SVG_ATTR(attr_name, attr_type, attr_default)
Definition: SkSVGNode.h:210
static sk_sp< SkSVGFeMergeNode > Make()
Definition: SkSVGFeMerge.h:21
static sk_sp< SkSVGFeMerge > Make()
Definition: SkSVGFeMerge.h:41