SVGFESpecularLightingElement.h [plain text]
#pragma once
#include "FESpecularLighting.h"
#include "SVGAnimatedNumber.h"
#include "SVGFELightElement.h"
#include "SVGFilterPrimitiveStandardAttributes.h"
namespace WebCore {
class SVGFESpecularLightingElement final : public SVGFilterPrimitiveStandardAttributes {
public:
static Ref<SVGFESpecularLightingElement> create(const QualifiedName&, Document&);
void lightElementAttributeChanged(const SVGFELightElement*, const QualifiedName&);
private:
SVGFESpecularLightingElement(const QualifiedName&, Document&);
void parseAttribute(const QualifiedName&, const AtomicString&) override;
bool setFilterEffectAttribute(FilterEffect*, const QualifiedName&) override;
void svgAttributeChanged(const QualifiedName&) override;
RefPtr<FilterEffect> build(SVGFilterBuilder*, Filter&) override;
static const AtomicString& kernelUnitLengthXIdentifier();
static const AtomicString& kernelUnitLengthYIdentifier();
BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGFESpecularLightingElement)
DECLARE_ANIMATED_STRING(In1, in1)
DECLARE_ANIMATED_NUMBER(SpecularConstant, specularConstant)
DECLARE_ANIMATED_NUMBER(SpecularExponent, specularExponent)
DECLARE_ANIMATED_NUMBER(SurfaceScale, surfaceScale)
DECLARE_ANIMATED_NUMBER(KernelUnitLengthX, kernelUnitLengthX)
DECLARE_ANIMATED_NUMBER(KernelUnitLengthY, kernelUnitLengthY)
END_DECLARE_ANIMATED_PROPERTIES
};
}