Home | History | Annotate | Download | only in animation
      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 AnimationNodeTiming_h
      6 #define AnimationNodeTiming_h
      7 
      8 #include "core/animation/AnimationNode.h"
      9 #include "wtf/RefCounted.h"
     10 #include "wtf/text/WTFString.h"
     11 
     12 namespace WebCore {
     13 
     14 class AnimationNodeTiming : public RefCountedWillBeGarbageCollectedFinalized<AnimationNodeTiming> {
     15 public:
     16     static PassRefPtrWillBeRawPtr<AnimationNodeTiming> create(AnimationNode* parent);
     17     double delay();
     18     double endDelay();
     19     String fill();
     20     double iterationStart();
     21     double iterations();
     22     void getDuration(String propertyName, bool& element0Enabled, double& element0, bool& element1Enabled, String& element1);
     23     double playbackRate();
     24     String direction();
     25     String easing();
     26 
     27     void setDelay(double);
     28     void setEndDelay(double);
     29     void setFill(String);
     30     void setIterationStart(double);
     31     void setIterations(double);
     32     bool setDuration(String name, double duration);
     33     void setPlaybackRate(double);
     34     void setDirection(String);
     35     void setEasing(String);
     36 
     37     void trace(Visitor*);
     38 
     39 private:
     40     RefPtrWillBeMember<AnimationNode> m_parent;
     41     explicit AnimationNodeTiming(AnimationNode*);
     42 };
     43 
     44 } // namespace WebCore
     45 
     46 #endif
     47