SVGFEDiffuseLighting.h [plain text]
#ifndef SVGFEDiffuseLighting_h
#define SVGFEDiffuseLighting_h
#if ENABLE(SVG) && ENABLE(SVG_FILTERS)
#include "Color.h"
#include "SVGFilterEffect.h"
namespace WebCore {
class SVGLightSource;
class SVGFEDiffuseLighting : public SVGFilterEffect {
public:
SVGFEDiffuseLighting(SVGResourceFilter*);
virtual ~SVGFEDiffuseLighting();
Color lightingColor() const;
void setLightingColor(const Color&);
float surfaceScale() const;
void setSurfaceScale(float);
float diffuseConstant() const;
void setDiffuseConstant(float);
float kernelUnitLengthX() const;
void setKernelUnitLengthX(float);
float kernelUnitLengthY() const;
void setKernelUnitLengthY(float);
const SVGLightSource* lightSource() const;
void setLightSource(SVGLightSource*);
virtual TextStream& externalRepresentation(TextStream&) const;
#if PLATFORM(CI)
virtual CIFilter* getCIFilter(const FloatRect& bbox) const;
#endif
private:
Color m_lightingColor;
float m_surfaceScale;
float m_diffuseConstant;
float m_kernelUnitLengthX;
float m_kernelUnitLengthY;
SVGLightSource* m_lightSource;
};
}
#endif // ENABLE(SVG) && ENABLE(SVG_FILTERS)
#endif // SVGFEDiffuseLighting_h