| /* |
| * Copyright (c) 2000 World Wide Web Consortium, |
| * (Massachusetts Institute of Technology, Institut National de |
| * Recherche en Informatique et en Automatique, Keio University). All |
| * Rights Reserved. This program is distributed under the W3C's Software |
| * Intellectual Property License. This program is distributed in the |
| * hope that it will be useful, but WITHOUT ANY WARRANTY; without even |
| * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR |
| * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more |
| * details. |
| */ |
| |
| package org.w3c.dom.smil; |
| |
| import org.w3c.dom.DOMException; |
| import org.w3c.dom.Element; |
| |
| /** |
| * The <code>Time</code> interface is a datatype that represents times within |
| * the timegraph. A <code>Time</code> has a type, key values to describe the |
| * time, and a boolean to indicate whether the values are currently |
| * unresolved. Still need to address the wallclock values. |
| */ |
| public interface Time { |
| /** |
| * A boolean indicating whether the current <code>Time</code> has been |
| * fully resolved to the document schedule. Note that for this to be |
| * true, the current <code>Time</code> must be defined (not indefinite), |
| * the syncbase and all <code>Time</code> 's that the syncbase depends on |
| * must be defined (not indefinite), and the begin <code>Time</code> of |
| * all ascendent time containers of this element and all <code>Time</code> |
| * elements that this depends upon must be defined (not indefinite). |
| * <br> If this <code>Time</code> is based upon an event, this |
| * <code>Time</code> will only be resolved once the specified event has |
| * happened, subject to the constraints of the time container. |
| * <br> Note that this may change from true to false when the parent time |
| * container ends its simple duration (including when it repeats or |
| * restarts). |
| */ |
| public boolean getResolved(); |
| |
| /** |
| * The clock value in seconds relative to the parent time container begin. |
| * This indicates the resolved time relationship to the parent time |
| * container. This is only valid if resolved is true. |
| */ |
| public double getResolvedOffset(); |
| |
| // TimeTypes |
| public static final short SMIL_TIME_INDEFINITE = 0; |
| public static final short SMIL_TIME_OFFSET = 1; |
| public static final short SMIL_TIME_SYNC_BASED = 2; |
| public static final short SMIL_TIME_EVENT_BASED = 3; |
| public static final short SMIL_TIME_WALLCLOCK = 4; |
| public static final short SMIL_TIME_MEDIA_MARKER = 5; |
| |
| /** |
| * A code representing the type of the underlying object, as defined |
| * above. |
| */ |
| public short getTimeType(); |
| |
| /** |
| * The clock value in seconds relative to the syncbase or eventbase. |
| * Default value is <code>0</code> . |
| * @exception DOMException |
| * NO_MODIFICATION_ALLOWED_ERR: Raised on attempts to modify this |
| * readonly attribute. |
| */ |
| public double getOffset(); |
| public void setOffset(double offset) |
| throws DOMException; |
| |
| /** |
| * The base element for a sync-based or event-based time. |
| * @exception DOMException |
| * NO_MODIFICATION_ALLOWED_ERR: Raised on attempts to modify this |
| * readonly attribute. |
| */ |
| public Element getBaseElement(); |
| public void setBaseElement(Element baseElement) |
| throws DOMException; |
| |
| /** |
| * If <code>true</code> , indicates that a sync-based time is relative to |
| * the begin of the baseElement. If <code>false</code> , indicates that a |
| * sync-based time is relative to the active end of the baseElement. |
| * @exception DOMException |
| * NO_MODIFICATION_ALLOWED_ERR: Raised on attempts to modify this |
| * readonly attribute. |
| */ |
| public boolean getBaseBegin(); |
| public void setBaseBegin(boolean baseBegin) |
| throws DOMException; |
| |
| /** |
| * The name of the event for an event-based time. Default value is |
| * <code>null</code> . |
| * @exception DOMException |
| * NO_MODIFICATION_ALLOWED_ERR: Raised on attempts to modify this |
| * readonly attribute. |
| */ |
| public String getEvent(); |
| public void setEvent(String event) |
| throws DOMException; |
| |
| /** |
| * The name of the marker from the media element, for media marker times. |
| * Default value is <code>null</code> . |
| * @exception DOMException |
| * NO_MODIFICATION_ALLOWED_ERR: Raised on attempts to modify this |
| * readonly attribute. |
| */ |
| public String getMarker(); |
| public void setMarker(String marker) |
| throws DOMException; |
| |
| } |
| |