Code

Add w3c svg-dom and smil-dom java interfaces
[inkscape.git] / src / bind / java / org / w3c / dom / smil / Time.java
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  */
13 package org.w3c.dom.smil;
15 import org.w3c.dom.DOMException;
16 import org.w3c.dom.Element;
18 /**
19  *  The <code>Time</code> interface is a datatype that represents times within 
20  * the timegraph. A <code>Time</code> has a type, key values to describe the 
21  * time, and a boolean to indicate whether the values are currently 
22  * unresolved.  Still need to address the wallclock values. 
23  */
24 public interface Time {
25     /**
26      *  A boolean indicating whether the current <code>Time</code> has been 
27      * fully resolved to the document schedule.  Note that for this to be 
28      * true, the current <code>Time</code> must be defined (not indefinite), 
29      * the syncbase and all <code>Time</code> 's that the syncbase depends on 
30      * must be defined (not indefinite), and the begin <code>Time</code> of 
31      * all ascendent time containers of this element and all <code>Time</code>
32      *  elements that this depends upon must be defined (not indefinite). 
33      * <br> If this <code>Time</code> is based upon an event, this 
34      * <code>Time</code> will only be resolved once the specified event has 
35      * happened, subject to the constraints of the time container. 
36      * <br> Note that this may change from true to false when the parent time 
37      * container ends its simple duration (including when it repeats or 
38      * restarts). 
39      */
40     public boolean getResolved();
42     /**
43      *  The clock value in seconds relative to the parent time container begin.
44      *  This indicates the resolved time relationship to the parent time 
45      * container.  This is only valid if resolved is true. 
46      */
47     public double getResolvedOffset();
49     // TimeTypes
50     public static final short SMIL_TIME_INDEFINITE      = 0;
51     public static final short SMIL_TIME_OFFSET          = 1;
52     public static final short SMIL_TIME_SYNC_BASED      = 2;
53     public static final short SMIL_TIME_EVENT_BASED     = 3;
54     public static final short SMIL_TIME_WALLCLOCK       = 4;
55     public static final short SMIL_TIME_MEDIA_MARKER    = 5;
57     /**
58      *  A code representing the type of the underlying object, as defined 
59      * above. 
60      */
61     public short getTimeType();
63     /**
64      *  The clock value in seconds relative to the syncbase or eventbase. 
65      * Default value is <code>0</code> . 
66      * @exception DOMException
67      *    NO_MODIFICATION_ALLOWED_ERR: Raised on attempts to modify this 
68      *   readonly attribute. 
69      */
70     public double getOffset();
71     public void setOffset(double offset)
72                                       throws DOMException;
74     /**
75      *  The base element for a sync-based or event-based time. 
76      * @exception DOMException
77      *    NO_MODIFICATION_ALLOWED_ERR: Raised on attempts to modify this 
78      *   readonly attribute. 
79      */
80     public Element getBaseElement();
81     public void setBaseElement(Element baseElement)
82                                       throws DOMException;
84     /**
85      *  If <code>true</code> , indicates that a sync-based time is relative to 
86      * the begin of the baseElement.  If <code>false</code> , indicates that a
87      *  sync-based time is relative to the active end of the baseElement. 
88      * @exception DOMException
89      *    NO_MODIFICATION_ALLOWED_ERR: Raised on attempts to modify this 
90      *   readonly attribute. 
91      */
92     public boolean getBaseBegin();
93     public void setBaseBegin(boolean baseBegin)
94                                       throws DOMException;
96     /**
97      *  The name of the event for an event-based time. Default value is 
98      * <code>null</code> . 
99      * @exception DOMException
100      *    NO_MODIFICATION_ALLOWED_ERR: Raised on attempts to modify this 
101      *   readonly attribute. 
102      */
103     public String getEvent();
104     public void setEvent(String event)
105                                       throws DOMException;
107     /**
108      *  The name of the marker from the media element, for media marker times. 
109      * Default value is <code>null</code> . 
110      * @exception DOMException
111      *    NO_MODIFICATION_ALLOWED_ERR: Raised on attempts to modify this 
112      *   readonly attribute. 
113      */
114     public String getMarker();
115     public void setMarker(String marker)
116                                       throws DOMException;