32 lines
No EOL
695 B
C
32 lines
No EOL
695 B
C
#ifndef ARC_GRAPHICS_KEYBOARD_H_
|
|
#define ARC_GRAPHICS_KEYBOARD_H_
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#include <stdint.h>
|
|
|
|
typedef struct ARC_Keyboard ARC_Keyboard;
|
|
|
|
typedef struct ARC_KeyboardInfo ARC_KeyboardInfo;
|
|
|
|
typedef enum ARC_KeyboardState {
|
|
ARC_KEY_NONE,
|
|
ARC_KEY_PRESSED,
|
|
ARC_KEY_RELEASED
|
|
} ARC_KeyboardState;
|
|
|
|
#define ARC_KEYBOARD_BUTTON_NUM 239
|
|
|
|
void ARC_Keyboard_Create(ARC_Keyboard **keyboard, ARC_KeyboardInfo *info);
|
|
void ARC_Keyboard_Destroy(ARC_Keyboard *keyboard);
|
|
void ARC_Keyboard_Update(ARC_Keyboard *keyboard);
|
|
|
|
ARC_KeyboardState ARC_Keyboard_GetState(ARC_Keyboard *keyboard, uint8_t keys);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // !ARC_GRAPHICS_KEYBOARD_H_
|