package cellsociety_team11; public abstract class Cell { public Cell(T value, Coordinates coordinates, Grid grid, int shape) public Coordinates getCoordinates() public T getValue() public T getNewValue() public void setNewValue(T value) public int getShape() public void evaluateCell() public void commitCell() public ArrayList> getNeighbors() } package cellsociety_team11; public class CellSociety extends Application{ public void start (Stage primaryStage) throws Exception } package cellsociety_team11; public class CellSocietyController implements MainController{ public CellSocietyController(String language) public void startSimulation() public void nextStepSimulation() public void updateSimulationSpeed(MouseEvent speedUpdated) public void stopSimulation() public void uploadedXMLFileHandler(File xmlFile) public Scene getScene() } package cellsociety_team11; public class Coordinates { public Coordinates(int i, int j) public int[] getIJ() public int getI() public int getJ() } package cellsociety_team11.game_of_life; public class GameOfLifeCell extends Cell{ public GameOfLifeCell(Boolean value, Coordinates coordinates, Grid grid, int shape) } package cellsociety_team11.game_of_life; public class GameOfLifeGrid extends Grid{ public GameOfLifeGrid(Integer[][] valueGrid, SimulationXMLModel simulation) public GameOfLifeGrid(Boolean[][] valueGrid, SimulationXMLModel simulation) public Cell createNewCell(Boolean value, Coordinates coordinates, int shape) public Cell getEmptyCell() public List getSimulationParameters() } package cellsociety_team11.game_of_life; public class GameOfLifeRules implements Rule{ public Boolean calculateNewValue(Cell c, Boolean currentValue, Grid grid, Coordinates coordinates) } package cellsociety_team11; public abstract class Grid { public Grid(T[][] valueGrid, SimulationXMLModel simulation) public abstract List getSimulationParameters(); public Map getStateTotals() public void nextGrid() public Cell getCell(Coordinates c) public abstract Cell createNewCell(T value, Coordinates coordinates, int shape); public Cell getEdgeCell(Coordinates coordinates) public abstract Cell getEmptyCell(); public Rule getRule() public void setRule(Rule rule) public Cell[][] getGridMatrix() public int getHeight() public int getWidth() public String getWorld() public void setWorld(String world) } package cellsociety_team11.gui; public class CellShape extends Polygon{ public CellShape(DisplayCellInterface displayCellInterface) public double getRadius() public void orientDisplayCell() } package cellsociety_team11.gui; public class CellSocietyGraph extends LineChart{ public CellSocietyGraph(Axis simulationTime, Axis stateCount, ResourceBundle resourceBundle) public void addData(Map dataMap) } package cellsociety_team11.gui.display_cell_types; public class GameOfLifeDisplayCell extends DisplayCell{ public GameOfLifeDisplayCell(Boolean alive, Coordinates coordinates, double width, int numSides) } package cellsociety_team11.gui.display_cell_types; public class PredatorPreyDisplayCell extends DisplayCell{ public PredatorPreyDisplayCell(Integer cellType, Coordinates coordinates, double width, int numSides) } package cellsociety_team11.gui.display_cell_types; public class SegregationDisplayCell extends DisplayCell{ public SegregationDisplayCell(Integer race, Coordinates coordinates, double width, int numSides) } package cellsociety_team11.gui.display_cell_types; public class SlimeMoldDisplayCell extends DisplayCell{ public SlimeMoldDisplayCell(Integer race, Coordinates coordinates, double width, int numSides) } package cellsociety_team11.gui.display_cell_types; public class SpreadingOfFireDisplayCell extends DisplayCell{ public SpreadingOfFireDisplayCell(Integer treeStatus, Coordinates coordinates, double width, int numSides) } package cellsociety_team11.gui; public abstract class DisplayCell extends Pane implements DisplayCellInterface{ public DisplayCell(T value, Coordinates coordinates, double width, int numSides) public void moveCell(double x, double y) public int getNumberOfSides() public double getCellWidth() public void updateValue(T newValue) public Coordinates getCoordinates() } package cellsociety_team11.gui; public interface DisplayCellInterface { public double getCellWidth(); public int getNumberOfSides(); public Coordinates getCoordinates(); public void moveCell(double x, double y); } package cellsociety_team11.gui; public class DisplayGrid extends Pane{ public DisplayGrid(Grid grid, String simulationType, int numSides) throws SimulationInstantiationException public void updateDisplayCells() public Grid getGrid() } package cellsociety_team11.gui; public class MainBorderPane extends BorderPane{ public MainBorderPane(MainController simulationController, ResourceBundle resourceBundle) public void showErrorAlert() public Boolean chooseDisplay() public void updateGraph(Map dataMap) } package cellsociety_team11.gui; public class MainWindow{ public MainWindow(MainController simulationController, String language) public Boolean setGrid(Grid grid, String simulationType, int numSides) public void updateGrids() public Scene getScene() } package cellsociety_team11.gui; public class XMLFileChooser { public XMLFileChooser(String titleProperty, List extensions, ResourceBundle resourceBundle) public FileChooser getXMLFileChooser() } package cellsociety_team11; public interface MainController { public void startSimulation(); public void nextStepSimulation(); public void updateSimulationSpeed(MouseEvent speedUpdated); public void stopSimulation(); public void uploadedXMLFileHandler(File xmlFile); } package cellsociety_team11.predator_prey; public class PredatorPreyCell extends Cell { public PredatorPreyCell(Integer value, Coordinates coordinates, Grid grid, int shape) public int getBreedingTimer() public void setBreedingTimer(int time) public void setBreedingSpan(int time) public int getBreedingSpan() public void resetBreedingTimer() public void tickBreedingTimer() public int getDeathTimer() public void setDeathTimer(int time) public void setLifeSpan(int time) public int getLifeSpan() public void resetDeathTimer() public void tickDeathTimer() public void upTickDeathTimer() } package cellsociety_team11.predator_prey; public class PredatorPreyGrid extends Grid { public PredatorPreyGrid(Integer[][] valueGrid, SimulationXMLModel simulation) public Cell createNewCell(Integer value, Coordinates coordinates, int shape) public int getPreyBreedingSpan() public void setPreyBreedingSpan(int preyBreedingSpan) public int getPredatorBreedingSpan() public void setPredatorBreedingSpan(int predatorBreedingSpan) public int getPredatorLifeSpan() public void setPredatorLifeSpan(int predatorLifeSpan) public Cell getEmptyCell() public List getSimulationParameters() } package cellsociety_team11.predator_prey; public class PredatorPreyRules implements Rule{ public Integer calculateNewValue(Cell cell, Integer value, Grid grid, Coordinates coordinates) } package cellsociety_team11; public interface Rule { } package cellsociety_team11.segregation; public class SegregationCell extends Cell{ public SegregationCell(Integer value, Coordinates coordinates, Grid grid, int shape) } package cellsociety_team11.segregation; public class SegregationGrid extends Grid { public SegregationGrid(Integer[][] valueGrid, SimulationXMLModel simulation) public Cell createNewCell(Integer value, Coordinates coordinates, int shape) public Cell getEmptyCell() public double getThreshold() public void setThreshold(double threshold) public List getSimulationParameters() } package cellsociety_team11.segregation; public class SegregationRules implements Rule{ public Integer calculateNewValue(Cell cell, Integer value, Grid grid, Coordinates coordinates) public double getThreshold() public void setThreshold(double threshold) } package cellsociety_team11; public class SimulationInstantiationException extends RuntimeException{ public SimulationInstantiationException(String message) public SimulationInstantiationException(Throwable cause) public SimulationInstantiationException(String message, Throwable cause) } package cellsociety_team11.slime_mold; public class SlimeMoldCell extends Cell{ public SlimeMoldCell(Integer value, Coordinates coordinates, Grid grid, int shape, int evaporationFactor) public void evaporate() public void diffuse() public boolean move(Grid grid) public int getEvaporationFactor() public void setEvaporationFactor(int evaporationFactor) } package cellsociety_team11.slime_mold; public class SlimeMoldGrid extends Grid { public SlimeMoldGrid(Integer[][] valueGrid, SimulationXMLModel simulation) public Cell createNewCell(Integer value, Coordinates coordinates, int shape) public Cell getEmptyCell() public int getEvaporationFactor() public void setEvaporationFactor(int evaporationFactor) public List getSimulationParameters() } package cellsociety_team11.slime_mold; public class SlimeMoldRules implements Rule{ public Integer calculateNewValue(Cell cell, Integer value, Grid grid, Coordinates coordinates) } package cellsociety_team11.spreading_of_fire; public class SpreadingOfFireCell extends Cell{ public SpreadingOfFireCell(Integer value, Coordinates coordinates, Grid grid, int shape) } package cellsociety_team11.spreading_of_fire; public class SpreadingOfFireGrid extends Grid{ public SpreadingOfFireGrid(Integer[][] valueGrid, SimulationXMLModel simulation) public Cell createNewCell(Integer value, Coordinates coordinates, int shape) public Cell getEmptyCell() public double getProbCatch() public void setProbCatch(double probCatch) public List getSimulationParameters() } package cellsociety_team11.spreading_of_fire; public class SpreadingOfFireRules implements Rule{ public SpreadingOfFireRules(double probCatch) public Integer calculateNewValue(Cell cell, Integer value, Grid grid, Coordinates coordinates) public double getProbCatch() public void setProbCatch(double probCatch) } package xml.factory; public class SimulationXMLFactory extends XMLFactory { public SimulationXMLFactory (String XMLType) public String getSimulationType () public SimulationXMLModel getSimulation (Element root) throws XMLFactoryException } package xml.factory; public abstract class XMLFactory { } 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.model; public class SimulationXMLModel { public SimulationXMLModel (String simulationName) public SimulationXMLModel(String simulationName, String author, String rows, String columns, String shape, String world, public String getSimulationName () throws XMLFactoryException public String getAuthor () throws XMLFactoryException public int getRows () throws XMLFactoryException public int getColumns () throws XMLFactoryException public int getShape () throws XMLFactoryException public String getWorld () throws XMLFactoryException public Integer[][] getInitialLayout () throws XMLFactoryException public int getPreyBreedingSpan () throws XMLFactoryException public int getPredatorBreedingSpan () throws XMLFactoryException public int getPredatorLifeSpan () throws XMLFactoryException public float getProbability () throws XMLFactoryException public int getEvaporationFactor () throws XMLFactoryException public String toString () } package xml.parser; public class XMLParser { public Element getRootElement (String xmlFilename) } package xml.parser; public class XMLParserException extends RuntimeException { public XMLParserException (String message, Object ... values) public XMLParserException (Throwable cause, String message, Object ... values) public XMLParserException (Throwable cause) }