public class VisionWorldView extends EventDrivenWorldView implements IVisionWorldView
Modifier and Type | Field and Description |
---|---|
static String |
WORLDVIEW_DEPENDENCY |
notifyEventsList, receiveEventProcessing
COMPONENT_ID, control, controller, eventBus, log
Constructor and Description |
---|
VisionWorldView(ComponentDependencies dependencies,
IComponentBus bus,
IAgentLogger log) |
Modifier and Type | Method and Description |
---|---|
protected void |
addVisibleObject(IViewable worldObject)
Method that adds a world object to the visible object maps.
|
protected void |
cleanUp()
Cleans up internal data structures, called from start/stop/kill/reset methods.
|
Map<Class,Map<WorldObjectId,IViewable>> |
getAllVisible()
Returns map of all visible objects (
IViewable instances} - those that the agent can currently see. |
<T extends IViewable> |
getAllVisible(Class<T> type)
Returns map of all visible objects (
IViewable instances} - those that the agent can currently see. |
Map<WorldObjectId,IViewable> |
getVisible()
Returns map of all visible objects (
IViewable instances} organized according to their WorldObjectId -
those that the agent can currently see. |
IViewable |
getVisible(WorldObjectId id)
Returns a visible world object of the specific id (if exists inside the world view and is visible).
|
protected void |
objectAppeared(IViewable obj)
Called whenever the object appears in the agent's FOV.
|
protected void |
objectCreated(IWorldObject obj)
Additionally, it provides handling of
IViewable objects raising WorldObjectAppearedEvent automatically (if object is visible). |
protected void |
objectDestroyed(IWorldObject obj)
Additionally it handles
IViewable objects automatically raising WorldObjectDisappearedEvent if object was visible
before it was destroyed. |
protected void |
objectDisappeared(IViewable obj)
Called whenever the object disappears from the agent's FOV.
|
protected void |
objectUpdatedEvent(IWorldObjectUpdatedEvent updateEvent)
It additionally handles
IViewable objects automatically raising WorldObjectAppearedEvent and
WorldObjectDisappearedEvent . |
protected void |
removeVisibleObject(IViewable worldObject)
Removes world object from the visible world maps.
|
innerNotify, notify, notifyAfterPropagation, notifyImmediately, objectUpdated, raiseEvent
addEventListener, addObjectListener, addObjectListener, addObjectListener, addObjectListener, addWorldObject, get, get, get, getAll, getAll, getComponentId, getEventBus, getLog, getSingle, isListening, isListening, isListening, isListening, isListening, isListening, isPaused, isRunning, kill, pause, prePause, preStop, removeEventListener, removeListener, removeObjectListener, removeObjectListener, removeObjectListener, removeObjectListener, removeWorldObject, reset, resume, start, stop, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
addEventListener, addObjectListener, addObjectListener, addObjectListener, addObjectListener, get, get, get, getAll, getAll, getEventBus, getSingle, isListening, isListening, isListening, isListening, isListening, isListening, removeEventListener, removeListener, removeObjectListener, removeObjectListener, removeObjectListener, removeObjectListener
notify, notifyAfterPropagation, notifyImmediately
getComponentId
public static final String WORLDVIEW_DEPENDENCY
public VisionWorldView(ComponentDependencies dependencies, IComponentBus bus, IAgentLogger log)
protected void cleanUp()
AbstractWorldView
If you override this method, do not forget to call super.cleanUp().
cleanUp
in class AbstractWorldView
public Map<Class,Map<WorldObjectId,IViewable>> getAllVisible()
IVisionWorldView
IViewable
instances} - those that the agent can currently see.
WARNING: If you will do iteration over the map, you must synchronize on it.
getAllVisible
in interface IVisionWorldView
public <T extends IViewable> Map<WorldObjectId,T> getAllVisible(Class<T> type)
IVisionWorldView
IViewable
instances} - those that the agent can currently see.
WARNING: If you will do iteration over the map, you must synchronize on it.
getAllVisible
in interface IVisionWorldView
public Map<WorldObjectId,IViewable> getVisible()
IVisionWorldView
IViewable
instances} organized according to their WorldObjectId
-
those that the agent can currently see.
WARNING: If you will do iteration over the map, you must synchronize on it.
getVisible
in interface IVisionWorldView
public IViewable getVisible(WorldObjectId id)
IVisionWorldView
Otherwise, null is returned.
getVisible
in interface IVisionWorldView
id
- objects's idprotected void addVisibleObject(IViewable worldObject)
Synchronized!
worldObject
- protected void removeVisibleObject(IViewable worldObject)
Synchronized!
worldObject
- protected void objectUpdatedEvent(IWorldObjectUpdatedEvent updateEvent)
IViewable
objects automatically raising WorldObjectAppearedEvent
and
WorldObjectDisappearedEvent
.objectUpdatedEvent
in class EventDrivenWorldView
protected void objectCreated(IWorldObject obj)
IViewable
objects raising WorldObjectAppearedEvent
automatically (if object is visible).objectCreated
in class EventDrivenWorldView
protected void objectAppeared(IViewable obj)
obj
- protected void objectDisappeared(IViewable obj)
obj
- protected void objectDestroyed(IWorldObject obj)
IViewable
objects automatically raising WorldObjectDisappearedEvent
if object was visible
before it was destroyed.objectDestroyed
in class EventDrivenWorldView
obj
- Copyright © 2012 AMIS research group, Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic. All Rights Reserved.