Home | History | Annotate | Download | only in smil
      1 /*
      2  * Copyright (c) 2000 World Wide Web Consortium,
      3  * (Massachusetts Institute of Technology, Institut National de
      4  * Recherche en Informatique et en Automatique, Keio University). All
      5  * Rights Reserved. This program is distributed under the W3C's Software
      6  * Intellectual Property License. This program is distributed in the
      7  * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
      8  * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
      9  * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more
     10  * details.
     11  */
     12 
     13 package org.w3c.dom.smil;
     14 
     15 import org.w3c.dom.DOMException;
     16 
     17 /**
     18  *  This interface support use-cases commonly associated with animation.
     19  * "accelerate" and "decelerate" are float values in the timing draft and
     20  * percentage values even in this draft if both of them represent a
     21  * percentage.
     22  */
     23 public interface ElementTimeManipulation {
     24     /**
     25      *  Defines the playback  speed of element time. The value is specified as
     26      * a multiple of normal (parent time container) play speed.  Legal values
     27      * are signed floating point values.  Zero values are not allowed.  The
     28      * default is <code>1.0</code> (no modification of speed).
     29      * @exception DOMException
     30      *    NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly.
     31      */
     32     public float getSpeed();
     33     public void setSpeed(float speed)
     34                             throws DOMException;
     35 
     36     /**
     37      *  The percentage value of the  simple acceleration of time for the
     38      * element. Allowed values are from <code>0</code> to <code>100</code> .
     39      * Default value is <code>0</code> (no acceleration).
     40      * <br> The sum of the values for accelerate and decelerate must not exceed
     41      *  100. If it does, the deceleration value will be reduced to make the
     42      * sum legal.
     43      * @exception DOMException
     44      *    NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly.
     45      */
     46     public float getAccelerate();
     47     public void setAccelerate(float accelerate)
     48                             throws DOMException;
     49 
     50     /**
     51      *  The percentage value of the  simple decelerate of time for the
     52      * element. Allowed values are from <code>0</code> to <code>100</code> .
     53      * Default value is <code>0</code> (no deceleration).
     54      * <br> The sum of the values for accelerate and decelerate must not exceed
     55      *  100. If it does, the deceleration value will be reduced to make the
     56      * sum legal.
     57      * @exception DOMException
     58      *    NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly.
     59      */
     60     public float getDecelerate();
     61     public void setDecelerate(float decelerate)
     62                             throws DOMException;
     63 
     64     /**
     65      *  The  autoReverse attribute controls the "play forwards then backwards"
     66      * functionality. Default value is <code>false</code> .
     67      * @exception DOMException
     68      *    NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly.
     69      */
     70     public boolean getAutoReverse();
     71     public void setAutoReverse(boolean autoReverse)
     72                             throws DOMException;
     73 
     74 }
     75 
     76