enum CELL_STATUS {CELL_UNCERTAIN, CELL_EMPTY, CELL_PERMANENT_OBSTACLE, CELL_GOAL_OBJECT, CELL_ROBOT};
enum LIST_STATUS {NOT_LISTED, OPEN_LIST, CLOSED_LIST};

// Used to represent a rectangular area of knowledge in the array representing the field
struct cell {
	double xPos, yPos;
	double width, height;
	int type;
	double certainty;
};

// Used mainly for accessing cells in the cell array
struct cellID {
	int i,j;

	bool operator != (cellID &rhs)
	{
		if ( this->i != rhs.i || this->j != rhs.j)
			return true;
		else
			return false;
	}

	bool operator == (cellID &rhs)
	{
		if ( this->i == rhs.i && this->j == rhs.j)
			return true;
		else
			return false;
	}

};

