#ifndef DEF_INPUT
#define DEF_INPUT

///Jovian
///Adaptation pour InputAndJoy

// Include
#include <iostream>
#include <SDL/SDL.h>


// Classe
class Input
{
	public:

		Input();
		virtual ~Input();

		virtual void updateEvenements();

		bool terminer() const;
		void afficherPointeur(bool reponse) const;
		void capturerPointeur(bool reponse);

		bool getTouche(const int touche) const;
		bool getBoutonSouris(const Uint8 bouton) const;
		bool mouvementSouris() const;

		int getX() const;
		int getY() const;

		int getXRel() const;
		int getYRel() const;

		void placerPtr(SDL_Surface* activWindow);

		int getWinHalfH();
		int getWinHalfW();


	protected:

		SDL_Event m_evenements;
		bool m_touches[SDLK_LAST];
		bool m_boutonsSouris[8];

		int m_x;
		int m_y;
		int m_xRel;
		int m_yRel;

		bool m_terminer;
		bool m_relativeMouse;

		int m_windowHalfHeight;
		int m_windowHalfWidth;
};

#endif

