Brick Groove Machine 0.9.3
Firmware embarqué pour contrôleur/synthé Brick
 
Chargement...
Recherche...
Aucune correspondance
cart_registry.h
Aller à la documentation de ce fichier.
1
25#ifndef BRICK_CART_CART_REGISTRY_H
26#define BRICK_CART_CART_REGISTRY_H
27
28#include <stdint.h>
29#include <stdbool.h>
30#include "cart_bus.h"
32/* Forward-decl : struct taguée définie dans ui/ui_spec.h
33 (on évite toute dépendance UI au niveau du header public). */
34struct ui_cart_spec_t;
35
36#ifdef __cplusplus
37extern "C" {
38#endif
39
47void cart_registry_init(void);
48
58void cart_registry_register(cart_id_t id, const struct ui_cart_spec_t* ui_spec);
59
68
80
90
99
100void cart_registry_set_uid(cart_id_t id, uint32_t uid);
102bool cart_registry_find_by_uid(uint32_t uid, cart_id_t *out_id);
103
104#ifdef __cplusplus
105}
106#endif
107
108#endif /* BRICK_CART_CART_REGISTRY_H */
Interface du bus série entre Brick et les cartouches XVA.
cart_id_t
Identifiants logiques des cartouches physiques.
Definition cart_bus.h:33
void cart_registry_set_uid(cart_id_t id, uint32_t uid)
Definition cart_registry.c:48
bool cart_registry_find_by_uid(uint32_t uid, cart_id_t *out_id)
Definition cart_registry.c:62
uint32_t cart_registry_get_uid(cart_id_t id)
Definition cart_registry.c:55
void cart_registry_init(void)
Initialise le registre des cartouches.
Definition cart_registry.c:15
cart_id_t cart_registry_get_active_id(void)
Renvoie l'identifiant (cid) de la cartouche active.
Definition cart_registry.c:39
void cart_registry_register(cart_id_t id, const struct ui_cart_spec_t *ui_spec)
Enregistre la spécification UI d'une cartouche pour un port donné.
Definition cart_registry.c:23
const struct ui_cart_spec_t * cart_registry_switch(cart_id_t id)
Rend active une cartouche et renvoie sa spécification UI.
Definition cart_registry.c:33
bool cart_registry_is_present(cart_id_t id)
Indique si une cartouche est enregistrée (présente) pour un port donné.
Definition cart_registry.c:43
const struct ui_cart_spec_t * cart_registry_get_ui_spec(cart_id_t id)
Récupère la spécification UI d'une cartouche sans la rendre active.
Definition cart_registry.c:28
Spécification UI complète d’une cartouche.
Definition ui_spec.h:200