Flutter Engine
The Flutter Engine
SkSVGFeLightSource.h
Go to the documentation of this file.
1/*
2 * Copyright 2021 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 SkSVGFeLightSource_DEFINED
9#define SkSVGFeLightSource_DEFINED
10
14
16public:
18 SkDebugf("cannot append child nodes to an SVG light source.\n");
19 }
20
21protected:
22 explicit SkSVGFeLightSource(SkSVGTag tag) : INHERITED(tag) {}
23
24private:
26};
27
29public:
32 }
33
35
36 SVG_ATTR(Azimuth , SkSVGNumberType, 0)
37 SVG_ATTR(Elevation, SkSVGNumberType, 0)
38
39private:
41
42 bool parseAndSetAttribute(const char*, const char*) override;
43
44 using INHERITED = SkSVGFeLightSource;
45};
46
48public:
51 }
52
56
57private:
59
60 bool parseAndSetAttribute(const char*, const char*) override;
61
62 using INHERITED = SkSVGFeLightSource;
63};
64
66public:
69 }
70
74 SVG_ATTR(PointsAtX , SkSVGNumberType, 0)
75 SVG_ATTR(PointsAtY , SkSVGNumberType, 0)
76 SVG_ATTR(PointsAtZ , SkSVGNumberType, 0)
77 SVG_ATTR(SpecularExponent, SkSVGNumberType, 1)
78
79 SVG_OPTIONAL_ATTR(LimitingConeAngle, SkSVGNumberType)
80
81private:
82 SkSVGFeSpotLight() : INHERITED(SkSVGTag::kFeSpotLight) {}
83
84 bool parseAndSetAttribute(const char*, const char*) override;
85
86 using INHERITED = SkSVGFeLightSource;
87};
88
89#endif // SkSVGFeLightSource_DEFINED
#define SK_API
Definition: SkAPI.h:35
void SK_SPI SkDebugf(const char format[],...) SK_PRINTF_LIKE(1
#define INHERITED(method,...)
Definition: SkRecorder.cpp:128
#define SVG_OPTIONAL_ATTR(attr_name, attr_type)
Definition: SkSVGNode.h:220
SkSVGTag
Definition: SkSVGNode.h:23
@ kFeDistantLight
#define SVG_ATTR(attr_name, attr_type, attr_default)
Definition: SkSVGNode.h:210
SkScalar SkSVGNumberType
Definition: SkSVGTypes.h:27
static const SkScalar Y
Definition: StrokeBench.cpp:55
static const SkScalar X
Definition: StrokeBench.cpp:54
#define Z
SkPoint3 computeDirection() const
static sk_sp< SkSVGFeDistantLight > Make()
SkSVGFeLightSource(SkSVGTag tag)
void appendChild(sk_sp< SkSVGNode >) final
static sk_sp< SkSVGFePointLight > Make()
static sk_sp< SkSVGFeSpotLight > Make()