SVGAnimatedTransformListPropertyTearOff.h [plain text]
#ifndef SVGAnimatedTransformListPropertyTearOff_h
#define SVGAnimatedTransformListPropertyTearOff_h
#include "SVGAnimatedListPropertyTearOff.h"
#include "SVGTransformList.h"
#include "SVGTransformListPropertyTearOff.h"
namespace WebCore {
class SVGAnimatedTransformListPropertyTearOff final : public SVGAnimatedListPropertyTearOff<SVGTransformList> {
public:
RefPtr<ListProperty> baseVal() override
{
if (m_baseVal)
return m_baseVal;
auto property = SVGTransformListPropertyTearOff::create(this, BaseValRole, m_values, m_wrappers);
m_baseVal = property.ptr();
return WTFMove(property);
}
RefPtr<ListProperty> animVal() override
{
if (m_animVal)
return m_animVal;
auto property = SVGTransformListPropertyTearOff::create(this, AnimValRole, m_values, m_wrappers);
m_animVal = property.ptr();
return WTFMove(property);
}
static Ref<SVGAnimatedTransformListPropertyTearOff> create(SVGElement* contextElement, const QualifiedName& attributeName, AnimatedPropertyType animatedPropertyType, SVGTransformList& values)
{
ASSERT(contextElement);
return adoptRef(*new SVGAnimatedTransformListPropertyTearOff(contextElement, attributeName, animatedPropertyType, values));
}
private:
SVGAnimatedTransformListPropertyTearOff(SVGElement* contextElement, const QualifiedName& attributeName, AnimatedPropertyType animatedPropertyType, SVGTransformList& values)
: SVGAnimatedListPropertyTearOff<SVGTransformList>(contextElement, attributeName, animatedPropertyType, values)
{
}
};
}
#endif // SVGAnimatedTransformListPropertyTearOff_h