edu.memphis.ccrg.lida.globalworkspace
Interface GlobalWorkspace

All Superinterfaces:
FrameworkModule, FullyInitializable, Initializable, RefractoryPeriod, TriggerListener
All Known Implementing Classes:
GlobalWorkspaceImpl

public interface GlobalWorkspace
extends FrameworkModule, TriggerListener, RefractoryPeriod

Interface for GlobalWorkspace. It receives Coalition objects generated by AttentionCodelets from Workspace. Different BroadcastTriggers can be registered dynamically. When a Trigger fires, all registered BroadcastListeners receive the winner Coalition content. Modules that receive broadcast must register implementing BroadcastListener interface

Author:
Javier Snaider

Method Summary
 void addBroadcastListener(BroadcastListener bl)
          To register a BroadcastListener.
 void addBroadcastTrigger(BroadcastTrigger t)
          To register Triggers
 boolean addCoalition(Coalition coalition)
          This method is invoked by the AttentionCodelet to add a new Coalition
 long getBroadcastSentCount()
          Returns broadcastSentCount
 DecayStrategy getCoalitionDecayStrategy()
          Gets coalitionDecayStrategy
 double getCoalitionRemovalThreshold()
          Gets coalition removal threshold
 long getTickAtLastBroadcast()
          Gets the tick at last broadcast
 void setCoalitionDecayStrategy(DecayStrategy ds)
          Sets coalitionDecayStrategy
 void setCoalitionRemovalThreshold(double threshold)
          Sets coalition removal threshold
 
Methods inherited from interface edu.memphis.ccrg.lida.framework.FrameworkModule
addListener, addSubModule, containsSubmodule, containsSubmodule, decayModule, getAssistingTaskSpawner, getModuleContent, getModuleName, getSubmodule, getSubmodule, getSubmodules, setAssistingTaskSpawner, setModuleName, taskManagerDecayModule
 
Methods inherited from interface edu.memphis.ccrg.lida.framework.initialization.FullyInitializable
setAssociatedModule
 
Methods inherited from interface edu.memphis.ccrg.lida.framework.initialization.Initializable
getParam, init, init
 
Methods inherited from interface edu.memphis.ccrg.lida.globalworkspace.triggers.TriggerListener
triggerBroadcast
 
Methods inherited from interface edu.memphis.ccrg.lida.framework.shared.RefractoryPeriod
getRefractoryPeriod, setRefractoryPeriod
 

Method Detail

addCoalition

boolean addCoalition(Coalition coalition)
This method is invoked by the AttentionCodelet to add a new Coalition

Parameters:
coalition - to be added
Returns:
true if coalition was added

addBroadcastTrigger

void addBroadcastTrigger(BroadcastTrigger t)
To register Triggers

Parameters:
t - a new Trigger

addBroadcastListener

void addBroadcastListener(BroadcastListener bl)
To register a BroadcastListener. Each registered BroadcastListener receives Broadcast Implements Observer Pattern

Parameters:
bl - the BroadcastListener to register

getBroadcastSentCount

long getBroadcastSentCount()
Returns broadcastSentCount

Returns:
a count of the current number of broadcasts sent

getTickAtLastBroadcast

long getTickAtLastBroadcast()
Gets the tick at last broadcast

Returns:
the tick when the last broadcast occurred

setCoalitionDecayStrategy

void setCoalitionDecayStrategy(DecayStrategy ds)
Sets coalitionDecayStrategy

Parameters:
ds - DecayStrategy by which coalitions will be decayed.

getCoalitionDecayStrategy

DecayStrategy getCoalitionDecayStrategy()
Gets coalitionDecayStrategy

Returns:
DecayStrategy by which coalitions will be decayed.

setCoalitionRemovalThreshold

void setCoalitionRemovalThreshold(double threshold)
Sets coalition removal threshold

Parameters:
threshold - lower bound for coalitions to remain in the GlobalWorkspace

getCoalitionRemovalThreshold

double getCoalitionRemovalThreshold()
Gets coalition removal threshold

Returns:
lower bound for coalitions to remain in the GlobalWorkspace