package button; public class ButtonCreater { public ButtonCreater(String property) public Button getButton() } package button; public class Exit extends ButtonCreater { public Exit() } package button; public class OpenFile extends ButtonCreater{ public OpenFile() } package button; public class Reset extends ButtonCreater { public Reset() } package button; public class Start extends ButtonCreater{ public Start() } package button; public class Step extends ButtonCreater{ public Step() } package button; public class Stop extends ButtonCreater{ public Stop() } package cellpackage; public class Agent { public Agent(int sugar, int metabolism, int vision) public int getMySugar() public void setMySugar(int sugar) public int getMyMetabolism() public void setMyMetabolism(int metabolism) public int getMyVision() public void setMyVision(int vision) } package cellpackage; public class Cell { public Cell(Shape myShape, State myState) public void setShape(Shape myShape) public Shape getShape() public State getCellCurrentState() public void setCellCurrentState(State cellCurrentState) public State getNextState() public void setNextState(State cellNextState) } package cellpackage; public class State { public State(String stateName, Paint myColor, int stateID) public State(State s, int breedCount, int starveCount) public State(Agent a, State s, int tick) public String getStateName() public void setStateName(String stateName) public Paint getStateColor() public void setStateColor(Paint stateColor) public int getStateID() public void setStateID(int stateID) public int getBreedCount() public int getStarveCount() public void setBreedCount(int breedCount) public int getSugarAmt() public void setSugarAmt(int x) public int getSugarCapacity() public Agent getAgent() public int getTick() public void setTick(int x) } package gui; public class ChooseFile { public File chooseFile() } package gui; import cellpackage.Cell; public class Controller { public Controller() public Scene init() public String getTitle() } package gui; public class Grid implements GridInterface { public Grid(int noOfColumns, int noOfRows) public Map createGrid(Paint[][] myGridColor, Map myStateColorMap) public void changeMyGridColor(int row, int col, Paint color) public GridPane getGrid() } package gui; public interface GridInterface { public default void createGrid(Paint[][] myGridColor) public default void updateGrid(int rowIndex, int colIndex, Paint color) } package gui; public class MainGUI { public MainGUI(List myParameterList) public Group setScene(Paint[][] myGridColor, Map stateColorMap) public Button getResetButton() public Button getStopSimulationButton() public Button getStepSimulationButton() public Button getStartSimulationButton() public Slider getSimulationSpeedSlider() public void updateGridColor(int row, int col, Paint color) public void updatePopulationCount(Paint color) public void updatePopulationGraph(boolean resetLineGraph) public void resetStatePopulationMap() } package gui; public class PopulationGraph { public void drawGraph(Map myStatePopulationMap) public void addPointsOnGraph(Map myStatePopulationMap, boolean resetLineGraph) public LineChart getMyStatePopulationChart() } package gui; public class SimulationSpeedSlider extends SliderCreater{ public SimulationSpeedSlider() } package gui; public class SimulationTitle { public SimulationTitle(String mySimulationName) public Text getMySimulationTitle() } package gui; public class SliderCreater { public SliderCreater(int minValue, int maxValue, int defaultValue ) } package gui; public class StartScreen { public String getTITLE() public StartScreen() public Group createRoot() public Button getOpenFileButton() public void exitSimulation() } public class Main extends Application{ public void start(Stage myStage) throws Exception } package simulations; public class Coordinates { public Coordinates(int x, int y) public int getX() public int getY() } package simulations; import cellpackage.Cell; import cellpackage.State; public class GameOfLife extends Simulation{ public GameOfLife(Cell[][] grid, State state1, State state2) public void updateSimulation() } package simulations; import cellpackage.*; public class PredPrey extends Simulation{ public PredPrey(Cell[][] gr, int fishBreed, int sharkBreed, int sharkStarve, State s1, State s2, State s3) public void updateSimulation() } package simulations; import cellpackage.Cell; import cellpackage.State; public class Segregation extends Simulation { public Segregation(Cell[][] grid, double spercentSatisfaction, State state1) public void updateSimulation() } package simulations; import cellpackage.Cell; public abstract class Simulation { public Simulation(Cell[][] grid) public Cell[][] getGrid() public abstract void updateSimulation(); } package simulations; import cellpackage.Cell; import cellpackage.State; public class SimulationManager { public SimulationManager(SimModel simModel) public Simulation getSimulationType(String mySimulationName) public void initializeMyCells(String mySimulationName) public Cell[][] getMyGrid() } package simulations; import cellpackage.Cell; import cellpackage.State; public class SlimeMold extends Simulation{ public SlimeMold(Cell[][] grid, State state1, State state2) public void updateSimulation() } package simulations; import cellpackage.Cell; import cellpackage.State; public class SpreadingOfFire extends Simulation{ public SpreadingOfFire(Cell[][] grid, double probCatch, State state1, State state2, State state3) public void updateSimulation() } package xml.factory; public class FireXMLFactory extends SimXMLFactory { public FireXMLFactory () public FireModel getSim (Element root) throws XMLFactoryException } package xml.factory; public class GameOfLifeXMLFactory extends SimXMLFactory { public GameOfLifeXMLFactory () public GameOfLifeModel getSim (Element root) throws XMLFactoryException } package xml.factory; public class PredPreyXMLFactory extends SimXMLFactory { public PredPreyXMLFactory () public PredPreyModel getSim (Element root) throws XMLFactoryException } package xml.factory; public class SegregationXMLFactory extends SimXMLFactory { public SegregationXMLFactory () public SegregationModel getSim (Element root) throws XMLFactoryException } package xml.factory; public abstract class SimXMLFactory { public String getSimType () public abstract SimModel getSim (Element root) throws XMLFactoryException; } package xml.factory; public class SlimeMoldXMLFactory extends SimXMLFactory { public SlimeMoldXMLFactory () public SlimeMoldModel getSim(Element root) throws XMLFactoryException } package xml.factory; public class XMLFactoryException extends Exception { public XMLFactoryException (String message, Object ... values) public XMLFactoryException (Throwable cause, String message, Object ... values) public XMLFactoryException (Throwable cause) } package xml; public class MainXML { public SimModel xmlRead (File file) } package xml.model; public class FireModel extends SimModel { public FireModel(String[] genParams, double probCatch, GenState[] genStates) public FireModel() public double getMyProbCatch() public GenState getMyTree() public GenState getMyBurning() public GenState getMyEmptyState() } package xml.model; public class GameOfLifeModel extends SimModel { public GameOfLifeModel() public GameOfLifeModel(String[] genParams, GenState[] genStates) public GenState getMyFullState() public GenState getMyEmptyState() } package xml.model; public class GenState { public GenState (String name, String color, String perc, String stateID) public String getMyName() public String getMyColor() public double getMyPercentage() public int getMyStateID() } package xml.model; public class PredPreyModel extends SimModel { public PredPreyModel(String[] genParams, public int getMyFishTurnsToBreed() public int getMySharkTurnsToBreed() public int getMySharkTurnsToStarve() public GenState getMyFish() public GenState getMyShark() public GenState getMyEmptyState() } package xml.model; public class SegregationModel extends SimModel { public SegregationModel(String[] genParams, double satisf, GenState[] genStates) public double getMySatisfaction() public GenState getMyRace1() public GenState getMyRace2() public GenState getMyEmptyState() } package xml.model; public abstract class SimModel { public SimModel () public SimModel (String[] genParams) public String getMySimName() public String getMySimAuthor() public int getMySimWidth() public int getMySimHeight() public GenState getMyFullState() public GenState getMyEmptyState() public double getMyProbCatch() public GenState getMyTree() public GenState getMyBurning() public int getMyFishTurnsToBreed() public int getMySharkTurnsToBreed() public int getMySharkTurnsToStarve() public GenState getMyFish() public GenState getMyShark() public double getMySatisfaction() public GenState getMyRace1() public GenState getMyRace2() public GenState getMyMoldState() } package xml.model; public class SlimeMoldModel extends SimModel { public SlimeMoldModel() public SlimeMoldModel(String[] genParams, GenState[] genStates) public GenState getMyMoldState() public GenState getMyEmptyState() } package xml; public class XMLParser { public Element getRootElement (String xmlFilename) } package xml; public class XMLParserException extends RuntimeException { public XMLParserException (String message, Object ... values) public XMLParserException (Throwable cause, String message, Object ... values) public XMLParserException (Throwable cause) }