Nengo.ca

ca.nengo.model
Interface ExpandableNode

All Superinterfaces:
java.lang.Cloneable, Node, Resettable, java.io.Serializable, SimulationMode.ModeConfigurable, VisiblyMutable
All Known Implementing Classes:
DecodableEnsembleImpl, EnsembleImpl, ExpandableSpikingNeuron, GruberNeuronFactory.GruberNeuron, NEFEnsembleImpl, PlasticEnsembleImpl

public interface ExpandableNode
extends Node

A Node to which Terminations can be added after construction, in a standard manner. Note that a given Node might provide additional methods for adding Terminations if more customization is needed.


Nested Class Summary
 
Nested classes/interfaces inherited from interface ca.nengo.util.VisiblyMutable
VisiblyMutable.Event, VisiblyMutable.Listener, VisiblyMutable.NameChangeEvent, VisiblyMutable.NodeRemovedEvent
 
Method Summary
 Termination addTermination(java.lang.String name, float[][] weights, float tauPSC, boolean modulatory)
          Adds a new Termination onto this Node.
 ExpandableNode clone()
           
 int getDimension()
           
 Termination removeTermination(java.lang.String name)
           
 
Methods inherited from interface ca.nengo.model.Node
getChildren, getDocumentation, getName, getOrigin, getOrigins, getTermination, getTerminations, run, setDocumentation, setName, toScript
 
Methods inherited from interface ca.nengo.model.Resettable
reset
 
Methods inherited from interface ca.nengo.model.SimulationMode.ModeConfigurable
getMode, setMode
 
Methods inherited from interface ca.nengo.util.VisiblyMutable
addChangeListener, removeChangeListener
 

Method Detail

getDimension

int getDimension()
Returns:
Output dimension of Terminations onto this Node

addTermination

Termination addTermination(java.lang.String name,
                           float[][] weights,
                           float tauPSC,
                           boolean modulatory)
                           throws StructuralException
Adds a new Termination onto this Node.

Parameters:
name - Unique name for the Termination (in the scope of this Node)
weights - Connection weights. Length must equal getDimension(). Each component must have length equal to the dimension of the Origin that will connect to this Termination.
tauPSC - Time constant with which incoming signals are filtered. (All Terminations have this property, but it may have slightly different interpretations per implementation.)
modulatory - If true, inputs to the Termination are not summed with other inputs (they only have modulatory effects, eg on plasticity, which must be defined elsewhere).
Returns:
resulting Termination
Throws:
StructuralException - if length of weights doesn't equal getDimension(), or if there are different numbers of weights given in different rows.

removeTermination

Termination removeTermination(java.lang.String name)
                              throws StructuralException
Parameters:
name - Name of Termination to remove.
Returns:
The removed Termination
Throws:
StructuralException - if the Termination doesn't exist

clone

ExpandableNode clone()
                     throws java.lang.CloneNotSupportedException
Specified by:
clone in interface Node
Returns:
An independent copy of the Node
Throws:
java.lang.CloneNotSupportedException - if clone can't be made

Nengo.ca