#ifndef GROUPPATHFINDERMANAGER_H
#define GROUPPATHFINDERMANAGER_H

#include <map>

#include "MemoryManager/debugNew.h"
namespace ground{
	// forward declaration
	class GroupPathFinder;

	class GroupPathFinderManager
	{
	private:
		static GroupPathFinderManager* instance;
		std::map<void*,GroupPathFinder*> groups;
		GroupPathFinderManager(void);
		virtual ~GroupPathFinderManager(void);
	public:
		static GroupPathFinderManager& getInstance();
		static void destroy();
		void addGroup(GroupPathFinder* group);
		void removeGroup(GroupPathFinder* group);
		bool containGroup(GroupPathFinder * group);
		void removeAllGroups();
		void update();
	};
};// namespace ground

#include "MemoryManager/debugNewOff.h"

#endif
