/* * 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 Time interface is a datatype that represents times within * the timegraph. A Time 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 Time has been * fully resolved to the document schedule. Note that for this to be * true, the current Time must be defined (not indefinite), * the syncbase and all Time 's that the syncbase depends on * must be defined (not indefinite), and the begin Time of * all ascendent time containers of this element and all Time * elements that this depends upon must be defined (not indefinite). *
If this Time is based upon an event, this * Time will only be resolved once the specified event has * happened, subject to the constraints of the time container. *
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 0 . * @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 true , indicates that a sync-based time is relative to * the begin of the baseElement. If false , 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 * null . * @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 null . * @exception DOMException * NO_MODIFICATION_ALLOWED_ERR: Raised on attempts to modify this * readonly attribute. */ public String getMarker(); public void setMarker(String marker) throws DOMException; }