de.cesr.lara.components.model.impl
Class LAbstractStandaloneSynchronisedModel

java.lang.Object
  extended by de.cesr.lara.components.model.impl.LAbstractModel
      extended by de.cesr.lara.components.model.impl.LAbstractStandaloneSynchronisedModel
All Implemented Interfaces:
LaraAbstractEventSubscriber, LaraInternalEventSubscriber, LaraModel
Direct Known Subclasses:
HouseplantModel, MyModel

public abstract class LAbstractStandaloneSynchronisedModel
extends LAbstractModel

The class provides a default implementation of LModel that does not depend on any MAS framework. The procedures perceive(), preProcess() and decide() are executed for all agents in (kind of) parallel. The AbstractSandaloneParallelModel cares about agent organisation.


Field Summary
protected  Collection<LaraAgent<?,?>> agents
          provides access to the agents via the interface AgentToModel
 
Fields inherited from class de.cesr.lara.components.model.impl.LAbstractModel
calendar, currentSimStage, eventBus, floatPointFormat, integerFormat, randomMan, step
 
Constructor Summary
LAbstractStandaloneSynchronisedModel()
          Constructor
 
Method Summary
 void addAgent(LaraAgent<?,?> agent)
           
 void init()
          Methods that override this method must (except you know what you are doing) call super.init()!
 
Methods inherited from class de.cesr.lara.components.model.impl.LAbstractModel
advanceCalender, getCurrentDate, getCurrentSimulationStage, getCurrentStep, getFloatPointFormat, getIntegerFormat, getLRandom, onInternalEvent, setCurrentStep, step, step
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

agents

protected Collection<LaraAgent<?,?>> agents
provides access to the agents via the interface AgentToModel

Constructor Detail

LAbstractStandaloneSynchronisedModel

public LAbstractStandaloneSynchronisedModel()
Constructor

Method Detail

addAgent

public void addAgent(LaraAgent<?,?> agent)
Parameters:
agent -

init

public void init()
Description copied from class: LAbstractModel
Methods that override this method must (except you know what you are doing) call super.init()! Triggered by ModelInstantiatedEvent.

Overrides:
init in class LAbstractModel
See Also:
LAbstractModel.init()