Index: third_party/WebKit/Source/core/animation/InterpolationEnvironment.h |
diff --git a/third_party/WebKit/Source/core/animation/InterpolationEnvironment.h b/third_party/WebKit/Source/core/animation/InterpolationEnvironment.h |
index ac22bfa11075b0b3e6f4705a6a79092d590e10d3..aeb062eef6cc4fde60281e81b3a5f7e57e8b5b00 100644 |
--- a/third_party/WebKit/Source/core/animation/InterpolationEnvironment.h |
+++ b/third_party/WebKit/Source/core/animation/InterpolationEnvironment.h |
@@ -10,19 +10,36 @@ |
namespace blink { |
class StyleResolverState; |
+class SVGPropertyBase; |
+class SVGElement; |
class InterpolationEnvironment { |
STACK_ALLOCATED(); |
public: |
explicit InterpolationEnvironment(StyleResolverState& state) |
: m_state(&state) |
+ , m_svgElement(nullptr) |
+ , m_svgValueBase(nullptr) |
+ { } |
+ |
+ explicit InterpolationEnvironment(SVGElement& svgElement, const SVGPropertyBase& svgValueBase) |
+ : m_state(nullptr) |
+ , m_svgElement(&svgElement) |
+ , m_svgValueBase(&svgValueBase) |
{ } |
StyleResolverState& state() { ASSERT(m_state); return *m_state; } |
const StyleResolverState& state() const { ASSERT(m_state); return *m_state; } |
+ SVGElement& svgElement() { ASSERT(m_svgElement); return *m_svgElement; } |
+ const SVGElement& svgElement() const { ASSERT(m_svgElement); return *m_svgElement; } |
+ |
+ const SVGPropertyBase& svgValueBase() const { ASSERT(m_svgValueBase); return *m_svgValueBase; } |
+ |
private: |
StyleResolverState* m_state; |
+ SVGElement* m_svgElement; |
+ const SVGPropertyBase* m_svgValueBase; |
}; |
} // namespace blink |