net.sourceforge.jabm.report
Interface ReportVariables

All Superinterfaces:
EventListener, Report
All Known Subinterfaces:
Timeseries, XYReportVariables
All Known Implementing Classes:
AbstractReportVariables, CombiReportVariables, CombiSeriesReportVariables, CSVReportVariables, FitnessReportVariables, FittestStrategyReportVariables, JFrameReportVariables, PayoffByStrategyReportVariables, RandomVariateReportVariables, SeriesReportVariables, StrategyExecutionFrequency, SummaryStatisticsReportVariables, TimelessReportVariables, WeightedGraphMetrics

public interface ReportVariables
extends Report

This interface defines Report objects which keep track of variables which are recomputed in response to various simulation events.

This interface allows the same metrics to be collected in different ways, for example at different frequencies: we might collect data on the mean population fitness at the end of each generation, at the end of each simulation, or at some specified temporal frequency.

In this example, the computation of population fitness can be coded once in a single implementation of ReportVariables, and then different Reports can be created which update these variables at the required frequency or in response to the required events.

 

Method Summary
 void compute(SimEvent event)
          Update variables.
 void dispose(SimEvent event)
          Clean up any side effects (eg close file).
 java.lang.String getName()
           
 void initialise(SimEvent event)
          Initialise the variables in response to event.
 
Methods inherited from interface net.sourceforge.jabm.report.Report
getVariableBindings
 
Methods inherited from interface net.sourceforge.jabm.event.EventListener
eventOccurred
 

Method Detail

compute

void compute(SimEvent event)
Update variables.

Parameters:
event -

dispose

void dispose(SimEvent event)
Clean up any side effects (eg close file).

Parameters:
event -

initialise

void initialise(SimEvent event)
Initialise the variables in response to event.

Parameters:
event -

getName

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