172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project/*
272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * Copyright (c) 2000 World Wide Web Consortium,
372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * (Massachusetts Institute of Technology, Institut National de
472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * Recherche en Informatique et en Automatique, Keio University). All
572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * Rights Reserved. This program is distributed under the W3C's Software
672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * Intellectual Property License. This program is distributed in the
772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more
1072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * details.
1172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project *
1272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * Difference to the original copy of this file:
1372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project *   1) ADD public static final short FILL_AUTO = 2;
1472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project *   2) ADD public short getFillDefault();
1572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project *   3) AND public void setFillDefault(short fillDefault)
1672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project *                   throws DOMException;
1772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project */
1872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
1972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Projectpackage org.w3c.dom.smil;
2072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
2172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Projectimport org.w3c.dom.DOMException;
2272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
2372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project/**
2472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project *  This interface defines the set of timing attributes that are common to all
2572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * timed elements.
2672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project */
2772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Projectpublic interface ElementTime {
2872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    /**
2972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *  The desired value (as a list of times) of the  begin instant of this
3072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * node.
3172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * @exception DOMException
3272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *    NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly.
3372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     */
3472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public TimeList getBegin();
3572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public void setBegin(TimeList begin)
3672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project                     throws DOMException;
3772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
3872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    /**
3972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *  The list of active  ends for this node.
4072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * @exception DOMException
4172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *    NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly.
4272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     */
4372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public TimeList getEnd();
4472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public void setEnd(TimeList end)
4572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project                     throws DOMException;
4672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
4772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    /**
4872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *  The desired simple  duration value of this node in seconds. Negative
4972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * value means "indefinite".
5072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * @exception DOMException
5172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *    NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly.
5272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     */
5372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public float getDur();
5472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public void setDur(float dur)
5572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project                     throws DOMException;
5672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
5772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    // restartTypes
5872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public static final short RESTART_ALWAYS            = 0;
5972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public static final short RESTART_NEVER             = 1;
6072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public static final short RESTART_WHEN_NOT_ACTIVE   = 2;
6172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
6272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    /**
6372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *  A code representing the value of the  restart attribute, as defined
6472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * above. Default value is <code>RESTART_ALWAYS</code> .
6572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * @exception DOMException
6672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *    NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly.
6772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     */
6872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public short getRestart();
6972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public void setRestart(short restart)
7072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project                     throws DOMException;
7172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
7272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    // fillTypes
7372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public static final short FILL_REMOVE               = 0;
7472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public static final short FILL_FREEZE               = 1;
7572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public static final short FILL_AUTO                 = 2;
7672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
7772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    /**
7872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *  A code representing the value of the  fill attribute, as defined
7972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * above. Default value is <code>FILL_REMOVE</code> .
8072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * @exception DOMException
8172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *    NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly.
8272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     */
8372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public short getFill();
8472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public void setFill(short fill)
8572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project                     throws DOMException;
8672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
8772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    /**
8872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *  The  repeatCount attribute causes the element to play repeatedly
8972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * (loop) for the specified number of times. A negative value repeat the
9072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * element indefinitely. Default value is 0 (unspecified).
9172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * @exception DOMException
9272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *    NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly.
9372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     */
9472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public float getRepeatCount();
9572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public void setRepeatCount(float repeatCount)
9672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project                     throws DOMException;
9772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
9872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    /**
9972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *  The  repeatDur causes the element to play repeatedly (loop) for the
10072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * specified duration in milliseconds. Negative means "indefinite".
10172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * @exception DOMException
10272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *    NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly.
10372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     */
10472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public float getRepeatDur();
10572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public void setRepeatDur(float repeatDur)
10672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project                     throws DOMException;
10772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
10872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    /**
10972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *  Causes this element to begin the local timeline (subject to sync
11072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * constraints).
11172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * @return  <code>true</code> if the method call was successful and the
11272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *   element was begun. <code>false</code> if the method call failed.
11372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *   Possible reasons for failure include:  The element doesn't support
11472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *   the <code>beginElement</code> method. (the <code>beginEvent</code>
11572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *   attribute is not set to <code>"undefinite"</code> )  The element is
11672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *   already active and can't be restart when it is active. (the
11772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *   <code>restart</code> attribute is set to <code>"whenNotActive"</code>
11872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *    )  The element is active or has been active and can't be restart.
11972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *   (the <code>restart</code> attribute is set to <code>"never"</code> ).
12072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *
12172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     */
12272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public boolean beginElement();
12372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
12472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    /**
12572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *  Causes this element to end the local timeline (subject to sync
12672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * constraints).
12772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * @return  <code>true</code> if the method call was successful and the
12872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *   element was endeed. <code>false</code> if method call failed.
12972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *   Possible reasons for failure include:  The element doesn't support
13072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *   the <code>endElement</code> method. (the <code>endEvent</code>
13172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *   attribute is not set to <code>"undefinite"</code> )  The element is
13272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *   not active.
13372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     */
13472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public boolean endElement();
13572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
13672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    /**
13772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *  Causes this element to pause the local timeline (subject to sync
13872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * constraints).
13972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     */
14072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public void pauseElement();
14172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
14272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    /**
14372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *  Causes this element to resume a paused local timeline.
14472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     */
14572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public void resumeElement();
14672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
14772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    /**
14872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *  Seeks this element to the specified point on the local timeline
14972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * (subject to sync constraints).  If this is a timeline, this must seek
15072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * the entire timeline (i.e. propagate to all timeChildren).
15172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     * @param seekTo  The desired position on the local timeline in
15272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     *   milliseconds.
15372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project     */
15472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public void seekElement(float seekTo);
15572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
15672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public short getFillDefault();
15772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project    public void setFillDefault(short fillDefault)
15872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project                     throws DOMException;
15972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
16072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project}
16172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project
162