clarion.system
Class AbstractIntermediateModule<T>

java.lang.Object
  extended by java.util.AbstractCollection<E>
      extended by java.util.AbstractList<E>
          extended by java.util.AbstractSequentialList<E>
              extended by java.util.LinkedList<T>
                  extended by clarion.system.AbstractIntermediateModule<T>
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.lang.Iterable<T>, java.util.Collection<T>, java.util.List<T>, java.util.Queue<T>
Direct Known Subclasses:
GoalStructure, WorkingMemory

public abstract class AbstractIntermediateModule<T>
extends java.util.LinkedList<T>

This class implements an intermediate module within CLARION. It extends the LinkedList class. This class is abstract and therefore cannot be instantiated on its own.

Usage:

This class is used as the foundation for modules within CLARION that exist between (or within multiple) subsystems (such as the working memory and the goal structure). This class is mostly used for internal development purposes related to the CLARION Library. Currently there is no simple method for user-defined intermediate modules. The addition of any intermediate module to the CLARION Library would require major structural changes to the system itself as well as implications for the CLARION theory.

Known Subclasses:

Version:
6.0.4
Author:
Nick Wilson
See Also:
Serialized Form

Field Summary
protected  DimensionValueCollection InputSpace
          Points to the input space from the instance of the CLARION class to which this instance of the intermediate system is attached.
private static long serialVersionUID
           
 
Fields inherited from class java.util.AbstractList
modCount
 
Constructor Summary
AbstractIntermediateModule(CLARION Agent)
          Initializes the intermediate system.
 
Method Summary
protected abstract  void attachSelfToAgent(CLARION Agent)
          Attaches the intermediate system to the specified CLARION agent.
protected  void updateInputSpace(java.util.Collection<Dimension> c)
          Updates the input space based on the specified collection of dimension-value pairs.
 
Methods inherited from class java.util.LinkedList
add, add, addAll, addAll, addFirst, addLast, clear, clone, contains, element, get, getFirst, getLast, indexOf, lastIndexOf, listIterator, offer, peek, poll, remove, remove, remove, removeFirst, removeLast, set, size, toArray, toArray
 
Methods inherited from class java.util.AbstractSequentialList
iterator
 
Methods inherited from class java.util.AbstractList
equals, hashCode, listIterator, removeRange, subList
 
Methods inherited from class java.util.AbstractCollection
containsAll, isEmpty, removeAll, retainAll, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.List
containsAll, equals, hashCode, isEmpty, iterator, listIterator, removeAll, retainAll, subList
 

Field Detail

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values

InputSpace

protected DimensionValueCollection InputSpace
Points to the input space from the instance of the CLARION class to which this instance of the intermediate system is attached.

Constructor Detail

AbstractIntermediateModule

public AbstractIntermediateModule(CLARION Agent)
Initializes the intermediate system. During initialization this instance of the intermediate system will attach itself to the CLARION agent you specify.

Parameters:
Agent - The agent to which the intermediate system is being attached.
Method Detail

attachSelfToAgent

protected abstract void attachSelfToAgent(CLARION Agent)
Attaches the intermediate system to the specified CLARION agent.

Parameters:
Agent - The agent to which this intermediate system will be attached.

updateInputSpace

protected void updateInputSpace(java.util.Collection<Dimension> c)
Updates the input space based on the specified collection of dimension-value pairs. If any dimensions or values exist within the specified collection that are not currently in the input space, those dimensions and/or values are added to the input space.

Parameters:
c - The collection of dimension-value pairs with which to update the input space.