norsys.netica
Class NodeList

java.lang.Object
  |
  +--java.util.AbstractCollection
        |
        +--java.util.AbstractList
              |
              +--java.util.Vector
                    |
                    +--norsys.netica.NodeList
All Implemented Interfaces:
java.lang.Cloneable, java.util.Collection, java.util.List, java.io.Serializable

public class NodeList
extends java.util.Vector

A java.util.Vector that is meant to store only Nodes from a single Net. If other objects are inserted, or Nodes from different Nets are inserted, an exception will be thrown when the NodeList is passed to Netica.

Since:
2.08
Version:
2.21 - May 7, 2002
See Also:
Serialized Form

Fields inherited from class java.util.Vector
capacityIncrement, elementCount, elementData
 
Fields inherited from class java.util.AbstractList
modCount
 
Constructor Summary
NodeList(int initialCapacity, Net parentNet)

Deprecated.  

NodeList(Net parentNet)

Constructs an empty NodeList of initial capacity 100.

NodeList(NodeList nodes)

Copy constructs a new Nodelist from an existing Nodelist.

 
Method Summary
 Net getNet()

Returns the Net that this NodeList's nodes come from.

 Node getNode(int index)

A convenience version of java.util.Vector.get(int), that returns a Node, rather than an Object, to save you from having to do the cast yourself.

static int[] mapStateList(int[] srcStates, NodeList srcNodes, NodeList destNodes)

Returns an array of states, the same states that are in the srcStates array, except in a different order.

 
Methods inherited from class java.util.Vector
add, add, addAll, addAll, addElement, capacity, clear, clone, contains, containsAll, copyInto, elementAt, elements, ensureCapacity, equals, firstElement, get, hashCode, indexOf, indexOf, insertElementAt, isEmpty, lastElement, lastIndexOf, lastIndexOf, remove, remove, removeAll, removeAllElements, removeElement, removeElementAt, removeRange, retainAll, set, setElementAt, setSize, size, subList, toArray, toArray, toString, trimToSize
 
Methods inherited from class java.util.AbstractList
iterator, listIterator, listIterator
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.List
iterator, listIterator, listIterator
 

Constructor Detail

NodeList

public NodeList(int initialCapacity,
                Net parentNet)
         throws NeticaException
Deprecated.  

Construct a new (empty) list of nodes.



Parameters:
int    initialCapacity    The initial assigned capacity of the list.
Net    parentNet    The net from whose nodes this nodeList will be assembled.

Version:

This method is available in all versions.
In the C Version of the API, this function is named NewNodeList_bn.

NodeList

public NodeList(Net parentNet)
         throws NeticaException
Constructs an empty NodeList of initial capacity 100. See NodeList for additional information.

Parameters:
Net    parentNet    The net from whose nodes this nodeList will be assembled.

Version:
Versions 2.20 and greater have this method.

NodeList

public NodeList(NodeList nodes)
         throws NeticaException
Copy constructs a new Nodelist from an existing Nodelist.

Performs a "shallow copy" in the sense that new Node objects are not constructed.

Only nodes from the same net as nodes can be added to this list.

Parameters:
NodeList    nodes    The nodelist to copy.

Version:

Versions 2.12 and greater have this method.
Method Detail

getNet

public Net getNet()
Returns the Net that this NodeList's nodes come from.

Version:
This method is available in all versions.

getNode

public Node getNode(int index)
             throws java.lang.ArrayIndexOutOfBoundsException
A convenience version of java.util.Vector.get(int), that returns a Node, rather than an Object, to save you from having to do the cast yourself. Throws ArrayIndexOutOfBoundsException, if index is out of range.

Parameters:
int    index    the index to the i'th member of the list, beginning from 0.

Version:
Versions 2.12 and later have this method.
Example:
    Node node = nodelist.getNode(2); //get the 3rd element of nodelist

mapStateList

public static int[] mapStateList(int[] srcStates,
                                 NodeList srcNodes,
                                 NodeList destNodes)
                          throws NeticaException
Returns an array of states, the same states that are in the srcStates array, except in a different order.

The order of srcStates is given by srcNodes, and the order of the returned states will be given by destNodes.

Neither destNodes nor srcNodes may contain duplicates.

destNodes must contain exactly the same nodes as srcNodes, but possibly in a different order.

The idea is that each entry of srcStates contains a value of the corresponding node in srcNodes, and now we want these values in the order given by destNodes.

Parameters:
int[]    srcStates    an array of states, one element per member of srcNodes
NodeList    srcNodes    a list of nodes in the same order as the states in srcStates
NodeList    destNodes    a list of the exact same nodes as in srcNodes, but in a different order, the order you want the returned state array to be in

Version:

Versions 1.18 and later have this method.
In the C Version of the API, this function is named MapStateList_bn.