aa4mm.basic.model
Class GenericModelArtefact

java.lang.Object
  extended by aa4mm.basic.model.GenericModelArtefact

public abstract class GenericModelArtefact
extends java.lang.Object

This class represent a model artefact.

Author:
Julien Siebert

Field Summary
protected  SimulTime currentTime
          The current simulation time.
protected  SimulTime nextTime
          The time for the next step or event to be processed by the simulator.
 
Constructor Summary
GenericModelArtefact()
           
 
Method Summary
protected abstract  void createSimulatorInstance()
          Create an instance of the simulator.
abstract  void finishSimulation()
          Do something when simulation is done
 SimulTime getCurrentTime()
           
 SimulTime getNextTime()
           
abstract  java.util.ArrayList<SimulData> getOutputData()
          Get the model output data
abstract  void init()
          Create a simulator instance (by calling aa4mm.basic.model.GenericModelArtefact.createSimulatorInstance()), load the model and initiate it.
abstract  void run()
          Run one simulation step or event
abstract  void setInitialInputData(SimulData data)
          If a model needs initial data from the others model in order to be initiated.
abstract  void setInputData(SimulData data)
          Set the model input data.
protected abstract  void updateSimulationTime()
          Get the current and next simulation time from the simulator and update the ModelArtefact local values.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

currentTime

protected SimulTime currentTime
The current simulation time.


nextTime

protected SimulTime nextTime
The time for the next step or event to be processed by the simulator.

Constructor Detail

GenericModelArtefact

public GenericModelArtefact()
Method Detail

run

public abstract void run()
Run one simulation step or event


getNextTime

public SimulTime getNextTime()
Returns:
The current simulation time.

getCurrentTime

public SimulTime getCurrentTime()
Returns:
The time for the next step or event to be processed by the simulator.

setInputData

public abstract void setInputData(SimulData data)
Set the model input data.

Parameters:
data -

getOutputData

public abstract java.util.ArrayList<SimulData> getOutputData()
Get the model output data

Returns:
the list of model output data

updateSimulationTime

protected abstract void updateSimulationTime()
Get the current and next simulation time from the simulator and update the ModelArtefact local values.


init

public abstract void init()
Create a simulator instance (by calling aa4mm.basic.model.GenericModelArtefact.createSimulatorInstance()), load the model and initiate it.


setInitialInputData

public abstract void setInitialInputData(SimulData data)
If a model needs initial data from the others model in order to be initiated. I.e. internal model parameters are not sufficient, externa parameters must be set from the others coupled model.

Parameters:
data -

createSimulatorInstance

protected abstract void createSimulatorInstance()
Create an instance of the simulator.

See Also:
aa4mm.basic.model.GenericModelArtefact.init()

finishSimulation

public abstract void finishSimulation()
Do something when simulation is done