FEDiffuseLighting.cpp [plain text]
#include "config.h"
#include "FEDiffuseLighting.h"
#include "LightSource.h"
#include <wtf/text/TextStream.h>
namespace WebCore {
FEDiffuseLighting::FEDiffuseLighting(Filter& filter, const Color& lightingColor, float surfaceScale, float diffuseConstant, float kernelUnitLengthX, float kernelUnitLengthY, Ref<LightSource>&& lightSource)
: FELighting(filter, DiffuseLighting, lightingColor, surfaceScale, diffuseConstant, 0, 0, kernelUnitLengthX, kernelUnitLengthY, WTFMove(lightSource))
{
}
Ref<FEDiffuseLighting> FEDiffuseLighting::create(Filter& filter, const Color& lightingColor, float surfaceScale, float diffuseConstant, float kernelUnitLengthX, float kernelUnitLengthY, Ref<LightSource>&& lightSource)
{
return adoptRef(*new FEDiffuseLighting(filter, lightingColor, surfaceScale, diffuseConstant, kernelUnitLengthX, kernelUnitLengthY, WTFMove(lightSource)));
}
FEDiffuseLighting::~FEDiffuseLighting() = default;
bool FEDiffuseLighting::setDiffuseConstant(float diffuseConstant)
{
if (m_diffuseConstant == diffuseConstant)
return false;
m_diffuseConstant = diffuseConstant;
return true;
}
TextStream& FEDiffuseLighting::externalRepresentation(TextStream& ts, RepresentationType representation) const
{
ts << indent << "[feDiffuseLighting";
FilterEffect::externalRepresentation(ts, representation);
ts << " surfaceScale=\"" << m_surfaceScale << "\" "
<< "diffuseConstant=\"" << m_diffuseConstant << "\" "
<< "kernelUnitLength=\"" << m_kernelUnitLengthX << ", " << m_kernelUnitLengthY << "\"]\n";
TextStream::IndentScope indentScope(ts);
inputEffect(0)->externalRepresentation(ts, representation);
return ts;
}
}