package alerts; public class Alerts { public static void XMLCreated(String filePath) public static void XMLError(Exception e, File file) public static void createAlert(Exception e, String message) } package backendClasses; public class Cell{ public Cell() public Cell(State initialState) public State getCurrentState() public State getNextState() public void setNextState(State nextState) public void updateCell() public boolean valid() public void increment() } package backendClasses.gametype; public class ConwayGameType implements GameType{ public ConwayGameType() public State determineState(Cell currentCell, List Neighbors) public Point2D determinePosition(Cell currentCell, List Neighbors, int x, int y, Cell[][] grid, int[] xvals, int[] yvals,boolean toroidal) public List getMyValues() public boolean replaceWithEmpty(Cell cell, int time) } package backendClasses.gametype; public class FireGameType implements GameType{ public FireGameType(double prob) public void setprobCatch(double prob) public State determineState(Cell currentCell, List Neighbors) public Point2D determinePosition(Cell currentCell, List Neighbors, int x, int y,Cell[][] grid, int[] xvals, int[] yvals, boolean toroidal) public List getMyValues() public boolean replaceWithEmpty(Cell cell, int time) } package backendClasses.gametype; public interface GameType{ public State determineState(Cell currentCell, List Neighbors); public Point2D determinePosition(Cell currentCell, List Neighbors ,int x, int y, Cell[][] grid, int[] xdeltas, int[] ydeltas,boolean toroidal); public List getMyValues(); public boolean replaceWithEmpty(Cell cell, int time); } package backendClasses.gametype; public class PredPreyGameType implements GameType { public PredPreyGameType(double fishTime, double sharkLife, double sharkTime) public State determineState(Cell currentCell, List Neighbors) public List getMyValues() public Point2D determinePosition(Cell currentCell, List Neighbors, int x, int y, Cell[][]grid, int[] xvals, int[] yvals, boolean toroidal) public boolean replaceWithEmpty(Cell cell, int time) public Point2D updateFish(List Neighbors, Cell[][]grid, int x, int y,int[]xvals, int[] yvals,boolean toroidal) public Point2D updateShark(List Neighbors, Cell[][]grid, int x, int y,int[]xvals, int[] yvals,boolean toroidal) } package backendClasses.gametype; public class RPSGameType implements GameType { public RPSGameType() public State determineState(Cell currentCell, List Neighbors) public Point2D determinePosition(Cell currentCell, List neighbors, int x, int y, Cell[][] grid,int[] xvals, int[] yvals, boolean toroidal) public boolean win(Cell cell1, Cell cell2) public List getMyValues() public boolean replaceWithEmpty(Cell cell, int time) } package backendClasses.gametype; public class SegregationGameType implements GameType { public SegregationGameType(double threshold) public State determineState(Cell currentCell, List Neighbors) public List getMyValues() public Point2D determinePosition(Cell currentCell, List Neighbors, int x,int y, Cell[][]grid, int[] xvals, int[] yvals, boolean toroidal) public boolean replaceWithEmpty(Cell cell, int time) public int numSimilar(Cell givenCell, List cells) public int numDifferent(Cell givenCell, List cells) public Point2D randomEmptyPlace(Cell[][] grid) } package backendClasses.grid; public abstract class Grid { public Grid(int width, int height, GameType g) public void updateGrid() public List getCells(int[] xdeltas, int[] ydeltas, int x, int y) public void setCell(int x, int y, Cell cell) public Cell getCellAtLocation(int x, int y) public List numOfEach() public void toggleToroidal() public void changeNeighbors(int newNeighborhood) } package backendClasses.grid; public class HexGrid extends Grid { public HexGrid(int width, int height, GameType g) public Point2D getPoint(int i, int j) public State getState(int i, int j) } package backendClasses.grid; public class SquareGrid extends Grid { public SquareGrid(int width, int height, GameType g) public Point2D getPoint(int i, int j) public State getState(int i, int j) } package backendClasses.grid; public class TriangleGrid extends Grid { public TriangleGrid(int width, int height, GameType g) public Point2D getPoint(int i, int j) public State getState(int i, int j) } package backendClasses; public class IncorrectGameTypeException extends RuntimeException { public IncorrectGameTypeException(String message, Object ... values) public IncorrectGameTypeException(Throwable problem) } package backendClasses; public class Shark extends State { public Shark(int id, Color color, String name, int rTime, int dTime, GameType g) public void setRTime(int rTime) public void setDTime(int dTime) public int getDTime() public int getRTime() } package backendClasses; public class State { public State(int id, Color color, String name, GameType g) public int getStateId() public Color getStateColor() public String getName() public GameType getMyGameType() } package frontendClasses; public class CellSociety extends Application{ public void start(Stage stage) @Override public void handle(MouseEvent e) @Override public void handle(MouseEvent e) } package frontendClasses; public class Hexagon{ public static final double ANGLE = Math.toRadians(30); public Hexagon(double centerX, double centerY, double radius) public Double[] getPointsArray() } package frontendClasses; public class HexViewer implements Viewer{ public HexViewer(Group group, Grid grid) public Group initGrid(int x, int y, int gridWidth, int gridHeight, int gridRows, int gridCols) public void changeLines() } package frontendClasses; public class SquareViewer implements Viewer { public SquareViewer(Group group, Grid grid) public Group initGrid(int x, int y, int gridWidth, int gridHeight, int gridRows, int gridCols) public void changeLines() } package frontendClasses; public class StateChart { public StateChart (Grid gr, GameType gt) public void addData() public BarChart getBarChart() } package frontendClasses; public class Triangle { public static final double ANGLE = Math.toRadians(60); public Triangle(double x, double y, double side) public Double[] getBottomUpPoints() public Double[] getPointUpPoints() } package frontendClasses; public class TriangleViewer implements Viewer { public TriangleViewer(Group group, Grid grid) public Group initGrid(int x, int y, int gridWidth, int gridHeight, int gridRows, int gridCols) public void changeLines() } package frontendClasses; public interface Viewer { public Group initGrid(int x, int y, int gridWidth, int gridHeight, int gridRows, int gridCols); public void changeLines(); } package reader; public class Reader { public Reader(File file) public int getRows() public int getColumns() public GameType getGameType() public void initializeGrid(Grid myGrid) public void saveXML(Grid myGrid) } package reader; public class XMLBuilder { public XMLBuilder (Document doc) public void buildXML (String simulationType, String simulationName, int numRows, int numCols, public void saveXMLFile(String filePath) throws TransformerException, IOException } package reader; public class XMLException extends RuntimeException { public XMLException(String message, Object ... values) public XMLException(Throwable problem) } package reader; public class XMLParser { public XMLParser(File file) public File getFile() public String getTextFromXML(String tag) } package resources; public class Resources { public static final ResourceBundle RESOURCEKEYS = ResourceBundle.getBundle("resources/resourceKeys"); public static String getString(String key) public static int getInt(String key) }