net.sourceforge.jabm.report
Class SeriesReportVariables

java.lang.Object
  extended by net.sourceforge.jabm.event.AbstractModel
      extended by net.sourceforge.jabm.report.SeriesReportVariables
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, EventListener, Model, Report, ReportVariables, Timeseries, org.springframework.beans.factory.InitializingBean

public class SeriesReportVariables
extends AbstractModel
implements java.io.Serializable, org.springframework.beans.factory.InitializingBean, Timeseries

A report which incrementally records values from an underlying ReportVariables object to an array each time it is computed. This can be used as the model for a, e.g. TimeSeriesChart.

See Also:
Serialized Form
 

Field Summary
protected  int n
           
protected  XYReportVariables reportVariables
           
protected  java.util.ArrayList<java.util.ArrayList<java.lang.Number>> xData
           
protected  java.util.ArrayList<java.util.ArrayList<java.lang.Number>> yData
           
 
Fields inherited from class net.sourceforge.jabm.event.AbstractModel
deleteQueue, genericListeners, specificListeners
 
Constructor Summary
SeriesReportVariables()
           
 
Method Summary
 void afterPropertiesSet()
           
 void compute(SimEvent event)
          Update variables.
 void dispose(SimEvent event)
          Clean up any side effects (eg close file).
 void eventOccurred(SimEvent event)
           
 java.lang.String getName()
           
 int getNumberOfSeries()
           
 XYReportVariables getReportVariables()
           
 java.util.Map<java.lang.Object,java.lang.Number> getVariableBindings()
          Get the values calculated by this report.
 java.lang.Number getX(int seriesIndex, int itemIndex)
           
 java.lang.String getxVariableName()
           
 java.lang.Number getY(int seriesIndex, int itemIndex)
           
 java.util.List<java.lang.Object> getyVariableNames()
           
 void initialise(SimEvent event)
          Initialise the variables in response to event.
 void initialiseSeries()
           
 void setReportVariables(XYReportVariables reportVariables)
           
 int size(int seriesIndex)
           
 
Methods inherited from class net.sourceforge.jabm.event.AbstractModel
addListener, addListener, clearListeners, clone, fireEvent, notifyGenericListeners, notifySpecificListeners, processDeleteQueue, removeListener
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface net.sourceforge.jabm.event.Model
addListener, addListener, removeListener
 

Field Detail

xData

protected java.util.ArrayList<java.util.ArrayList<java.lang.Number>> xData

yData

protected java.util.ArrayList<java.util.ArrayList<java.lang.Number>> yData

reportVariables

protected XYReportVariables reportVariables

n

protected int n
Constructor Detail

SeriesReportVariables

public SeriesReportVariables()
Method Detail

getVariableBindings

public java.util.Map<java.lang.Object,java.lang.Number> getVariableBindings()
Description copied from interface: Report
Get the values calculated by this report.

Specified by:
getVariableBindings in interface Report
Returns:
A Map of user-readable variable names to their associated values.

getyVariableNames

public java.util.List<java.lang.Object> getyVariableNames()
Specified by:
getyVariableNames in interface Timeseries

getxVariableName

public java.lang.String getxVariableName()

eventOccurred

public void eventOccurred(SimEvent event)
Specified by:
eventOccurred in interface EventListener

compute

public void compute(SimEvent event)
Description copied from interface: ReportVariables
Update variables.

Specified by:
compute in interface ReportVariables

dispose

public void dispose(SimEvent event)
Description copied from interface: ReportVariables
Clean up any side effects (eg close file).

Specified by:
dispose in interface ReportVariables

initialise

public void initialise(SimEvent event)
Description copied from interface: ReportVariables
Initialise the variables in response to event.

Specified by:
initialise in interface ReportVariables

initialiseSeries

public void initialiseSeries()

getName

public java.lang.String getName()
Specified by:
getName in interface Report
Specified by:
getName in interface ReportVariables

getX

public java.lang.Number getX(int seriesIndex,
                             int itemIndex)
Specified by:
getX in interface Timeseries

getY

public java.lang.Number getY(int seriesIndex,
                             int itemIndex)
Specified by:
getY in interface Timeseries

size

public int size(int seriesIndex)
Specified by:
size in interface Timeseries

getReportVariables

public XYReportVariables getReportVariables()

setReportVariables

public void setReportVariables(XYReportVariables reportVariables)

getNumberOfSeries

public int getNumberOfSeries()
Specified by:
getNumberOfSeries in interface Timeseries

afterPropertiesSet

public void afterPropertiesSet()
                        throws java.lang.Exception
Specified by:
afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
Throws:
java.lang.Exception