Brick Groove Machine
0.9.3
Firmware embarqué pour contrôleur/synthé Brick
Chargement...
Recherche...
Aucune correspondance
ui_input.h
Aller à la documentation de ce fichier.
1
#ifndef BRICK_UI_UI_INPUT_H
2
#define BRICK_UI_UI_INPUT_H
3
13
#include "
ch.h
"
/* pour systime_t ; remplaçable par uint32_t si souhaité */
14
#include <stdbool.h>
15
#include <stdint.h>
16
17
#ifdef __cplusplus
18
extern
"C"
{
19
#endif
20
27
typedef
enum
{
28
UI_BTN_PARAM1
= 0,
29
UI_BTN_PARAM2
,
30
UI_BTN_PARAM3
,
31
UI_BTN_PARAM4
,
32
UI_BTN_PARAM5
,
33
UI_BTN_PARAM6
,
34
UI_BTN_PARAM7
,
35
UI_BTN_PARAM8
,
36
UI_BTN_PAGE1
,
37
UI_BTN_PAGE2
,
38
UI_BTN_PAGE3
,
39
UI_BTN_PAGE4
,
40
UI_BTN_PAGE5
,
41
UI_BTN_PLAY
,
42
UI_BTN_STOP
,
43
UI_BTN_REC
,
44
UI_BTN_PLUS
,
45
UI_BTN_MINUS
,
46
UI_BTN_SEQ1
,
47
UI_BTN_SEQ2
,
48
UI_BTN_SEQ3
,
49
UI_BTN_SEQ4
,
50
UI_BTN_SEQ5
,
51
UI_BTN_SEQ6
,
52
UI_BTN_SEQ7
,
53
UI_BTN_SEQ8
,
54
UI_BTN_SEQ9
,
55
UI_BTN_SEQ10
,
56
UI_BTN_SEQ11
,
57
UI_BTN_SEQ12
,
58
UI_BTN_SEQ13
,
59
UI_BTN_SEQ14
,
60
UI_BTN_SEQ15
,
61
UI_BTN_SEQ16
,
62
63
64
UI_BTN_UNKNOWN
= 255
65
}
ui_button_id_t
;
66
70
typedef
struct
{
71
/* Bouton */
72
uint8_t
btn_id
;
73
bool
btn_pressed
;
74
bool
has_button
;
76
/* Encodeur */
77
uint8_t
encoder
;
78
int16_t
enc_delta
;
79
bool
has_encoder
;
80
}
ui_input_event_t
;
81
88
bool
ui_input_poll
(
ui_input_event_t
*evt,
systime_t
timeout);
89
94
bool
ui_input_shift_is_pressed
(
void
);
95
96
#ifdef __cplusplus
97
}
98
#endif
99
100
#endif
/* BRICK_UI_UI_INPUT_H */
ch.h
systime_t
uint32_t systime_t
Definition
ch.h:12
ui_input_event_t
Événement d'entrée UI neutre (indépendant des drivers).
Definition
ui_input.h:70
ui_input_event_t::has_encoder
bool has_encoder
Definition
ui_input.h:79
ui_input_event_t::has_button
bool has_button
Definition
ui_input.h:74
ui_input_event_t::enc_delta
int16_t enc_delta
Definition
ui_input.h:78
ui_input_event_t::btn_pressed
bool btn_pressed
Definition
ui_input.h:73
ui_input_event_t::btn_id
uint8_t btn_id
Definition
ui_input.h:72
ui_input_event_t::encoder
uint8_t encoder
Definition
ui_input.h:77
ui_input_poll
bool ui_input_poll(ui_input_event_t *evt, systime_t timeout)
Poll unifié des entrées (bouton + encodeur).
Definition
ui_input.c:82
ui_input_shift_is_pressed
bool ui_input_shift_is_pressed(void)
État de la touche SHIFT (abstraction UI).
Definition
ui_mode_edgecase_tests.c:33
ui_button_id_t
ui_button_id_t
Identifiants de boutons neutres UI (indépendants des drivers).
Definition
ui_input.h:27
UI_BTN_PARAM6
@ UI_BTN_PARAM6
Definition
ui_input.h:33
UI_BTN_SEQ7
@ UI_BTN_SEQ7
Definition
ui_input.h:52
UI_BTN_SEQ1
@ UI_BTN_SEQ1
Definition
ui_input.h:46
UI_BTN_SEQ12
@ UI_BTN_SEQ12
Definition
ui_input.h:57
UI_BTN_PAGE2
@ UI_BTN_PAGE2
Definition
ui_input.h:37
UI_BTN_MINUS
@ UI_BTN_MINUS
Definition
ui_input.h:45
UI_BTN_SEQ3
@ UI_BTN_SEQ3
Definition
ui_input.h:48
UI_BTN_STOP
@ UI_BTN_STOP
Definition
ui_input.h:42
UI_BTN_PAGE5
@ UI_BTN_PAGE5
Definition
ui_input.h:40
UI_BTN_SEQ14
@ UI_BTN_SEQ14
Definition
ui_input.h:59
UI_BTN_SEQ16
@ UI_BTN_SEQ16
Definition
ui_input.h:61
UI_BTN_PARAM8
@ UI_BTN_PARAM8
Definition
ui_input.h:35
UI_BTN_PARAM5
@ UI_BTN_PARAM5
Definition
ui_input.h:32
UI_BTN_SEQ15
@ UI_BTN_SEQ15
Definition
ui_input.h:60
UI_BTN_SEQ9
@ UI_BTN_SEQ9
Definition
ui_input.h:54
UI_BTN_PARAM4
@ UI_BTN_PARAM4
Definition
ui_input.h:31
UI_BTN_PLAY
@ UI_BTN_PLAY
Definition
ui_input.h:41
UI_BTN_SEQ11
@ UI_BTN_SEQ11
Definition
ui_input.h:56
UI_BTN_PLUS
@ UI_BTN_PLUS
Definition
ui_input.h:44
UI_BTN_SEQ6
@ UI_BTN_SEQ6
Definition
ui_input.h:51
UI_BTN_SEQ5
@ UI_BTN_SEQ5
Definition
ui_input.h:50
UI_BTN_PAGE4
@ UI_BTN_PAGE4
Definition
ui_input.h:39
UI_BTN_REC
@ UI_BTN_REC
Definition
ui_input.h:43
UI_BTN_PAGE3
@ UI_BTN_PAGE3
Definition
ui_input.h:38
UI_BTN_PARAM2
@ UI_BTN_PARAM2
Definition
ui_input.h:29
UI_BTN_UNKNOWN
@ UI_BTN_UNKNOWN
Definition
ui_input.h:64
UI_BTN_SEQ10
@ UI_BTN_SEQ10
Definition
ui_input.h:55
UI_BTN_SEQ4
@ UI_BTN_SEQ4
Definition
ui_input.h:49
UI_BTN_SEQ2
@ UI_BTN_SEQ2
Definition
ui_input.h:47
UI_BTN_SEQ8
@ UI_BTN_SEQ8
Definition
ui_input.h:53
UI_BTN_SEQ13
@ UI_BTN_SEQ13
Definition
ui_input.h:58
UI_BTN_PARAM7
@ UI_BTN_PARAM7
Definition
ui_input.h:34
UI_BTN_PAGE1
@ UI_BTN_PAGE1
Definition
ui_input.h:36
UI_BTN_PARAM3
@ UI_BTN_PARAM3
Definition
ui_input.h:30
UI_BTN_PARAM1
@ UI_BTN_PARAM1
Definition
ui_input.h:28
ui
ui_input.h
Généré par
1.9.8