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

Backend MUTE / PMUTE pour l'UI Brick (16 tracks, toggle, intégration LED). Plus de détails...

#include <stdbool.h>
#include <stdint.h>

Aller au code source de ce fichier.

Fonctions

void ui_mute_backend_init (void)
 Initialise l'état MUTE/PMUTE (toutes tracks démute, PMUTE vide).
 
void ui_mute_backend_apply (uint8_t track, bool mute)
 Applique un état explicite sur une track.
 
void ui_mute_backend_toggle (uint8_t track)
 Bascule l'état MUTE d'une track (toggle).
 
void ui_mute_backend_toggle_prepare (uint8_t track)
 Bascule l'état préparé PMUTE d'une track (toggle prepare).
 
void ui_mute_backend_commit (void)
 Valide toutes les préparations PMUTE (commit) et nettoie.
 
void ui_mute_backend_cancel (void)
 Annule toutes les préparations PMUTE en cours (cancel).
 
void ui_mute_backend_publish_state (void)
 Republie l'état courant MUTE/PMUTE vers le backend LED.
 
void ui_mute_backend_clear (void)
 Purge toutes les préparations PMUTE sans toucher aux états MUTE réels.
 
bool ui_mute_backend_is_muted (uint8_t track)
 
bool ui_mute_backend_is_prepared (uint8_t track)
 

Description détaillée

Backend MUTE / PMUTE pour l'UI Brick (16 tracks, toggle, intégration LED).

Ce backend maintient l'état de MUTE pour 16 tracks (4 cartouches × 4 tracks) et expose des opérations simples :

  • apply(track, mute) : fixe explicitement l'état d'une track
  • toggle(track) : bascule l'état (utilisé en QUICK MUTE à l'appui)
  • toggle_prepare(track) : bascule l'état préparé (PMUTE), même rendu visuel
  • commit() / cancel() : applique/annule les préparations PMUTE

Le rendu LED est assuré par ui_led_backend (observateur passif). Ici on publie uniquement les évènements nécessaires (MUTE_STATE / PMUTE_STATE).

Documentation des fonctions

◆ ui_mute_backend_apply()

void ui_mute_backend_apply ( uint8_t  track,
bool  mute 
)

Applique un état explicite sur une track.

Paramètres
trackIndex de la track (0..15)
mutetrue = muté, false = actif

Publie l'évènement UI_LED_EVENT_MUTE_STATE vers le backend LED.

◆ ui_mute_backend_cancel()

void ui_mute_backend_cancel ( void  )

Annule toutes les préparations PMUTE en cours (cancel).

Publie UI_LED_EVENT_PMUTE_STATE(false) pour chaque track préparée.

◆ ui_mute_backend_clear()

void ui_mute_backend_clear ( void  )

Purge toutes les préparations PMUTE sans toucher aux états MUTE réels.

◆ ui_mute_backend_commit()

void ui_mute_backend_commit ( void  )

Valide toutes les préparations PMUTE (commit) et nettoie.

Pour chaque track préparée, on inverse l'état MUTE réel et on publie UI_LED_EVENT_MUTE_STATE. Les flags préparés sont ensuite nettoyés avec un UI_LED_EVENT_PMUTE_STATE(false).

◆ ui_mute_backend_init()

void ui_mute_backend_init ( void  )

Initialise l'état MUTE/PMUTE (toutes tracks démute, PMUTE vide).

◆ ui_mute_backend_is_muted()

bool ui_mute_backend_is_muted ( uint8_t  track)

◆ ui_mute_backend_is_prepared()

bool ui_mute_backend_is_prepared ( uint8_t  track)

◆ ui_mute_backend_publish_state()

void ui_mute_backend_publish_state ( void  )

Republie l'état courant MUTE/PMUTE vers le backend LED.

◆ ui_mute_backend_toggle()

void ui_mute_backend_toggle ( uint8_t  track)

Bascule l'état MUTE d'une track (toggle).

Paramètres
trackIndex de la track (0..15)

Publie l'évènement UI_LED_EVENT_MUTE_STATE vers le backend LED.

◆ ui_mute_backend_toggle_prepare()

void ui_mute_backend_toggle_prepare ( uint8_t  track)

Bascule l'état préparé PMUTE d'une track (toggle prepare).

Paramètres
trackIndex de la track (0..15)

Publie UI_LED_EVENT_PMUTE_STATE (même rendu visuel que MUTE).