org.jactr.modules.pm.visual.scene
Class SceneChangeListener

java.lang.Object
  extended by org.jactr.modules.pm.visual.scene.SceneChangeListener
All Implemented Interfaces:
org.commonreality.event.ICommonRealityListener, org.commonreality.object.manager.event.IAfferentListener, org.commonreality.object.manager.event.IObjectListener<org.commonreality.object.IAfferentObject>, org.jactr.modules.pm.common.memory.map.IFeatureMapListener

public class SceneChangeListener
extends java.lang.Object
implements org.jactr.modules.pm.common.memory.map.IFeatureMapListener, org.commonreality.object.manager.event.IAfferentListener

Scene change listener that implements both IVisualFeatureMapListener to track changes to the IVisualModule's IVisualMap's feature maps, and IAfferentListener which allows the listener to circumvent the visual module and go straight to the source of the percepts.

The listener works by collecting the IIdentifiers of all the percepts that change between calls to reset(), call to check() will recompute the change ratio ( getChangeRatio() ).

Author:
harrison

Constructor Summary
SceneChangeListener()
           
 
Method Summary
 void featureAdded(org.jactr.modules.pm.common.memory.map.FeatureMapEvent event)
           
 void featureRemoved(org.jactr.modules.pm.common.memory.map.FeatureMapEvent event)
           
 void featureUpdated(org.jactr.modules.pm.common.memory.map.FeatureMapEvent event)
           
 double getChangeRatio()
           
 void objectsAdded(org.commonreality.object.manager.event.IObjectEvent<org.commonreality.object.IAfferentObject,?> addEvent)
          will be called when any new percept is added, we check to see if it is a visual percept and log it
 void objectsRemoved(org.commonreality.object.manager.event.IObjectEvent<org.commonreality.object.IAfferentObject,?> removeEvent)
          called when a percept is removed.
 void objectsUpdated(org.commonreality.object.manager.event.IObjectEvent<org.commonreality.object.IAfferentObject,?> updateEvent)
          called when a percept changes, we determine if it is relevant and log it
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SceneChangeListener

public SceneChangeListener()
Method Detail

objectsAdded

public void objectsAdded(org.commonreality.object.manager.event.IObjectEvent<org.commonreality.object.IAfferentObject,?> addEvent)
will be called when any new percept is added, we check to see if it is a visual percept and log it

Specified by:
objectsAdded in interface org.commonreality.object.manager.event.IObjectListener<org.commonreality.object.IAfferentObject>
Parameters:
addEvent -
See Also:
IObjectListener.objectsAdded(org.commonreality.object.manager.event.IObjectEvent)

objectsRemoved

public void objectsRemoved(org.commonreality.object.manager.event.IObjectEvent<org.commonreality.object.IAfferentObject,?> removeEvent)
called when a percept is removed. if it is visual, we log it

Specified by:
objectsRemoved in interface org.commonreality.object.manager.event.IObjectListener<org.commonreality.object.IAfferentObject>
Parameters:
removeEvent -
See Also:
IObjectListener.objectsRemoved(org.commonreality.object.manager.event.IObjectEvent)

objectsUpdated

public void objectsUpdated(org.commonreality.object.manager.event.IObjectEvent<org.commonreality.object.IAfferentObject,?> updateEvent)
called when a percept changes, we determine if it is relevant and log it

Specified by:
objectsUpdated in interface org.commonreality.object.manager.event.IObjectListener<org.commonreality.object.IAfferentObject>
Parameters:
updateEvent -
See Also:
IObjectListener.objectsUpdated(org.commonreality.object.manager.event.IObjectEvent)

getChangeRatio

public double getChangeRatio()

featureAdded

public void featureAdded(org.jactr.modules.pm.common.memory.map.FeatureMapEvent event)
Specified by:
featureAdded in interface org.jactr.modules.pm.common.memory.map.IFeatureMapListener

featureRemoved

public void featureRemoved(org.jactr.modules.pm.common.memory.map.FeatureMapEvent event)
Specified by:
featureRemoved in interface org.jactr.modules.pm.common.memory.map.IFeatureMapListener

featureUpdated

public void featureUpdated(org.jactr.modules.pm.common.memory.map.FeatureMapEvent event)
Specified by:
featureUpdated in interface org.jactr.modules.pm.common.memory.map.IFeatureMapListener