package Cells; public class PredatorPreyCell extends Cell { public PredatorPreyCell (int x, int y, int status) public int getMyReproduction () public int getMyEnergy () public void setMyReproduction (int x) public void setMyEnergy (int x) } package Cells; public class Cell { public Cell(int x, int y, int status) public int getXPos() public int getYPos() public int getStatus() public void setXPos(int x) public void setYPos(int y) public void setMyStatus(int status) } package Configuration; public class CellGrid implements Iterable { public CellGrid(String simulationType, int size, Neighborhood neighborhood, String gridEdgeFormat) public void initialize(List states) public void updateGrid(CellGrid template) public List getNeighbors (Cell cell) public List getNeighbors (Cell cell, Neighborhood neighborhood) public List getEmptyCells() public Cell move(Cell start, Cell destination) public Cell moveToRandomCell(Cell cell, List possibleCells) public Cell moveToAdjacentEmptyCell(Cell cell) public Cell moveToEmptyCell(Cell cell) public List getCellsOfType(int cellType) public List getCells() public void setMyGridEdgeFormat(String format) public Iterator iterator() public void setNeighborhood(Neighborhood neighborhood) } package Configuration; public class PredatorPrey extends Simulation { public static final List CELL_TYPES = List.of( public PredatorPrey(String language, Map results) public void update() } package Configuration; public abstract class Simulation { public static final List DATA_FIELDS = List.of( public Simulation(String type, String title, String author, String description, int size, String gridShape, List cellTypes, Neighborhood neighborhood, String gridEdgeFormat) public Simulation(String language, Map dataValues, List cellTypes, Neighborhood neighborhood, String gridEdgeFormat) public abstract void update(); public void step() public String getType() public String getTitle() public String getAuthor() public String getDescription() public int getSize() public CellGrid getCellGrid() public String getMyNeighborFormat() public String getMyGridShape() public void setGridEdgeFormat(String gridEdgeFormat) public void setNeighborScheme(String neighborScheme) public String getMyGridEdgeFormat () public String toString () } package Configuration; public class GameOfLife extends Simulation { public static final List CELL_TYPES = List.of( public GameOfLife(String language, Map results) public void update () } package Configuration; public class XMLException extends RuntimeException { public XMLException(String message, Object ... values) public XMLException(Throwable cause, String message, Object ... values) public XMLException(Throwable cause) } package Configuration; public class Style { public Style(String gridShape, int cellSize, boolean outlined, List colors, String cellShape) public Style(Map dataValues) public String getGridShape() public int getCellSize() public boolean getIsOutlined() public List getColors() public String getCellShape() } package Configuration; public class Segregation extends Simulation { public static final List DATA_FIELDS = Simulation.addDataFields(List.of("satisfaction")); public static final List CELL_TYPES = List.of( public Segregation(String language, Map results) public void update() public int countSatisfied() public int countUnsatisfied() public double getSatisfactionThreshold() } package Configuration; public class Fire extends Simulation { public static final List DATA_FIELDS = Simulation.addDataFields(List.of("catch")); public static final List CELL_TYPES = List.of( public Fire(String language, Map results) public void update() } package Configuration; public class XMLParser { public XMLParser(String type, String language) public Simulation getSimulation(File dataFile) public Style getStyle(File dataFile) public HashMap collectTextValues(File dataFile) } package app; public class CellSociety extends Application { public void start(Stage stage) public static int getFramesPerSecond() public static void setFramesPerSecond(int newFramesPerSecond) } package gui; public class SegregationGridDisplay extends GridDisplay { public Map initializeCellTypeColors() } package gui; public class SegregationPopulationDisplay extends PopulationDisplay { public void setPopulationDisplay() } package gui; public class SimulationDisplay extends Display { public SimulationDisplay(Simulation inputSim, String gridType) public void update() } package gui; public class ControllerDisplay extends HBox { } package gui; public abstract class PopulationDisplay extends Pane { public abstract void setPopulationDisplay(); } package gui; public class FireGridDisplay extends GridDisplay { public Map initializeCellTypeColors() } package gui; public class PredatorPreyGridDisplay extends GridDisplay { public Map initializeCellTypeColors() } package gui; public abstract class GridDisplay extends Pane { public abstract Map initializeCellTypeColors(); public void setGridDisplay(String gridType, CellGrid cellGrid, Map cellTypeColors) public void setSquareGridDisplay(CellGrid cellGrid, Map cellTypeColors) public void setTriangleGridDisplay(CellGrid cellGrid, Map cellTypeColors) public void setHexagonGridDisplay(CellGrid cellGrid, Map cellTypeColors) } package gui; public abstract class Display { public static final Dimension DEFAULT_SIZE = new Dimension(800, 600); public Display(Simulation inputSim) public Scene getScene() return myScene; } public Simulation getSimulation() return mySimulation; } public boolean isDone() return done; } public void setDone() done = true; } public boolean isPaused() return paused; } public boolean togglePause() return paused = !paused; } public Display getNextDisplay() return nextDisplay; } public void setNextDisplay(Display next) public boolean isStartDisplay() return isStartDisplay; } public abstract void update(); } package gui; public class FirePopulationDisplay extends PopulationDisplay { public void setPopulationDisplay() } package gui; public class PredatorPreyPopulationDisplay extends PopulationDisplay { public void setPopulationDisplay() } package gui; public class ParameterMenuDisplay extends HBox { public File getSelectedFile() public String getGridType() public void setSimulation(Simulation simulation) } package gui; public class StartDisplay extends Display { public StartDisplay() public void update() } package gui; public class LifePopulationDisplay extends PopulationDisplay { public void setPopulationDisplay() } package gui; public class LifeGridDisplay extends GridDisplay { public Map initializeCellTypeColors() }