package cellsociety; public class CellGrid { public CellGrid(ArrayList> startingState, SimulationInfo sim) public State[][] getGridState() public int[][] getGridStateAsInt() public void update() public void updateCells() public int[] getRandomEmptyCell() public State getState(int i,int j) public void gridPrint() public GridIterator(Cell[][] grid) public boolean hasNext() public Cell next() } package cellsociety.Cells; public class PercolationCell extends Cell { public PercolationCell(int state, int row, int col, SimulationInfo s) public ArrayList prepareUpdate(ArrayList neighbors) public State convertToState(int state) } package cellsociety.Cells; public class SegregationCell extends Cell { public SegregationCell(int state, int row, int col, SimulationInfo s) public ArrayList prepareUpdate(ArrayList neighbors) public State convertToState(int state) } } package cellsociety.Cells; public class CellAndCordinates { public CellAndCordinates(Cell cell, int destRow, int destCol) public CellAndCordinates(Cell cell, int[] coordinates) public CellAndCordinates(Cell cell) public Cell getCell() public int getDestRow() public int getDestCol() } package cellsociety.Cells; public class FireCell extends Cell { public FireCell(int state, int row, int col, SimulationInfo s) public ArrayList prepareUpdate(ArrayList neighbors) public State convertToState(int state) } package cellsociety.Cells; public class WatorCell extends Cell { public WatorCell(int state, int row, int col, SimulationInfo s) public ArrayList prepareUpdate(ArrayList Neighbors) public CellAndCordinates reproduce() public State convertToState(int state) } package cellsociety.Cells; public class GameOfLifeCell extends Cell implements Cloneable{ public GameOfLifeCell(int state, int row, int col, SimulationInfo s) public ArrayList prepareUpdate(ArrayList neighbors) public State convertToState(int state) public Object clone() } package cellsociety.Cells; public abstract class Cell implements Cloneable{ public Cell(int row, int col, SimulationInfo s) public abstract ArrayList prepareUpdate(ArrayList Neighbors); public State getState() public SimulationInfo getSimulation() public int[] getCoordinates() public abstract State convertToState(int state); public Object clone() public int getRow() public int getCol() public void setCoordinates(int row, int col) } package cellsociety.Cells; public class FallingSandCell extends Cell { public FallingSandCell(int state, int row, int col, SimulationInfo s) public ArrayList prepareUpdate(ArrayList neighbors) public State convertToState(int state) } package cellsociety.file; public class FileSaver { public void setTagData(CAFile caFile, CellGrid grid, UserInput userInput) public void writeFile() } package cellsociety.file; public class CAFile { public CAFile() public void readXML(File xmlFile) throws CAFileException, Exception public String getName() public String getAuthor() public String getDescription() public Integer getRow() public Integer getCol() public CellGrid getCurrentGrid() } package cellsociety.file; public class CAFileException extends RuntimeException { public CAFileException(String message) public CAFileException(String message, Throwable cause) } package cellsociety.file; public class UserInput { public UserInput(String title, String author, String description) public String getAuthor() public String getDescription() public String getTitle() } package cellsociety.animation; public class AnimationEngine extends Application { public AnimationEngine(CAFile importFile) public void start(Stage primaryStage) throws Exception } package cellsociety; public class Main extends Application { public static final String DATA_FILE_FOLDER public void start(Stage primaryStage) throws Exception public void setup(File dataFile, Stage stage) throws CAFileException, Exception public double getVersion() } package cellsociety.userinterface; public class UserInterface { public static final double SCENE_WIDTH public static final double SCENE_HEIGHT public UserInterface(CAFile importFile, Stage stage, Timeline timeline) public void setScene() public void setSimSpeed(double multiplier) public boolean simSpeedSliderAtZero() public boolean getPlayPauseState() public void setPlayPauseState(boolean state) public void playPauseAnimation() public void step() } package cellsociety.userinterface.uibuttons; public class PlayPauseButton extends UIButton{ public PlayPauseButton(double x, double y, UserInterface userInterface) } package cellsociety.userinterface.uibuttons; public class AboutButton extends UIButton { public AboutButton(double x, double y, String message) } package cellsociety.userinterface.uibuttons; public class StepButton extends UIButton{ public StepButton(double x, double y, UserInterface userInterface) } package cellsociety.userinterface.uibuttons; public abstract class UIButton extends Button{ public UIButton(String buttonText, double x, double y) } package cellsociety.userinterface.uisliders; public class SimSpeedSlider extends Slider { public SimSpeedSlider(double min, double max, double initialValue, double x, double y, public Node[] getSliderNodes() public boolean isSliderAtZero() } } package cellsociety.userinterface; public class StateToColor { public static Color getColorFromState(State state) } package cellsociety.userinterface; public class UIGrid { public UIGrid(CellGrid cellGrid, int row, int col, double width, double height) public GridPane getCellGrid() public void update() } package cellsociety; public final class SimulationInfo { public SimulationInfo(SimType simType, ArrayList neighborOffsets, double[] parameters) public SimulationInfo(SimType simType, double[] parameters) public List getNeighborOffsets() public Boolean getUpdatesOnNextGrid() public Comparator getComparator() public SimType getSimType() public double[] getParameters() public static SimType fromString(String str) public List getDefaultNeighborOffsets() public Cell addCell(int state, int row, int col, SimulationInfo s) }