/**
 * technique_commonType5.java
 *
 * This file was generated by XMLSpy 2007sp2 Enterprise Edition.
 *
 * YOU SHOULD NOT MODIFY THIS FILE, BECAUSE IT WILL BE
 * OVERWRITTEN WHEN YOU RE-RUN CODE GENERATION.
 *
 * Refer to the XMLSpy Documentation for further details.
 * http://www.altova.com/xmlspy
 */


package com.jmex.model.collada.schema;


public class technique_commonType5 extends com.jmex.xml.xml.Node {

	public technique_commonType5(technique_commonType5 node) {
		super(node);
	}

	public technique_commonType5(org.w3c.dom.Node node) {
		super(node);
	}

	public technique_commonType5(org.w3c.dom.Document doc) {
		super(doc);
	}

	public technique_commonType5(com.jmex.xml.xml.Document doc, String namespaceURI, String prefix, String name) {
		super(doc, namespaceURI, prefix, name);
	}
	
	public void adjustPrefix() {
		for (	org.w3c.dom.Node tmpNode = getDomFirstChild( Element, "http://www.collada.org/2005/11/COLLADASchema", "dynamic_friction" );
				tmpNode != null;
				tmpNode = getDomNextChild( Element, "http://www.collada.org/2005/11/COLLADASchema", "dynamic_friction", tmpNode )
			) {
			internalAdjustPrefix(tmpNode, true);
			new TargetableFloat(tmpNode).adjustPrefix();
		}
		for (	org.w3c.dom.Node tmpNode = getDomFirstChild( Element, "http://www.collada.org/2005/11/COLLADASchema", "restitution" );
				tmpNode != null;
				tmpNode = getDomNextChild( Element, "http://www.collada.org/2005/11/COLLADASchema", "restitution", tmpNode )
			) {
			internalAdjustPrefix(tmpNode, true);
			new TargetableFloat(tmpNode).adjustPrefix();
		}
		for (	org.w3c.dom.Node tmpNode = getDomFirstChild( Element, "http://www.collada.org/2005/11/COLLADASchema", "static_friction" );
				tmpNode != null;
				tmpNode = getDomNextChild( Element, "http://www.collada.org/2005/11/COLLADASchema", "static_friction", tmpNode )
			) {
			internalAdjustPrefix(tmpNode, true);
			new TargetableFloat(tmpNode).adjustPrefix();
		}
	}
	public void setXsiType() {
 		org.w3c.dom.Element el = (org.w3c.dom.Element) domNode;
		el.setAttributeNS("http://www.w3.org/2001/XMLSchema-instance", "xsi:type", "technique_common");
	}

	public static int getdynamic_frictionMinCount() {
		return 0;
	}

	public static int getdynamic_frictionMaxCount() {
		return 1;
	}

	public int getdynamic_frictionCount() {
		return getDomChildCount(Element, "http://www.collada.org/2005/11/COLLADASchema", "dynamic_friction");
	}

	public boolean hasdynamic_friction() {
		return hasDomChild(Element, "http://www.collada.org/2005/11/COLLADASchema", "dynamic_friction");
	}

	public TargetableFloat newdynamic_friction() {
		return new TargetableFloat(domNode.getOwnerDocument().createElementNS("http://www.collada.org/2005/11/COLLADASchema", "dynamic_friction"));
	}

	public TargetableFloat getdynamic_frictionAt(int index) throws Exception {
		return new TargetableFloat(getDomChildAt(Element, "http://www.collada.org/2005/11/COLLADASchema", "dynamic_friction", index));
	}

	public org.w3c.dom.Node getStartingdynamic_frictionCursor() throws Exception {
		return getDomFirstChild(Element, "http://www.collada.org/2005/11/COLLADASchema", "dynamic_friction" );
	}

	public org.w3c.dom.Node getAdvanceddynamic_frictionCursor( org.w3c.dom.Node curNode ) throws Exception {
		return getDomNextChild( Element, "http://www.collada.org/2005/11/COLLADASchema", "dynamic_friction", curNode );
	}

	public TargetableFloat getdynamic_frictionValueAtCursor( org.w3c.dom.Node curNode ) throws Exception {
		if( curNode == null )
			throw new com.jmex.xml.xml.XmlException("Out of range");
		else
			return new TargetableFloat(curNode);
	}

	public TargetableFloat getdynamic_friction() throws Exception 
 {
		return getdynamic_frictionAt(0);
	}

	public void removedynamic_frictionAt(int index) {
		removeDomChildAt(Element, "http://www.collada.org/2005/11/COLLADASchema", "dynamic_friction", index);
	}

	public void removedynamic_friction() {
		removedynamic_frictionAt(0);
	}

	public org.w3c.dom.Node adddynamic_friction(TargetableFloat value) {
		return appendDomElement("http://www.collada.org/2005/11/COLLADASchema", "dynamic_friction", value);
	}

	public void insertdynamic_frictionAt(TargetableFloat value, int index) {
		insertDomElementAt("http://www.collada.org/2005/11/COLLADASchema", "dynamic_friction", index, value);
	}

	public void replacedynamic_frictionAt(TargetableFloat value, int index) {
		replaceDomElementAt("http://www.collada.org/2005/11/COLLADASchema", "dynamic_friction", index, value);
	}

	public static int getrestitutionMinCount() {
		return 0;
	}

	public static int getrestitutionMaxCount() {
		return 1;
	}

	public int getrestitutionCount() {
		return getDomChildCount(Element, "http://www.collada.org/2005/11/COLLADASchema", "restitution");
	}

	public boolean hasrestitution() {
		return hasDomChild(Element, "http://www.collada.org/2005/11/COLLADASchema", "restitution");
	}

	public TargetableFloat newrestitution() {
		return new TargetableFloat(domNode.getOwnerDocument().createElementNS("http://www.collada.org/2005/11/COLLADASchema", "restitution"));
	}

	public TargetableFloat getrestitutionAt(int index) throws Exception {
		return new TargetableFloat(getDomChildAt(Element, "http://www.collada.org/2005/11/COLLADASchema", "restitution", index));
	}

	public org.w3c.dom.Node getStartingrestitutionCursor() throws Exception {
		return getDomFirstChild(Element, "http://www.collada.org/2005/11/COLLADASchema", "restitution" );
	}

	public org.w3c.dom.Node getAdvancedrestitutionCursor( org.w3c.dom.Node curNode ) throws Exception {
		return getDomNextChild( Element, "http://www.collada.org/2005/11/COLLADASchema", "restitution", curNode );
	}

	public TargetableFloat getrestitutionValueAtCursor( org.w3c.dom.Node curNode ) throws Exception {
		if( curNode == null )
			throw new com.jmex.xml.xml.XmlException("Out of range");
		else
			return new TargetableFloat(curNode);
	}

	public TargetableFloat getrestitution() throws Exception 
 {
		return getrestitutionAt(0);
	}

	public void removerestitutionAt(int index) {
		removeDomChildAt(Element, "http://www.collada.org/2005/11/COLLADASchema", "restitution", index);
	}

	public void removerestitution() {
		removerestitutionAt(0);
	}

	public org.w3c.dom.Node addrestitution(TargetableFloat value) {
		return appendDomElement("http://www.collada.org/2005/11/COLLADASchema", "restitution", value);
	}

	public void insertrestitutionAt(TargetableFloat value, int index) {
		insertDomElementAt("http://www.collada.org/2005/11/COLLADASchema", "restitution", index, value);
	}

	public void replacerestitutionAt(TargetableFloat value, int index) {
		replaceDomElementAt("http://www.collada.org/2005/11/COLLADASchema", "restitution", index, value);
	}

	public static int getstatic_frictionMinCount() {
		return 0;
	}

	public static int getstatic_frictionMaxCount() {
		return 1;
	}

	public int getstatic_frictionCount() {
		return getDomChildCount(Element, "http://www.collada.org/2005/11/COLLADASchema", "static_friction");
	}

	public boolean hasstatic_friction() {
		return hasDomChild(Element, "http://www.collada.org/2005/11/COLLADASchema", "static_friction");
	}

	public TargetableFloat newstatic_friction() {
		return new TargetableFloat(domNode.getOwnerDocument().createElementNS("http://www.collada.org/2005/11/COLLADASchema", "static_friction"));
	}

	public TargetableFloat getstatic_frictionAt(int index) throws Exception {
		return new TargetableFloat(getDomChildAt(Element, "http://www.collada.org/2005/11/COLLADASchema", "static_friction", index));
	}

	public org.w3c.dom.Node getStartingstatic_frictionCursor() throws Exception {
		return getDomFirstChild(Element, "http://www.collada.org/2005/11/COLLADASchema", "static_friction" );
	}

	public org.w3c.dom.Node getAdvancedstatic_frictionCursor( org.w3c.dom.Node curNode ) throws Exception {
		return getDomNextChild( Element, "http://www.collada.org/2005/11/COLLADASchema", "static_friction", curNode );
	}

	public TargetableFloat getstatic_frictionValueAtCursor( org.w3c.dom.Node curNode ) throws Exception {
		if( curNode == null )
			throw new com.jmex.xml.xml.XmlException("Out of range");
		else
			return new TargetableFloat(curNode);
	}

	public TargetableFloat getstatic_friction() throws Exception 
 {
		return getstatic_frictionAt(0);
	}

	public void removestatic_frictionAt(int index) {
		removeDomChildAt(Element, "http://www.collada.org/2005/11/COLLADASchema", "static_friction", index);
	}

	public void removestatic_friction() {
		removestatic_frictionAt(0);
	}

	public org.w3c.dom.Node addstatic_friction(TargetableFloat value) {
		return appendDomElement("http://www.collada.org/2005/11/COLLADASchema", "static_friction", value);
	}

	public void insertstatic_frictionAt(TargetableFloat value, int index) {
		insertDomElementAt("http://www.collada.org/2005/11/COLLADASchema", "static_friction", index, value);
	}

	public void replacestatic_frictionAt(TargetableFloat value, int index) {
		replaceDomElementAt("http://www.collada.org/2005/11/COLLADASchema", "static_friction", index, value);
	}

}
