Package mgui.interfaces.variables
Class VariableInt<T>
java.lang.Object
mgui.interfaces.AbstractInterfaceObject
mgui.interfaces.variables.VariableInt<T>
- All Implemented Interfaces:
AttributeObject,InterfaceObject,NamedObject,TreeObject,CleanableObject,XMLObject,IconObject
- Direct Known Subclasses:
MatrixInt,StringVectorInt,VectorInt
public abstract class VariableInt<T> extends AbstractInterfaceObject implements AttributeObject, IconObject, XMLObject
An interface to a variable object.
- Since:
- 1.0
- Version:
- 1.0
- Author:
- Andrew Reid
-
Nested Class Summary
Nested classes/interfaces inherited from interface mgui.interfaces.xml.XMLObject
XMLObject.XMLEncoding, XMLObject.XMLType -
Field Summary
Fields Modifier and Type Field Description protected AttributeListattributesprotected booleanbatchprotected java.util.ArrayList<VariableListener>listenersprotected booleanupdatedFields inherited from class mgui.interfaces.AbstractInterfaceObject
isDestroyed, tree_nodes -
Constructor Summary
Constructors Constructor Description VariableInt() -
Method Summary
Modifier and Type Method Description voidaddListener(VariableListener listener)protected voidfireListeners()abstract java.util.ArrayList<T>getAsList()Returns this variable as a single list of values.Attribute<?>getAttribute(java.lang.String attrName)Returns a specific attribute for this object.AttributeListgetAttributes()Returns the list of current attributes for this object.java.lang.ObjectgetAttributeValue(java.lang.String name)Gets the value of attributename, ornullif it does not exist.abstract java.util.ArrayList<java.lang.Integer>getDimensions()java.lang.StringgetDTD()Returns the Data Type Declaration (DTD) for this object's XML representationjava.lang.StringgetLocalName()Returns the local name associated with this XML object.java.lang.StringgetName()Gets the name for this object.javax.swing.IcongetObjectIcon()Returns theIconassociated with this object.VariableInt<T>getPart(java.lang.String part)Parsespartto return a part of this variable.abstract VariableInt<T>getPart(java.lang.String name, java.lang.String part)Parsespartto return a part of this variable.java.lang.StringgetShortXML(int tab)Returns a short XML representation of this object.abstract intgetSize()Returns the total size (number of elements) of this variable.java.lang.Class<? extends T>getType()Returns aClassobject which is the parameterized type of this variable.protected abstract TgetValue(java.util.List<java.lang.Integer> indices)Returns the value at the given indices; throws an exception if they are out of bounds.TgetValueAt(java.util.List<java.lang.Integer> indices)Returns the value of this variable at the given indices; throws an exception if they are out of bounds, or of a higher dimensionality than the variable supports.java.lang.StringgetXML()Returns this object's XML representation as a single string.java.lang.StringgetXML(int tab)Returns this object's XML representation as a single string.java.lang.StringgetXMLSchema()Returns the XML schema for this object's XML representationvoidhandleXMLElementEnd(java.lang.String localName)Handles the end of an XML element.voidhandleXMLElementStart(java.lang.String localName, org.xml.sax.Attributes attributes, XMLObject.XMLType type)Handles the start of an XML element.voidhandleXMLString(java.lang.String s)Handles a string within an XML element.protected voidinit()booleanisEditable()booleanisNumeric()Determines whether this variable contains numeric values.voidremoveListener(VariableListener listener)voidsetAttribute(java.lang.String attrName, java.lang.Object newValue)Sets a value for a specific attribute.voidsetAttributes(AttributeList thisList)Sets the list of attributes for this object.voidsetBatch(boolean b)voidsetEditable(boolean b)voidsetName(java.lang.String name)Sets the name for this object.abstract booleansetStringValue(java.util.List<java.lang.Integer> indices, java.lang.String value)Sets the value at the given indices as aString; throws an exception if they are out of bounds, this variable is not editable, orvalueis an inappropriate value.voidsetTreeNode(InterfaceTreeNode treeNode)Sets the children for this node'sInterfaceTreeNode.abstract booleansetValue(java.util.List<java.lang.Integer> indices, T value)Sets the value at the given indices; throws an exception if they are out of bounds, this variable is not editable, orvalueis an inappropriate value.java.lang.StringtoString()voidwriteXML(int tab, java.io.Writer writer)Writes the XML representation of this object to file.voidwriteXML(int tab, java.io.Writer writer, ProgressUpdater progress_bar)Writes the XML representation of this object to file, asXMLType.Normal.voidwriteXML(int tab, java.io.Writer writer, XMLOutputOptions options, ProgressUpdater progress_bar)Writes the XML representation of this object to file.Methods inherited from class mgui.interfaces.AbstractInterfaceObject
clean, destroy, getTreeLabel, isDestroyed, issueTreeNode, updateTreeNodesMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Field Details
-
listeners
-
attributes
-
batch
protected boolean batch -
updated
protected boolean updated
-
-
Constructor Details
-
VariableInt
public VariableInt()
-
-
Method Details
-
init
protected void init() -
getDimensions
public abstract java.util.ArrayList<java.lang.Integer> getDimensions() -
setName
public void setName(java.lang.String name)Description copied from interface:NamedObjectSets the name for this object.- Specified by:
setNamein interfaceNamedObject- Overrides:
setNamein classAbstractInterfaceObject
-
isEditable
public boolean isEditable() -
setEditable
public void setEditable(boolean b) -
getName
public java.lang.String getName()Description copied from interface:NamedObjectGets the name for this object.- Specified by:
getNamein interfaceNamedObject- Overrides:
getNamein classAbstractInterfaceObject- Returns:
-
setBatch
public void setBatch(boolean b) -
fireListeners
protected void fireListeners() -
getValueAt
Returns the value of this variable at the given indices; throws an exception if they are out of bounds, or of a higher dimensionality than the variable supports. If the indices are of a lower dimensionality than that of the variable, the returned object is handled by the subclass method. As a general policy, this object should represent the remaining dimensions in some way (i.e., using array notation).- Parameters:
indices-- Returns:
- object at the given indices
- Throws:
VariableException- ifindices.size()is greater than this variable's dimensionality, or indices are out of bounds.
-
getValue
Returns the value at the given indices; throws an exception if they are out of bounds. If the indices are of a lower dimension than the variable dimension, the returned object is handled by the subclass method. As a general policy, this object should represent the remaining dimensions in some way.- Parameters:
indices-- Returns:
- object at the given indices
- Throws:
VariableException
-
setValue
public abstract boolean setValue(java.util.List<java.lang.Integer> indices, T value) throws VariableExceptionSets the value at the given indices; throws an exception if they are out of bounds, this variable is not editable, orvalueis an inappropriate value.- Parameters:
indices-- Returns:
- object at the given indices
- Throws:
VariableException
-
setStringValue
public abstract boolean setStringValue(java.util.List<java.lang.Integer> indices, java.lang.String value) throws VariableExceptionSets the value at the given indices as aString; throws an exception if they are out of bounds, this variable is not editable, orvalueis an inappropriate value.- Parameters:
indices-- Returns:
- object at the given indices
- Throws:
VariableException
-
addListener
-
removeListener
-
isNumeric
public boolean isNumeric()Determines whether this variable contains numeric values.- Returns:
-
getType
Returns aClassobject which is the parameterized type of this variable.- Returns:
-
getObjectIcon
public javax.swing.Icon getObjectIcon()Description copied from interface:IconObjectReturns theIconassociated with this object.- Specified by:
getObjectIconin interfaceIconObject- Returns:
-
getPart
Parsespartto return a part of this variable. Syntax for n dimensions is: "x_start,y_start,..,n_start:x_start,y_start,..,n_start". E.g., "1,2:20,2". Use asterisk, "*" to indicate last element in a dimension. E.g,, "1,2:*,*".- Parameters:
name-part-- Returns:
-
getPart
Parsespartto return a part of this variable. Syntax for n dimensions is: "x_start,y_start,..,n_start:x_start,y_start,..,n_start". E.g., "1,2:20,2". Use asterisk, "*" to indicate last element in a dimension. E.g,, "1,2:*,*".- Parameters:
name-part-- Returns:
-
getAsList
Returns this variable as a single list of values.- Returns:
-
setTreeNode
Description copied from interface:TreeObjectSets the children for this node'sInterfaceTreeNode.- Specified by:
setTreeNodein interfaceTreeObject- Overrides:
setTreeNodein classAbstractInterfaceObject
-
getAttribute
Description copied from interface:AttributeObjectReturns a specific attribute for this object.- Specified by:
getAttributein interfaceAttributeObject- Returns:
-
getAttributeValue
public java.lang.Object getAttributeValue(java.lang.String name)Description copied from interface:AttributeObjectGets the value of attributename, ornullif it does not exist.- Specified by:
getAttributeValuein interfaceAttributeObject- Parameters:
name- Name of the attribute- Returns:
- the value of attribute
name, ornullif it does not exist
-
getAttributes
Description copied from interface:AttributeObjectReturns the list of current attributes for this object.- Specified by:
getAttributesin interfaceAttributeObject- Returns:
-
getSize
public abstract int getSize()Returns the total size (number of elements) of this variable.- Returns:
-
setAttribute
public void setAttribute(java.lang.String attrName, java.lang.Object newValue)Description copied from interface:AttributeObjectSets a value for a specific attribute.- Specified by:
setAttributein interfaceAttributeObject
-
setAttributes
Description copied from interface:AttributeObjectSets the list of attributes for this object.- Specified by:
setAttributesin interfaceAttributeObject
-
toString
public java.lang.String toString()- Overrides:
toStringin classjava.lang.Object
-
getDTD
public java.lang.String getDTD()Description copied from interface:XMLObjectReturns the Data Type Declaration (DTD) for this object's XML representationSee http://en.wikipedia.org/wiki/Document_Type_Definition for a description.
-
getXMLSchema
public java.lang.String getXMLSchema()Description copied from interface:XMLObjectReturns the XML schema for this object's XML representation- Specified by:
getXMLSchemain interfaceXMLObject- Returns:
-
getXML
public java.lang.String getXML()Description copied from interface:XMLObjectReturns this object's XML representation as a single string. NOTE: this is not feasible for larger objects and containers, thus may not be implemented for these objects. Use theXMLObject.writeXML(int,java.io.Writer,mgui.io.standard.xml.XMLOutputOptions,mgui.interfaces.ProgressUpdater)functions to write larger objects to file. -
getXML
public java.lang.String getXML(int tab)Description copied from interface:XMLObjectReturns this object's XML representation as a single string. NOTE: this is not feasible for larger objects and containers, thus may not be implemented for these objects. Use theXMLObject.writeXML(int,java.io.Writer,mgui.io.standard.xml.XMLOutputOptions,mgui.interfaces.ProgressUpdater)functions to write larger objects to file. -
handleXMLElementStart
public void handleXMLElementStart(java.lang.String localName, org.xml.sax.Attributes attributes, XMLObject.XMLType type) throws org.xml.sax.SAXExceptionDescription copied from interface:XMLObjectHandles the start of an XML element.- Specified by:
handleXMLElementStartin interfaceXMLObject- Parameters:
localName- Local name of the elementattributes- Set of element attributestype- TheXMLTypeof this element- Throws:
org.xml.sax.SAXException
-
handleXMLElementEnd
public void handleXMLElementEnd(java.lang.String localName) throws org.xml.sax.SAXExceptionDescription copied from interface:XMLObjectHandles the end of an XML element.- Specified by:
handleXMLElementEndin interfaceXMLObject- Parameters:
localName- Local name of the element- Throws:
org.xml.sax.SAXException
-
handleXMLString
public void handleXMLString(java.lang.String s) throws org.xml.sax.SAXExceptionDescription copied from interface:XMLObjectHandles a string within an XML element.- Specified by:
handleXMLStringin interfaceXMLObject- Parameters:
s- String to handle- Throws:
org.xml.sax.SAXException
-
getLocalName
public java.lang.String getLocalName()Description copied from interface:XMLObjectReturns the local name associated with this XML object.- Specified by:
getLocalNamein interfaceXMLObject- Returns:
-
writeXML
public void writeXML(int tab, java.io.Writer writer, XMLOutputOptions options, ProgressUpdater progress_bar) throws java.io.IOExceptionDescription copied from interface:XMLObjectWrites the XML representation of this object to file. The basic contract for this method is that it should not write a newline character at its start or end. The default format ofXMLFormat.Asciiwill be used. -
writeXML
public void writeXML(int tab, java.io.Writer writer, ProgressUpdater progress_bar) throws java.io.IOExceptionDescription copied from interface:XMLObjectWrites the XML representation of this object to file, asXMLType.Normal. The default format ofXMLFormat.Asciiwill be used. The basic contract for this method is that it should not write a newline character at its start or end. -
writeXML
public void writeXML(int tab, java.io.Writer writer) throws java.io.IOExceptionDescription copied from interface:XMLObjectWrites the XML representation of this object to file. The basic contract for this method is that it should not write a newline character at its start or end. The default format ofXMLFormat.Asciiwill be used. -
getShortXML
public java.lang.String getShortXML(int tab)Description copied from interface:XMLObjectReturns a short XML representation of this object.- Specified by:
getShortXMLin interfaceXMLObject- Returns:
-