26#ifndef BRICK_UI_UI_BACKEND_H
27#define BRICK_UI_UI_BACKEND_H
48#define UI_DEST_MASK 0xE000U
49#define UI_DEST_CART 0x0000U
50#define UI_DEST_UI 0x8000U
51#define UI_DEST_MIDI 0x4000U
52#define UI_DEST_ID(x) ((x) & 0x1FFFU)
uint32_t systime_t
Definition ch.h:12
État Keyboard (mode custom latched).
Definition ui_backend.h:100
bool overlay_visible
Definition ui_backend.h:102
int8_t octave
Definition ui_backend.h:103
bool arp_submenu_active
Definition ui_backend.h:104
bool active
Definition ui_backend.h:101
Contexte runtime partagé entre shortcuts/backend.
Definition ui_backend.h:116
bool mute_plus_down
Definition ui_backend.h:123
ui_overlay_id_t overlay_id
Definition ui_backend.h:118
ui_transport_state_t transport
Definition ui_backend.h:126
uint8_t overlay_submode
Definition ui_backend.h:119
ui_seq_runtime_t seq
Definition ui_backend.h:127
ui_custom_mode_t custom_mode
Definition ui_backend.h:117
ui_keyboard_state_t keyboard
Definition ui_backend.h:128
bool overlay_active
Definition ui_backend.h:120
ui_mute_state_t mute_state
Definition ui_backend.h:122
bool mute_shift_latched
Definition ui_backend.h:124
ui_track_state_t track
Definition ui_backend.h:129
État seq (pages + steps maintenus).
Definition ui_backend.h:79
uint16_t held_mask
Definition ui_backend.h:82
uint8_t track_index
Definition ui_backend.h:85
uint8_t track_count
Definition ui_backend.h:86
uint8_t page_index
Definition ui_backend.h:80
uint8_t page_count
Definition ui_backend.h:81
État interne du sélecteur de piste.
Definition ui_backend.h:92
bool active
Definition ui_backend.h:93
bool shift_latched
Definition ui_backend.h:94
État transport global.
Definition ui_backend.h:71
bool playing
Definition ui_backend.h:72
bool recording
Definition ui_backend.h:73
void ui_track_mode_exit(void)
Quitte le mode Track Select.
Definition ui_backend.c:221
void ui_track_mode_enter(void)
Active le mode Track Select (SHIFT + BS11).
Definition ui_backend.c:200
void ui_track_select_from_bs(uint8_t bs_index)
Traite la sélection d'une piste depuis un bouton Step/BS.
Definition ui_backend.c:241
const ui_mode_context_t * ui_backend_get_mode_context(void)
Retourne le contexte runtime courant (lecture seule).
Definition ui_backend.c:314
void ui_backend_process_input(const ui_input_event_t *evt)
Traite un évènement d'entrée complet (bouton/encodeur).
Definition ui_backend.c:325
void ui_led_refresh_state_on_mode_change(seq_mode_t new_mode)
Force la republication de l'état LED lors d'un changement de mode.
Definition ui_backend.c:156
bool ui_backend_shadow_try_get(uint16_t id, uint8_t *out_val)
Definition ui_backend.c:861
ui_mute_state_t
État MUTE courant.
Definition ui_backend.h:62
@ UI_MUTE_STATE_OFF
Definition ui_backend.h:63
@ UI_MUTE_STATE_PMUTE
Definition ui_backend.h:65
@ UI_MUTE_STATE_QUICK
Definition ui_backend.h:64
void ui_backend_init_runtime(void)
Initialise le contexte mode + tables runtime.
Definition ui_backend.c:758
ui_mode_context_t ui_context_t
Definition ui_backend.h:133
void ui_backend_shadow_set(uint16_t id, uint8_t val)
Écriture dans le shadow register local (sans envoi immédiat).
Definition ui_backend.c:884
uint8_t ui_backend_shadow_get(uint16_t id)
Lecture du shadow register local (valeur courante affichable).
Definition ui_backend.c:850
void ui_backend_param_changed(uint16_t id, uint8_t val, bool bitwise, uint8_t mask)
Notifie un changement de paramètre issu de l’UI.
Definition ui_backend.c:798
const char * ui_backend_get_mode_label(void)
Renvoie le label court du mode actif (bandeau supérieur).
Definition ui_backend.c:318
seq_mode_t
Modes séquenceur utilisés pour la synchronisation LED.
Definition ui_backend.h:138
@ SEQ_MODE_DEFAULT
Definition ui_backend.h:139
@ SEQ_MODE_PMUTE
Definition ui_backend.h:140
@ SEQ_MODE_TRACK
Definition ui_backend.h:141
void ui_mode_reset_context(ui_context_t *ctx, seq_mode_t next_mode)
Réinitialise les états runtime lors d'une transition de mode.
Definition ui_mode_transition.c:64
Gestion centralisée des overlays UI (SEQ, ARP, …).
ui_overlay_id_t
Definition ui_overlay.h:25
ui_custom_mode_t
Definition ui_overlay.h:31