madkit.kernel
Class Probe<T extends AbstractAgent>

java.lang.Object
  extended by madkit.kernel.Probe<T>
Direct Known Subclasses:
BeeEnumerator, PropertyProbe, QueenBeeEnumerator, ReflexiveProbe, TurtleProbe

public class Probe<T extends AbstractAgent>
extends java.lang.Object

This class defines a watcher probe. A probe is configured according to a community, a group and a role.

Since:
MadKit 2.0
Version:
3.1 05/09/07
Author:
Fabien Michel (MadKit 3.1) and 2.0 (Overlooker)., Olivier Gutknecht version 1.0

Constructor Summary
Probe(java.lang.String groupName, java.lang.String roleName)
           
Probe(java.lang.String communityName, java.lang.String groupName, java.lang.String roleName)
           
 
Method Summary
 A getAgentNb(int nb)
           
 java.util.ListIterator<A> getAgentsIterator()
          Deprecated. as of MadKit 4.3 : simply type getCurrentAgentsList().listIterator()
 java.lang.String getCommunity()
           
 java.util.List<A> getCurrentAgentsList()
           
 java.lang.String getGroup()
           
 java.lang.String getRole()
           
 java.util.List<A> getShuffledList()
           
 void initialize()
          this method is automatically invoked the first time the agents variable is updated so it's a good place to initialize activator's parameters like in the SingleMethodActivator for example
 int numberOfAgents()
           
 java.lang.String toString()
           
 void update(AbstractAgent theAgent, boolean added)
          this method is automatically invoked when changes occur on the considered group/role couple
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Probe

public Probe(java.lang.String communityName,
             java.lang.String groupName,
             java.lang.String roleName)

Probe

public Probe(java.lang.String groupName,
             java.lang.String roleName)
Method Detail

initialize

public void initialize()
this method is automatically invoked the first time the agents variable is updated so it's a good place to initialize activator's parameters like in the SingleMethodActivator for example


update

public void update(AbstractAgent theAgent,
                   boolean added)
this method is automatically invoked when changes occur on the considered group/role couple

Parameters:
theAgent - is the agent which have been added or removed from the agents collection (a List)
added - is true is theAgent has been added to the agents, false if removed from it

getAgentsIterator

public final java.util.ListIterator<A> getAgentsIterator()
Deprecated. as of MadKit 4.3 : simply type getCurrentAgentsList().listIterator()

Returns:
a ListIterator over the agents that handle the group/role couple
Since:
MadKit 3.0

getShuffledList

public final java.util.List<A> getShuffledList()
Returns:
a ListIterator which has been previously shuffled
Since:
MadKit 3.0

getCurrentAgentsList

public final java.util.List<A> getCurrentAgentsList()
Returns:
a list view (a snapshot at moment t) of the agents that handle the group/role couple (in proper sequence)
Since:
MadKit 3.0

numberOfAgents

public final int numberOfAgents()
Returns:
the number of the agents that handle the group/role couple

getAgentNb

public final A getAgentNb(int nb)

getCommunity

public final java.lang.String getCommunity()

getGroup

public final java.lang.String getGroup()

getRole

public final java.lang.String getRole()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object


Copyright © Madkit Team (O. Gutknecht, J. Ferber, F. Michel et al.) All Rights Reserved.