172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project/* 272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * Copyright (C) 2007-2008 Esmertec AG. 372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * Copyright (C) 2007-2008 The Android Open Source Project 472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * 572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * you may not use this file except in compliance with the License. 772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * You may obtain a copy of the License at 872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * 972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 1072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * 1172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * Unless required by applicable law or agreed to in writing, software 1272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 1372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * See the License for the specific language governing permissions and 1572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * limitations under the License. 1672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project */ 1772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 1872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Projectpackage com.android.mms.dom.smil; 1972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 2072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Projectimport org.w3c.dom.DOMException; 2172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Projectimport org.w3c.dom.events.DocumentEvent; 2272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Projectimport org.w3c.dom.events.Event; 2372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Projectimport org.w3c.dom.smil.ElementTime; 2472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Projectimport org.w3c.dom.smil.SMILMediaElement; 2572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Projectimport org.w3c.dom.smil.TimeList; 2672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 2772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Projectimport android.util.Log; 2872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 29d64419030e1fec1e751695dab3bd7236e2fb0214Roger Chenimport com.android.mms.dom.events.EventImpl; 30d64419030e1fec1e751695dab3bd7236e2fb0214Roger Chen 3172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Projectpublic class SmilMediaElementImpl extends SmilElementImpl implements 3272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project SMILMediaElement { 3372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public final static String SMIL_MEDIA_START_EVENT = "SmilMediaStart"; 3472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public final static String SMIL_MEDIA_END_EVENT = "SmilMediaEnd"; 3572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public final static String SMIL_MEDIA_PAUSE_EVENT = "SmilMediaPause"; 3672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public final static String SMIL_MEDIA_SEEK_EVENT = "SmilMediaSeek"; 3786b3e552c250704de7abeab5553bab664fa01f64Wei Huang private final static String TAG = "Mms:smil"; 3872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project private static final boolean DEBUG = false; 39150c4179995cc0a75f934ef194372f9295957ca2Joe Onorato private static final boolean LOCAL_LOGV = false; 4072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 4172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project ElementTime mElementTime = new ElementTimeImpl(this) { 4272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project private Event createEvent(String eventType) { 4372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project DocumentEvent doc = 4472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project (DocumentEvent)SmilMediaElementImpl.this.getOwnerDocument(); 4572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project Event event = doc.createEvent("Event"); 4672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project event.initEvent(eventType, false, false); 4772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project if (LOCAL_LOGV) { 4872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project Log.v(TAG, "Dispatching 'begin' event to " 4972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project + SmilMediaElementImpl.this.getTagName() + " " 5072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project + SmilMediaElementImpl.this.getSrc() + " at " 5172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project + System.currentTimeMillis()); 5272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 5372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return event; 5472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 5572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 5672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project private Event createEvent(String eventType, int seekTo) { 5772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project DocumentEvent doc = 5872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project (DocumentEvent)SmilMediaElementImpl.this.getOwnerDocument(); 591931fe06a209e2ed3497db0248eec31dbe95d352Jesse Wilson EventImpl event = (EventImpl) doc.createEvent("Event"); 6072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project event.initEvent(eventType, false, false, seekTo); 6172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project if (LOCAL_LOGV) { 6272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project Log.v(TAG, "Dispatching 'begin' event to " 6372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project + SmilMediaElementImpl.this.getTagName() + " " 6472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project + SmilMediaElementImpl.this.getSrc() + " at " 6572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project + System.currentTimeMillis()); 6672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 6772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return event; 6872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 6972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 7072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public boolean beginElement() { 7172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project Event startEvent = createEvent(SMIL_MEDIA_START_EVENT); 7272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project dispatchEvent(startEvent); 7372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return true; 7472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 7572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 7672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public boolean endElement() { 7772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project Event endEvent = createEvent(SMIL_MEDIA_END_EVENT); 7872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project dispatchEvent(endEvent); 7972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return true; 8072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 8172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 8272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void resumeElement() { 8372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project Event resumeEvent = createEvent(SMIL_MEDIA_START_EVENT); 8472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project dispatchEvent(resumeEvent); 8572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 8672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 8772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void pauseElement() { 8872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project Event pauseEvent = createEvent(SMIL_MEDIA_PAUSE_EVENT); 8972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project dispatchEvent(pauseEvent); 9072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 9172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 9272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void seekElement(float seekTo) { 9372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project Event seekEvent = createEvent(SMIL_MEDIA_SEEK_EVENT, (int) seekTo); 9472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project dispatchEvent(seekEvent); 9572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 9672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 9772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project @Override 9872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public float getDur() { 9972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project float dur = super.getDur(); 10072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project if (dur == 0) { 10172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project // Duration is not specified, So get the implicit duration. 10272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project String tag = getTagName(); 10372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project if (tag.equals("video") || tag.equals("audio")) { 10472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project // Continuous media 10572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project // FIXME Should get the duration of the media. "indefinite" instead here. 10672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project dur = -1.0F; 10772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } else if (tag.equals("text") || tag.equals("img")) { 10872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project // Discrete media 10972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project dur = 0; 11072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } else { 11172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project Log.w(TAG, "Unknown media type"); 11272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 11372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 11472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return dur; 11572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 11672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 11772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project @Override 11872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project ElementTime getParentElementTime() { 11972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return ((SmilParElementImpl) mSmilElement.getParentNode()).mParTimeContainer; 12072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 12172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project }; 12272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 12372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project /* 12472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * Internal Interface 12572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project */ 12672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 12772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project SmilMediaElementImpl(SmilDocumentImpl owner, String tagName) { 12872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project super(owner, tagName); 12972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 13072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 13172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project /* 13272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * SMILMediaElement Interface 13372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project */ 13472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 13572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public String getAbstractAttr() { 13672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return this.getAttribute("abstract"); 13772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 13872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 13972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public String getAlt() { 14072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return this.getAttribute("alt"); 14172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 14272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 14372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public String getAuthor() { 14472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return this.getAttribute("author"); 14572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 14672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 14772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public String getClipBegin() { 14872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return this.getAttribute("clipBegin"); 14972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 15072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 15172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public String getClipEnd() { 15272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return this.getAttribute("clipEnd"); 15372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 15472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 15572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public String getCopyright() { 15672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return this.getAttribute("copyright"); 15772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 15872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 15972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public String getLongdesc() { 16072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return this.getAttribute("longdesc"); 16172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 16272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 16372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public String getPort() { 16472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return this.getAttribute("port"); 16572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 16672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 16772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public String getReadIndex() { 16872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return this.getAttribute("readIndex"); 16972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 17072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 17172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public String getRtpformat() { 17272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return this.getAttribute("rtpformat"); 17372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 17472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 17572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public String getSrc() { 17672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return this.getAttribute("src"); 17772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 17872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 17972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public String getStripRepeat() { 18072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return this.getAttribute("stripRepeat"); 18172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 18272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 18372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public String getTitle() { 18472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return this.getAttribute("title"); 18572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 18672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 18772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public String getTransport() { 18872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return this.getAttribute("transport"); 18972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 19072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 19172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public String getType() { 19272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return this.getAttribute("type"); 19372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 19472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 19572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setAbstractAttr(String abstractAttr) throws DOMException { 19672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project this.setAttribute("abstract", abstractAttr); 19772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 19872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 19972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setAlt(String alt) throws DOMException { 20072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project this.setAttribute("alt", alt); 20172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 20272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 20372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setAuthor(String author) throws DOMException { 20472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project this.setAttribute("author", author); 20572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 20672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 20772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setClipBegin(String clipBegin) throws DOMException { 20872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project this.setAttribute("clipBegin", clipBegin); 20972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 21072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 21172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setClipEnd(String clipEnd) throws DOMException { 21272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project this.setAttribute("clipEnd", clipEnd); 21372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 21472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 21572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setCopyright(String copyright) throws DOMException { 21672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project this.setAttribute("copyright", copyright); 21772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 21872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 21972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setLongdesc(String longdesc) throws DOMException { 22072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project this.setAttribute("longdesc", longdesc); 22172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 22272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 22372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 22472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setPort(String port) throws DOMException { 22572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project this.setAttribute("port", port); 22672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 22772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 22872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setReadIndex(String readIndex) throws DOMException { 22972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project this.setAttribute("readIndex", readIndex); 23072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 23172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 23272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setRtpformat(String rtpformat) throws DOMException { 23372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project this.setAttribute("rtpformat", rtpformat); 23472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 23572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 23672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setSrc(String src) throws DOMException { 23772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project this.setAttribute("src", src); 23872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 23972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 24072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setStripRepeat(String stripRepeat) throws DOMException { 24172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project this.setAttribute("stripRepeat", stripRepeat); 24272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 24372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 24472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setTitle(String title) throws DOMException { 24572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project this.setAttribute("title", title); 24672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 24772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 24872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setTransport(String transport) throws DOMException { 24972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project this.setAttribute("transport", transport); 25072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 25172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 25272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setType(String type) throws DOMException { 25372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project this.setAttribute("type", type); 25472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 25572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 25672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project /* 25772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project * TimeElement Interface 25872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project */ 25972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 26072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public boolean beginElement() { 26172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return mElementTime.beginElement(); 26272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 26372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 26472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public boolean endElement() { 26572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return mElementTime.endElement(); 26672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 26772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 26872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public TimeList getBegin() { 26972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return mElementTime.getBegin(); 27072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 27172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 27272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public float getDur() { 27372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return mElementTime.getDur(); 27472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 27572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 27672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public TimeList getEnd() { 27772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return mElementTime.getEnd(); 27872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 27972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 28072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public short getFill() { 28172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return mElementTime.getFill(); 28272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 28372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 28472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public short getFillDefault() { 28572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return mElementTime.getFillDefault(); 28672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 28772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 28872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public float getRepeatCount() { 28972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return mElementTime.getRepeatCount(); 29072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 29172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 29272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public float getRepeatDur() { 29372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return mElementTime.getRepeatDur(); 29472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 29572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 29672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public short getRestart() { 29772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project return mElementTime.getRestart(); 29872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 29972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 30072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void pauseElement() { 30172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project mElementTime.pauseElement(); 30272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 30372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 30472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void resumeElement() { 30572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project mElementTime.resumeElement(); 30672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 30772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 30872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void seekElement(float seekTo) { 30972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project mElementTime.seekElement(seekTo); 31072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 31172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 31272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setBegin(TimeList begin) throws DOMException { 31372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project mElementTime.setBegin(begin); 31472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 31572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 31672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setDur(float dur) throws DOMException { 31772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project mElementTime.setDur(dur); 31872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 31972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 32072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setEnd(TimeList end) throws DOMException { 32172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project mElementTime.setEnd(end); 32272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 32372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 32472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setFill(short fill) throws DOMException { 32572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project mElementTime.setFill(fill); 32672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 32772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 32872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setFillDefault(short fillDefault) throws DOMException { 32972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project mElementTime.setFillDefault(fillDefault); 33072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 33172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 33272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setRepeatCount(float repeatCount) throws DOMException { 33372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project mElementTime.setRepeatCount(repeatCount); 33472735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 33572735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 33672735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setRepeatDur(float repeatDur) throws DOMException { 33772735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project mElementTime.setRepeatDur(repeatDur); 33872735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 33972735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project 34072735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project public void setRestart(short restart) throws DOMException { 34172735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project mElementTime.setRestart(restart); 34272735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project } 34372735c62aba8fd2a9420a0f9f83d22543e3c164fThe Android Open Source Project} 344