public interface ObstacleCourseInterface { /* THE RECURSIVE-BACKTRACKING method which exhaustively searches * the maze for an exit. * Returns: TRUE to the caller if at the current level, it found an * exit OR false, if it cant go anywhere else from the current position */ public boolean findTheExit(int row, int col); /* Used to determine whether you can move into array[row][col]. * It can only move into that cell if it is not a wall and it is * not already in the current path. * Returns true if you can move in, false if you cannot. */ public boolean possible(int row, int col); /* Returns the start row for the pacman. Determined * by reading in the input file and searching for the 'S' */ /* Return a textual representation of the maze */ public String toString(); // Some getter methods needed by the GUI public int getStartRow(); /* Returns the start column for the pacman. Determined * by reading in the input file and searching for the 'S' */ public int getStartColumn(); /* This method returns a reference to the 2D char-array used by YOU * to represent the obstacle course(which is constructed from a filename * specified during the construction of a new ObstacleCourse object). * Returns: Reference to YOUR 2D char-array instance variable */ public char[][] getArray(); }