package Cell; public abstract class Cell { public Cell(int x, int y) public abstract void initializeNeighbor(Cell neighbor); public int numNeighbors() public int getCurrentState() public int getNextState() public void enterNextState() public int getX() public int getY() public Color getColor() public int neighborsInDoubleState(int state) public int neighborsInState(int state) public Cell getNeighborInState(int state) } package Cell; public class FireCell extends Cell { public FireCell(int x, int y, int state) public void setNextState(int state) public void initializeNeighbor(Cell neighbor) } package Cell; public class GameOfLifeCell extends Cell { public GameOfLifeCell(int x, int y, int state) public void setNextState(int state) public void initializeNeighbor(Cell neighbor) public int getLifeSpan() public void increaseLife() public void updateLife(GameOfLifeCell current) public void zeroLife() } package Cell; public class PredatorCell extends Cell { public PredatorCell(int x, int y, int state) public void setNextState(int state) public int getTurnsSinceMeal() public void increaseTurnsSinceMeal() public void initializeNeighbor(Cell neighbor) public void eatMeal() public int getLifeSpan() public void increaseLife() public void updateLife(PredatorCell current) public void zeroLife() } package Cell; public class SegregationCell extends Cell { public SegregationCell(int x, int y, int state) public void setNextState(int state) public void initializeNeighbor(Cell neighbor) } package Cell; public class SlimeMoldCell extends Cell { public SlimeMoldCell(int x, int y, int state) public void enterNextState() public void setNextState(int state) public void initializecAMP() public void setConcentraions() public boolean willMove(int refactory) public boolean willRelease(double threshold) public void releasecAMP() public void dispersecAMP(double dispersalRate) public SlimeMoldCell getUpHill() public void switchCells(SlimeMoldCell neighbor) public double getcAMP() public void initializeNeighbor(Cell neighbor) } package EdgeManager; public abstract class EdgeManager { public EdgeManager(Cell[][] cells) public abstract Cell getCell(int xCoord, int yCoord); } package EdgeManager; public class FiniteEdgeManager extends EdgeManager { public FiniteEdgeManager(Cell[][] cells) public Cell getCell(int xCoord, int yCoord) } package EdgeManager; public class ToroidalEdgeManager extends EdgeManager { public ToroidalEdgeManager(Cell[][] cells) public Cell getCell(int xCoord, int yCoord) } package FrontEnd; public class ButtonManager { public ButtonManager(SceneManager sceneManager, ResourceBundle resources) public HBox makeControlPanel() public void startConfiguration() public void resumeConfiguration() public void pauseConfiguration() public void startRestartToggle() public void disablePauseButton() public void setSceneManager(SceneManager sceneManager) } package FrontEnd; public class ChartManager { public ChartManager(int time, Map map) public void initializeSeries(Map map) public void clearSeries() public void updateChart(Map map, int time) public LineChart getLineChart() public void setTime(int time) public int getTime() } package FrontEnd; public class Hexagon extends RegularPolygon { public Hexagon(double size, Color color) } package FrontEnd; public class Main extends Application{ } package FrontEnd; public class ModelManager { public ModelManager(Map parameterMap, String title, Map> customStatesMap) public ModelManager(String title, Map data, Map> customStatesMap) public void convertStringToDouble() public Model createModel(String title) public Map getCurrentParameters() public void setCurrentParameters(Map currentParameters) public String getModelTitle() } package FrontEnd; public class PreferenceManager { public PreferenceManager(Map parameterMap, ResourceBundle resources) public void initializeSlidersAndButtons() public HBox getPreferencePanel() public void setPreferencePanel(HBox preferencePanel) public Slider getSpeedSlider() public void setSpeedSlider(Slider speedSlider) public Map getParameterMap() public void setParameterMap(Map parameterMap) public Map getSliderMap() public void setPreferences() } package FrontEnd; public class RegularPolygon extends Path { public RegularPolygon(double size, int numberOfSides, Color color, int rotation) } package FrontEnd; public class Row extends FlowPane { public Row() public Row(double hgap, double vgap, double d) } package FrontEnd; public class SceneManager { public SceneManager(Stage s, String version) public void selectModel() public void displayScene() public void chooseModel() public void step(double secondDelay) public void stop() public void save() public void start() public void restart() public void pauseAndResume() public void playAnimation() public void setSpeed(int fRAMES_PER_SECOND) public Timeline getAnimation() public void setAnimation(Timeline animation) } package FrontEnd; public class SelectionMenu extends ChoiceDialog{ public SelectionMenu(String defaultChoice, Collection choices) } package FrontEnd; public class Square extends RegularPolygon { public Square(double size, Color color) } package FrontEnd; public class Triangle extends RegularPolygon { public Triangle(double size, Color color) } package Model; public class FireModel extends Model { public FireModel(Map parameters, Map> initialStates) public void update() public boolean terminateCondition() } package Model; public class GameOfLifeModel extends Model { public GameOfLifeModel(Map parameters, public void update() public boolean terminateCondition() } package Model; public abstract class Model { public Model(double rows, double columns, Map> initialStates, double edgeType, public abstract void update(); public abstract boolean terminateCondition(); public Map displayGraph() public Color displayCell(int xCoord, int yCoord) public int getRows() public int getColumns() public String getShapeType() } package Model; public class PredatorModel extends Model { public PredatorModel(Map parameters, public void update() public boolean terminateCondition() } package Model; public class SegregationModel extends Model { public SegregationModel(Map parameters, public void update() public boolean terminateCondition() } package Model; public class SlimeMoldModel extends Model { public SlimeMoldModel(Map parameters, public void update() public boolean terminateCondition() } package NeighborManager; public class AdjacentNeighborManager extends NeighborManager { public AdjacentNeighborManager(Cell[][] cells, EdgeManager edge, } package NeighborManager; public class CornerNeighborManager extends NeighborManager { public CornerNeighborManager(Cell[][] cells, EdgeManager edge, ShapeManager shape) } package NeighborManager; public class EdgeNeighborManager extends NeighborManager { public EdgeNeighborManager(Cell[][] cells, EdgeManager edge, } package NeighborManager; public abstract class NeighborManager { public NeighborManager(Cell[][] cells, EdgeManager edge, ShapeManager shape) public void initializeNeighbors(int number) } package ShapeManager; public class HexagonManager implements ShapeManager { public HexagonManager() public void setCoordinates() public int[] getXCoords(int yCoord) public int[] getYCoords(int xCoord) } package ShapeManager; public interface ShapeManager { } package ShapeManager; public class SquareTriangleManager implements ShapeManager { public SquareTriangleManager() public void setCoordinates() public int[] getXCoords(int yCoord) public int[] getYCoords(int xCoord) } package State; public class FireState extends State { public FireState(int state) } package State; public class GameOfLifeState extends State { public GameOfLifeState(int state) } package State; public class PredatorState extends State { public PredatorState(int state) } package State; public class SegregationState extends State { public SegregationState(int state) } package State; public class SlimeMoldState extends State { public SlimeMoldState(int state) } package State; public abstract class State { public State(int state) public int getState() public Color getColor() } package XML; public class CustomConditionXMLParser { } package XML; public class XMLFileWriter { public void writeXMLtoFile(List tags, List values) } package XML; public interface XMLInterface { public void XMLParser(File Model); } package XML; public class XMLParser { public XMLParser(File Model) public Map getXMLMap() public Map> getCustomConditionsMap() } 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) }