
#ifndef PLATFORM_WIN32_KEYBOARD_H
#define PLATFORM_WIN32_KEYBOARD_H

#include <windows.h>
#include <Spectre/System/Event.h>
#include <Spectre/Input/Keyboard.h>

namespace sp {

class Win32Keyboard : public Keyboard
{
public :
	void init();

	bool isKeyDown(Keyboard::Key key);

	// Translate a Win32 Event to sp::Event, Called from Win32EventQueue
	static bool handleMessage(MSG message, Event& event);

protected :

	void update(InputModule *input);
};

} // namespace sp

#endif /* PLATFORM_WIN32_KEYBOARD_H */
