package cellsociety; public class SimulationSetup { public SimulationSetup() public Cell[][] getGrid(File file) public String getLastAnimationTitle()return lastAnimationTitle;} public String getLastAnimationAuthor()return lastAnimationAuthor;} public HashMap getSimulationMap() return simulationMap;} public void saveSimulationState(Cell[][] grid, File currentFile, String newFilePath) } package cellsociety; public class SegregationCell extends MovableCell{ public SegregationCell(int state, int row, int col,int gridRows,int gridCols, String cellShape,String gridType,double satisfactionRate) public void update(Cell[][] grid) public void react(Cell[][] mygrid) public static ListgetDataFields()return dataFields;} public static String getSimulationType()return simulationType;} } package cellsociety; public class SimulationController { public SimulationController(Group rootGroup) public String getCurrentTitle()return currentTitle;} public String getCurrentAuthor() return currentAuthor;} public HashMap getSimulationMap() return simulationMap;} public void step() public void loadAnimation(File file) public void saveAnimation(File file) } package cellsociety; public class PredatorPreyCell extends MovableCell{ public PredatorPreyCell(int state, int row, int col,int gridRows,int gridCols, String cellShape,String gridType, int breedingTime) public void updateColor() public void update(Cell[][] grid) public static ListgetDataFields()return dataFields;} public static String getSimulationType()return simulationType;} public void react(Cell[][]grid) } package cellsociety; public class MenuController { public MenuController( Group root) public double getMilDelay()return milDelay;} public SimulationController getSimulationController() public MenuBar setMenu(Stage stage) } package cellsociety; public class FireCell extends Cell { public FireCell (int state,int row, int col,int gridRows, int gridCols, String cellShape,String gridType,double probCatch) public static List getDataFields()return dataFields;} public static String getSimulationType()return simulationType;} public void update(Cell[][] grid) } package cellsociety; public class XMLException extends RuntimeException { public XMLException (String message, Object ... values) public XMLException (Throwable cause, String message, Object ... values) public XMLException (Throwable cause) } package cellsociety; public class Main extends Application { public void start(Stage stage) public static void playAnimation() animation.play(); public static void stopAnimation() } package cellsociety; public class LifeCell extends Cell { public LifeCell(int state, int row, int col,int gridRows, int gridCols,String cellShape,String gridType) public void update(Cell[][] grid) public static ListgetDataFields()return dataFields;} public static String getSimulationType()return simulationType;} } package cellsociety; public class RockPaperScissorCell extends MovableCell { public RockPaperScissorCell(int state, int row, int col,int gridRows, int gridCols,String cellShape,String gridType) public void updateColor() public void update(Cell[][] grid) public void react(Cell[][]grid) public static ListgetDataFields()return dataFields;} public static String getSimulationType()return simulationType;} } package cellsociety; public abstract class Cell { public Cell(int state,int row, int col, String cellShape,int gridRows, int gridCols,String gridType) public int getGridRows()return myGridRows;} public int getGridCols()return myGridCols;} public int getCurrentState() public int getRows() public int getCols() public void setFutureState(int state) public List getNeighbors(Cell[][] grid) public void react(Cell[][] mygrid) public Polygon getMyShape()return myShape;} } package cellsociety; public class XMLParser { public XMLParser (String type) public void parseXMLHeader(File dataFile) public String getCurrentAnimation()return currentAnimation;} public String getCurrentAuthor()return currentAuthor;} public HashMap getSimulationMap() return simulationMap;} public int getGridRows()return gridRows;} public int getGridCols()return gridCols;} public boolean shouldRandomlyGenerate(File dataFile) public Cell[][] getRPSGrid(File dataFile)throws IllegalArgumentException public Cell[][] getRPSGridWithStates(File dataFile) throws IllegalArgumentException public Cell[][] getPredatorGrid(File dataFile) throws IllegalArgumentException public Cell[][] getPredatorGridWithStates(File dataFile) throws IllegalArgumentException public Cell[][]getFireGrid(File dataFile) throws IllegalArgumentException public Cell[][] getFireGridWithStates(File dataFile) throws IllegalArgumentException public Cell[][] getSegregationGrid(File dataFile) throws IllegalArgumentException public Cell[][] getSegregationGridWithStates(File dataFile) throws IllegalArgumentException public Cell[][] getLifeCellGrid(File dataFile) throws IllegalArgumentException public Cell[][] getLifeCellGridWithStates(File dataFile) throws IllegalArgumentException }