package cellsociety.cells public class PercolationCell extends Cell { public PercolationCell(int state, int row, int col) public void determineNextState() } package cellsociety.cells public class SegregationCell extends Cell { public SegregationCell(int state, int row, int col, Map params) public void determineNextState() public boolean getIsSatisfied() public double getSatisfied() } package cellsociety.cells public class PredatorCell extends WatorCell { public PredatorCell(int cellState, int row, int col, Map params) public void determineNextState() public void determineAction() public void incrementEnergy() public void decrementEnergy() public double getEnergy() public double getStartingEnergy() public double getOffspringEnergy() } package cellsociety.cells public class FireCell extends Cell { public FireCell(int state, int row, int col, Map params) public void determineNextState() } package cellsociety.cells public class EmptyCell extends Cell { public EmptyCell(int cellState, int row, int col) public void determineNextState() } package cellsociety.cells public abstract class WatorCell extends Cell { public WatorCell(int cellState, int row, int col) public abstract void determineAction() public int getNextAction() } package cellsociety.cells public class PreyCell extends WatorCell { public PreyCell(int cellState, int row, int col, Map params) public void determineNextState() public void determineAction() public double getBreedTime() } package cellsociety.cells public class GameOfLifeCell extends Cell { public GameOfLifeCell(int state, int row, int col) public void determineNextState() } package cellsociety.cells public abstract class Cell { public Cell(int state, int row, int col, int[][] neighborDirections) public abstract void determineNextState() public int getState() public void setNeighbors(List neighbors) public int[][] getNeighborDirections() public int getNextState() public List getNeighbors() public void setDims(int i, int j) } package cellsociety.controller public class PercolationController extends Controller { public PercolationController() public void setInitialGrid(Grid oldGrid) public boolean simulationEnded() } package cellsociety.controller public class SegregationController extends Controller { public SegregationController() public void setInitialGrid(Grid oldGrid) public boolean simulationEnded() } package cellsociety.controller public class FireController extends Controller { public FireController() } package cellsociety.controller public class GameOfLifeController extends Controller { public GameOfLifeController() } package cellsociety.controller public abstract class Controller { public Controller() public void setInitialGrid(Grid oldGrid) public Controller(Grid oldGrid) public void resetController() public boolean simulationEnded() public Grid getNewGrid() protected Grid getOldGrid() } package cellsociety.controller public class WatorController extends Controller { public WatorController() public boolean simulationEnded() } package cellsociety public class Main { } package cellsociety.visuals public class GameLoop extends Application { public Scene creatingLandingScreen() public void setExitButtonToLandingScreen() public void setModToFaster() public void setModToSlower() public void setModToNormal() public void stopAnimation() public void playAnimation() public Grid setSpecifcConfigfile(String fileName) public void createSecondLandingScreen() public void start(Stage stage) throws IOException, SAXException, ParserConfigurationException } package cellsociety.visuals public class Graphics { public Graphics() public Scene createVisualGrid(Grid grid, ResourceBundle simulationResource, public Scene setGridView(Grid grid, ResourceBundle simulationResource, public Grid updateGrid(Controller controllerType) public Text constructText(double baseY, int size, String message, FontWeight fontWeight, public void createButton(String buttonName, double baseY, Group root, } package cellsociety.grid public class Grid { public Grid(int width, int height, String fileName, Type type, Map params) public Cell getCellAtLocation(int i, int j) public void setCellAtLocation(int i, int j, Cell cell) public void initializeCells() public int[] getSizeOfGrid() public Grid getCopyOfGrid() protected boolean isInBounds(int i, int j) protected Grid copySelf() } package cellsociety.grid public class ToroidalGrid extends Grid { public ToroidalGrid(int width, int height, String fileName, Type type, public Cell getCellAtLocation(int i, int j) public void setCellAtLocation(int i, int j, Cell cell) protected Grid copySelf() } package cellsociety.grid public class XMLParser { public XMLParser(String fileName) public void readFile() throws ParserConfigurationException, SAXException, IOException public Grid getGrid() public Map getInfo() }