KeyboardModule.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /*
  2. * author: Patrick-Christopher Mattulat
  3. * dev-tools: JetBrains CLion
  4. * created: 20.08.2018
  5. * last updated: 20.08.2018
  6. */
  7. #ifndef KEYBOARD_H
  8. #define KEYBOARD_H
  9. #include <cstdint>
  10. #include <SDL.h>
  11. #include "KeyboardKeys.h"
  12. //////////////////////////////////////////////////
  13. //////////////////////////////////////////////////
  14. //// constants
  15. //////////////////////////////////////////////////
  16. //////////////////////////////////////////////////
  17. #define LE_KEYBOARD_KEY_PRESSED 1
  18. #define LE_KEYBOARD_KEY_RELEASED 2
  19. #define LE_KEYBOARD_KEY_INACTIVE 3
  20. //////////////////////////////////////////////////
  21. //////////////////////////////////////////////////
  22. //// class
  23. //////////////////////////////////////////////////
  24. //////////////////////////////////////////////////
  25. class KeyboardModule
  26. {
  27. private:
  28. KeyboardKeys keyboard;
  29. void freeKeyboardKey(uint8_t&);
  30. public:
  31. KeyboardModule();
  32. ~KeyboardModule();
  33. void freeKeys();
  34. bool hasEvent(uint32_t, SDL_Keycode);
  35. void scanKeys(SDL_Event);
  36. };
  37. #endif