Brick Groove Machine 0.9.3
Firmware embarqué pour contrôleur/synthé Brick
 
Chargement...
Recherche...
Aucune correspondance
Référence du fichier ui_shortcuts.h

Raccourcis (SHIFT, MUTE/PMUTE), overlays (SEQ/ARP/KEY), et routage SEQ (pages, pads). Plus de détails...

#include <stdbool.h>
#include <stdint.h>
#include "ui_backend.h"
#include "ui_input.h"

Aller au code source de ce fichier.

Structures de données

struct  ui_shortcut_action_t
 Données associées à une action de shortcut. Plus de détails...
 
struct  ui_shortcut_map_result_t
 Résultat produit par la couche de mapping. Plus de détails...
 

Macros

#define UI_SHORTCUT_MAX_ACTIONS   6u
 

Énumérations

enum  ui_shortcut_action_type_t {
  UI_SHORTCUT_ACTION_NONE = 0 , UI_SHORTCUT_ACTION_ENTER_MUTE_QUICK , UI_SHORTCUT_ACTION_ENTER_MUTE_PMUTE , UI_SHORTCUT_ACTION_EXIT_MUTE ,
  UI_SHORTCUT_ACTION_TOGGLE_MUTE_TRACK , UI_SHORTCUT_ACTION_PREPARE_PMUTE_TRACK , UI_SHORTCUT_ACTION_COMMIT_PMUTE , UI_SHORTCUT_ACTION_OPEN_SEQ_OVERLAY ,
  UI_SHORTCUT_ACTION_OPEN_ARP_OVERLAY , UI_SHORTCUT_ACTION_OPEN_KBD_OVERLAY , UI_SHORTCUT_ACTION_KEYBOARD_TOGGLE_SUBMENU , UI_SHORTCUT_ACTION_ENTER_TRACK_MODE ,
  UI_SHORTCUT_ACTION_EXIT_TRACK_MODE , UI_SHORTCUT_ACTION_TRACK_SELECT , UI_SHORTCUT_ACTION_TRANSPORT_PLAY , UI_SHORTCUT_ACTION_TRANSPORT_STOP ,
  UI_SHORTCUT_ACTION_TRANSPORT_REC_TOGGLE , UI_SHORTCUT_ACTION_SEQ_PAGE_NEXT , UI_SHORTCUT_ACTION_SEQ_PAGE_PREV , UI_SHORTCUT_ACTION_SEQ_STEP_HOLD ,
  UI_SHORTCUT_ACTION_SEQ_STEP_RELEASE , UI_SHORTCUT_ACTION_SEQ_ENCODER_TOUCH , UI_SHORTCUT_ACTION_KEY_OCTAVE_UP , UI_SHORTCUT_ACTION_KEY_OCTAVE_DOWN
}
 Types d'actions générées par la couche de mapping. Plus de détails...
 

Fonctions

void ui_shortcut_map_init (ui_mode_context_t *ctx)
 Initialise le contexte runtime côté mapping.
 
void ui_shortcut_map_reset (ui_mode_context_t *ctx)
 Réinitialise le contexte runtime (alias de init).
 
ui_shortcut_map_result_t ui_shortcut_map_process (const ui_input_event_t *evt, ui_mode_context_t *ctx)
 Map un évènement brut vers un ensemble d'actions.
 

Description détaillée

Raccourcis (SHIFT, MUTE/PMUTE), overlays (SEQ/ARP/KEY), et routage SEQ (pages, pads).

Objectifs (Elektron-like) :

  • Tap court = Quick Step / Quick Clear.
  • Maintien (un ou plusieurs steps) = Preview P-Lock (affichage des valeurs P-Lock, encodeurs modifient les P-Lock des steps maintenus). Aucune couleur "focus violet".
  • À la relâche de tous les steps, fin de preview et retour à l’état normal.

Invariants :

  • MUTE prioritaire ; pas de dépendances circulaires ; zéro régression Keyboard/MIDI.

Documentation des macros

◆ UI_SHORTCUT_MAX_ACTIONS

#define UI_SHORTCUT_MAX_ACTIONS   6u

Nombre max d'actions générées par évènement.

Documentation du type de l'énumération

◆ ui_shortcut_action_type_t

Types d'actions générées par la couche de mapping.

Valeurs énumérées
UI_SHORTCUT_ACTION_NONE 

Aucun effet secondaire.

UI_SHORTCUT_ACTION_ENTER_MUTE_QUICK 

Entrée dans MUTE rapide.

UI_SHORTCUT_ACTION_ENTER_MUTE_PMUTE 

Transition QUICK → PMUTE.

UI_SHORTCUT_ACTION_EXIT_MUTE 

Sortie de MUTE/PMUTE.

UI_SHORTCUT_ACTION_TOGGLE_MUTE_TRACK 

Toggle direct d'une piste (QUICK).

UI_SHORTCUT_ACTION_PREPARE_PMUTE_TRACK 

Prépare une piste pour PMUTE.

UI_SHORTCUT_ACTION_COMMIT_PMUTE 

Valide les PMUTE préparés.

UI_SHORTCUT_ACTION_OPEN_SEQ_OVERLAY 

Active overlay SEQ (MODE/SETUP).

UI_SHORTCUT_ACTION_OPEN_ARP_OVERLAY 

Active overlay ARP (MODE/SETUP).

UI_SHORTCUT_ACTION_OPEN_KBD_OVERLAY 

Active overlay Keyboard.

UI_SHORTCUT_ACTION_KEYBOARD_TOGGLE_SUBMENU 

Cycle Keyboard ↔ Arpégiateur.

UI_SHORTCUT_ACTION_ENTER_TRACK_MODE 

Active le mode Track Select.

UI_SHORTCUT_ACTION_EXIT_TRACK_MODE 

Quitte le mode Track Select.

UI_SHORTCUT_ACTION_TRACK_SELECT 

Sélectionne une piste depuis la grille.

UI_SHORTCUT_ACTION_TRANSPORT_PLAY 

PLAY global.

UI_SHORTCUT_ACTION_TRANSPORT_STOP 

STOP global.

UI_SHORTCUT_ACTION_TRANSPORT_REC_TOGGLE 

Toggle REC global.

UI_SHORTCUT_ACTION_SEQ_PAGE_NEXT 

Page SEQ suivante.

UI_SHORTCUT_ACTION_SEQ_PAGE_PREV 

Page SEQ précédente.

UI_SHORTCUT_ACTION_SEQ_STEP_HOLD 

Maintien d'un pad SEQ.

UI_SHORTCUT_ACTION_SEQ_STEP_RELEASE 

Relâche d'un pad SEQ.

UI_SHORTCUT_ACTION_SEQ_ENCODER_TOUCH 

Mouvement encodeur pendant hold.

UI_SHORTCUT_ACTION_KEY_OCTAVE_UP 

Octave + (mode Keyboard).

UI_SHORTCUT_ACTION_KEY_OCTAVE_DOWN 

Octave - (mode Keyboard).

Documentation des fonctions

◆ ui_shortcut_map_init()

void ui_shortcut_map_init ( ui_mode_context_t ctx)

Initialise le contexte runtime côté mapping.

◆ ui_shortcut_map_process()

ui_shortcut_map_result_t ui_shortcut_map_process ( const ui_input_event_t evt,
ui_mode_context_t ctx 
)

Map un évènement brut vers un ensemble d'actions.

Paramètres
evtÉvènement brut.
ctxContexte runtime partagé (in/out).
Renvoie
Résultat contenant les actions + flag consumed.

◆ ui_shortcut_map_reset()

void ui_shortcut_map_reset ( ui_mode_context_t ctx)

Réinitialise le contexte runtime (alias de init).