jigcell.compare.data
Class SparseTreeDataElement
java.lang.Object
javax.swing.TransferHandler
jigcell.compare.impl.Transferer
jigcell.compare.data.DataElement
jigcell.compare.data.EditableDataElement
jigcell.compare.data.TreeDataElement
jigcell.compare.data.SparseTreeDataElement
- All Implemented Interfaces:
- java.awt.datatransfer.Transferable, java.io.Serializable, IDataElement, IEditableDataElement
- Direct Known Subclasses:
- SparseTreeDataElement2
public class SparseTreeDataElement
- extends TreeDataElement
An implementation of EditableDataElement that uses a red-black tree to store values. The tree keys are boxed. SparseTreeDataElement does
not protect against concurrent edits. The maximum number of values this element can contain is approximately 2^60, but is likely to fail
before then.
This code is licensed under the DARPA BioCOMP Open Source License. See LICENSE for more details.
- Author:
- Nicholas Allen
- See Also:
- Serialized Form
| Fields inherited from class jigcell.compare.data.EditableDataElement |
DOUBLE_NaN, DOUBLE_NINFINITY, DOUBLE_PINFINITY, MESSAGE_PARSEBLOCKERROR, MESSAGE_PARSEERROR, MESSAGE_PARSEEXTRAERROR, MESSAGE_PARSELITERALERROR, PATTERN_FP, prototypeChild, TOKEN_ALL, TOKEN_BLOCKELEMENT, TOKEN_BLOCKEND, TOKEN_BLOCKSTART, TOKEN_LITERAL |
| Fields inherited from class jigcell.compare.data.DataElement |
lockCount, LONGPOOL, PATTERN_FALSE, PATTERN_NAN, PATTERN_NINFINITY, PATTERN_NINFINITY2, PATTERN_NULL, PATTERN_PINFINITY, PATTERN_PINFINITY2, PATTERN_TRUE, PATTERN_VOID, SIZE_LONGPOOL |
| Fields inherited from class jigcell.compare.impl.Transferer |
CSV_FOOTER, CSV_LINEPOSTPEND, CSV_LINEPREPEND, CSV_LINESEPARATOR, HTML_FOOTER, HTML_HEADPOSTPEND, HTML_HEADPREPEND, HTML_HEADSEPARATOR, HTML_LINEPOSTPEND, HTML_LINEPREPEND, HTML_LINESEPARATOR |
| Fields inherited from class javax.swing.TransferHandler |
COPY, COPY_OR_MOVE, MOVE, NONE |
| Methods inherited from class jigcell.compare.data.EditableDataElement |
copyValue, createElement, createElement, createElement, createElementSafe, createElementSafe, createScalarElement, createScalarElement, createScalarElement, createScalarElement, forceSlice, forceSlice, forceSlice, forceSlice, getBooleanValue, getChecked, getIntegralValue, getListValue, getLiteralValue, getPrototypeChild, getRealValue, getType, getType, makeList, moveValue, putChecked, setPrototypeChild, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValueInterpreted, setValueInterpreted, swapValues |
| Methods inherited from class jigcell.compare.data.DataElement |
forceBooleanValue, forceBooleanValue, forceIntegralValue, forceIntegralValue, forceListValue, forceLiteralValue, forceLiteralValue, forceRealValue, forceRealValue, forceSlice, getBooleanValue, getIntegralValue, getLiteralValue, getLongObject, getRealValue, getSlice, getSlice, getSlice, getSlice, getSlice, getTransferData, isScalar, isSpecialNonNumeric, toString, toString, toString, toString, toString, toString, toString, toString, toString, toString, toString, toString, toString, toString, toString, toString |
| Methods inherited from class jigcell.compare.impl.Transferer |
addExtension, addFlavor, createCSVTable, createFormattedTable, createHTMLTable, getExceptionRecorder, getExpectedClasses, getExpectedClasses, getExpectedClasses, getFlavors, getFlavors, getPreferredExtensions, getPreferredExtensions, getTransferClass, getTransferDataFlavors, getTransferFlavor, isDataFlavorSupported, transfer |
| Methods inherited from class javax.swing.TransferHandler |
canImport, createTransferable, exportAsDrag, exportDone, exportToClipboard, getCopyAction, getCutAction, getPasteAction, getSourceActions, getVisualRepresentation, importData |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface jigcell.compare.IDataElement |
forceBooleanValue, forceBooleanValue, forceIntegralValue, forceIntegralValue, forceListValue, forceLiteralValue, forceLiteralValue, forceRealValue, forceRealValue, forceSlice, getBooleanValue, getIntegralValue, getLiteralValue, getRealValue, getSlice, getSlice, getSlice, getSlice, getSlice, isScalar, toString, toString, toString, toString, toString, toString, toString |
| Methods inherited from interface java.awt.datatransfer.Transferable |
getTransferData, getTransferDataFlavors, isDataFlavorSupported |
SparseTreeDataElement
public SparseTreeDataElement()
- Creates a new data element backed by a tree.
createElement
public static IEditableDataElement createElement(java.io.Reader reader)
- Generates a SparseTreeDataElement from streaming input.
- Parameters:
reader - Reader
createElementSafe
public static IEditableDataElement createElementSafe(java.io.Reader reader)
- Generates a SparseTreeDataElement from streaming input. If an element cannot be created, an empty element in returned.
- Parameters:
reader - Reader
constructNew
protected EditableDataElement constructNew()
- Constructs a new element of the same type as this element.
- Specified by:
constructNew in class EditableDataElement
getDirect
protected java.lang.Object getDirect(long pos)
- Gets the value at a position. Boolean values are represented by Boolean. Empty values are represented by null. Integral values are
represented by Integer. Literal values are represented by String. Multiple values are represented by DataElement. Real values are
represented by Double. The position of the object may be anything.
- Specified by:
getDirect in class EditableDataElement
- Parameters:
pos - Position
lastValue
protected long lastValue()
- Finds the last defined value.
- Specified by:
lastValue in class TreeDataElement
putDirect
protected void putDirect(long pos,
java.lang.Object value)
- Sets the value at a position. Boolean values are represented by Boolean. Empty values are represented by null. Integral values are
represented by Integer. Literal values are represented by String. Multiple values are represented by DataElement. Real values are
represented by Double. The position of the object may be anything.
- Specified by:
putDirect in class EditableDataElement
- Parameters:
pos - Positionvalue - Value
removeDirect
protected void removeDirect(long pos)
- Removes the value at a position. The position of the object may be anything.
- Specified by:
removeDirect in class EditableDataElement
- Parameters:
pos - Position