Package jmri.jmrix.jinput
Class TreeModel
java.lang.Object
javax.swing.tree.DefaultTreeModel
jmri.jmrix.jinput.TreeModel
- All Implemented Interfaces:
Serializable,TreeModel
TreeModel represents the USB controllers and components
Accessed via the instance() member, as we expect to have only one of these models talking to the USB subsystem.
The tree has three levels below the uninteresting root:
- USB controller
- Components (input, axis)
jinput requires that there be only one of these for a given USB system in a given JVM so we use a pseudo-singlet "instance" approach
Class is final because it starts a survey thread, which runs while constructor is still active.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) classCarry a single event to the Swing thread for processing(package private) class -
Field Summary
FieldsModifier and TypeFieldDescription(package private) net.java.games.input.Controller[](package private) DefaultMutableTreeNode(package private) PropertyChangeSupport(package private) TreeModel.RunnerFields inherited from class javax.swing.tree.DefaultTreeModel
asksAllowsChildren, listenerList, root -
Method Summary
Methods inherited from class javax.swing.tree.DefaultTreeModel
addTreeModelListener, asksAllowsChildren, fireTreeNodesChanged, fireTreeNodesInserted, fireTreeNodesRemoved, fireTreeStructureChanged, getChild, getChildCount, getIndexOfChild, getListeners, getPathToRoot, getPathToRoot, getRoot, getTreeModelListeners, insertNodeInto, isLeaf, nodeChanged, nodesChanged, nodeStructureChanged, nodesWereInserted, nodesWereRemoved, reload, reload, removeNodeFromParent, removeTreeModelListener, setAsksAllowsChildren, setRoot, valueForPathChanged
-
Field Details
-
runner
-
dRoot
-
ca
net.java.games.input.Controller[] ca -
pcs
-
-
Method Details
-
instance
Provide access to the model. There's only one, because access to the USB subsystem is required.- Returns:
- the default instance of the TreeModel; creating it if necessary
-
terminateThreads
- Throws:
InterruptedException
-
controllers
-
loadSystem
boolean loadSystem()- Returns:
- true for success
-
addPropertyChangeListener
-
removePropertyChangeListener
-