Class AbstractNetworkComponent

java.lang.Object
mgui.interfaces.AbstractInterfaceObject
mgui.models.networks.components.AbstractNetworkComponent
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<DynamicModelComponent>, AttributeListener, AttributeObject, InterfaceObject, NamedObject, TreeObject, CleanableObject, DynamicModelComponent, TimeStepListener, Updateable
Direct Known Subclasses:
AbstractNeuroComponent

public abstract class AbstractNetworkComponent
extends AbstractInterfaceObject
implements DynamicModelComponent, AttributeObject, AttributeListener, TreeObject, InterfaceObject

Abstract generic class for neuro model components to inherit. Contains two lists, one for events and one for connections. This class forces an implementation of clone() by its subclasses; as a general policy clones of model components should ensure that components states are also preserved in a clone.

All subclasses of this class should add its parameters as Attributes. These parameters should have their own get and set methods implemented. Primitives should be wrapped by instances of arNumber (java wrappers such as Integer are fine too, but do not allow their values to be dynamically changed...)

Variables (e.g., clock) should be declared as individual class members.

Version:
1.0
Author:
Andrew Reid
  • Constructor Details

    • AbstractNetworkComponent

      public AbstractNetworkComponent()
  • Method Details

    • clone

      public java.lang.Object clone()
      Specified by:
      clone in interface DynamicModelComponent
      Overrides:
      clone in class java.lang.Object
    • getAttributeValue

      public java.lang.Object getAttributeValue​(java.lang.String name)
      Description copied from interface: AttributeObject
      Gets the value of attribute name, or null if it does not exist.
      Specified by:
      getAttributeValue in interface AttributeObject
      Parameters:
      name - Name of the attribute
      Returns:
      the value of attribute name, or null if it does not exist