#ifndef BULLETMANAGER_H
#define BULLETMANAGER_H

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


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

    void Init();
	void Cleanup();

	void Add( IEntity* bullet );
	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< CBullet* > m_BulletList;
    std::list< CBullet* >::iterator m_Itor;

};

#endif // BULLETMANAGER_H
