#ifndef PATCH_H
#define PATCH_H

#include <vector>
#include <string>
#include "Agent.h"
#include "Globals.h"

//*************************************
//***
//*** Created by Clauda Ephrem   Date Jan 3, 2008
//*** 
//*** Modified May 15th by WFN
//*** allowed GetNextUnpairedAgent to exclude the agent that called it
//*** 
//*************************************
using namespace std;

class Agent;
class Patch 
{
private:
	int XCoordinate;
	int YCoordinate;
	bool IsFull;
	Agent **OccupyingAgents;
	
	
public:
	bool IsPatchFull();
	Agent* GetNextAgent();
	Agent* GetNextUnpairedAgent(Agent* hLooker);
	void Agent_arriving(Agent* p_agent);
	void Agent_departing(Agent* p_agent);
	int getXCoordinate();
	int getYCoordinate();
	Patch(int xCoor, int yCoor);
	Patch();
};

#endif;