| OLD | NEW |
| (Empty) |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #ifndef SKY_ENGINE_CORE_ANIMATION_CSS_CSSANIMATIONDATA_H_ | |
| 6 #define SKY_ENGINE_CORE_ANIMATION_CSS_CSSANIMATIONDATA_H_ | |
| 7 | |
| 8 #include "sky/engine/core/animation/Timing.h" | |
| 9 #include "sky/engine/core/animation/css/CSSTimingData.h" | |
| 10 #include "sky/engine/core/rendering/style/RenderStyleConstants.h" | |
| 11 | |
| 12 namespace blink { | |
| 13 | |
| 14 class CSSAnimationData final : public CSSTimingData { | |
| 15 public: | |
| 16 static PassOwnPtr<CSSAnimationData> create() | |
| 17 { | |
| 18 return adoptPtr(new CSSAnimationData); | |
| 19 } | |
| 20 | |
| 21 static PassOwnPtr<CSSAnimationData> create(const CSSAnimationData& animation
Data) | |
| 22 { | |
| 23 return adoptPtr(new CSSAnimationData(animationData)); | |
| 24 } | |
| 25 | |
| 26 bool animationsMatchForStyleRecalc(const CSSAnimationData& other) const; | |
| 27 | |
| 28 Timing convertToTiming(size_t index) const; | |
| 29 | |
| 30 const Vector<AtomicString>& nameList() const { return m_nameList; } | |
| 31 const Vector<double>& iterationCountList() const { return m_iterationCountLi
st; } | |
| 32 const Vector<Timing::PlaybackDirection>& directionList() const { return m_di
rectionList; } | |
| 33 const Vector<Timing::FillMode>& fillModeList() const { return m_fillModeList
; } | |
| 34 const Vector<EAnimPlayState>& playStateList() const { return m_playStateList
; } | |
| 35 | |
| 36 Vector<AtomicString>& nameList() { return m_nameList; } | |
| 37 Vector<double>& iterationCountList() { return m_iterationCountList; } | |
| 38 Vector<Timing::PlaybackDirection>& directionList() { return m_directionList;
} | |
| 39 Vector<Timing::FillMode>& fillModeList() { return m_fillModeList; } | |
| 40 Vector<EAnimPlayState>& playStateList() { return m_playStateList; } | |
| 41 | |
| 42 static const AtomicString& initialName(); | |
| 43 static Timing::PlaybackDirection initialDirection() { return Timing::Playbac
kDirectionNormal; } | |
| 44 static Timing::FillMode initialFillMode() { return Timing::FillModeNone; } | |
| 45 static double initialIterationCount() { return 1.0; } | |
| 46 static EAnimPlayState initialPlayState() { return AnimPlayStatePlaying; } | |
| 47 | |
| 48 private: | |
| 49 CSSAnimationData(); | |
| 50 explicit CSSAnimationData(const CSSAnimationData&); | |
| 51 | |
| 52 Vector<AtomicString> m_nameList; | |
| 53 Vector<double> m_iterationCountList; | |
| 54 Vector<Timing::PlaybackDirection> m_directionList; | |
| 55 Vector<Timing::FillMode> m_fillModeList; | |
| 56 Vector<EAnimPlayState> m_playStateList; | |
| 57 }; | |
| 58 | |
| 59 } // namespace blink | |
| 60 | |
| 61 #endif // SKY_ENGINE_CORE_ANIMATION_CSS_CSSANIMATIONDATA_H_ | |
| OLD | NEW |