#ifndef ENEMYMANAGER_H
#define ENEMYMANAGER_H

#include <list>
#include "entitymanager.h"
#include "enemy.h"
#include "factory.h"


class CEnemyManager : public IEntityManager
{
public:
    CEnemyManager() {};
    virtual ~CEnemyManager() {};

    void Init();
	void Cleanup();

	void Add( IEntity* enemy );
	void Remove( std::string UID );

	int NumOfEntities();
	void GetEntity( std::string UID );

	void Update( int deltaT );
	void Draw( SDL_Surface* screen );

	void Init(CFactory* factory);

	CFactory* m_Factory;

    std::list< CEnemy* > m_EnemyList;
    std::list< CEnemy* >::iterator m_Itor;

};

#endif // ENEMYMANAGER_H
