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

Brick sequencer data model helpers. Plus de détails...

#include "seq_model.h"
#include <string.h>

Fonctions

void seq_model_gen_reset (seq_model_gen_t *gen)
 
void seq_model_gen_bump (seq_model_gen_t *gen)
 
bool seq_model_gen_has_changed (const seq_model_gen_t *lhs, const seq_model_gen_t *rhs)
 
void seq_model_voice_init (seq_model_voice_t *voice, bool primary)
 
void seq_model_step_init (seq_model_step_t *step)
 
void seq_model_step_init_default (seq_model_step_t *step, uint8_t note)
 
void seq_model_pattern_init (seq_model_pattern_t *pattern)
 
const seq_model_voice_tseq_model_step_get_voice (const seq_model_step_t *step, size_t voice_index)
 
bool seq_model_step_set_voice (seq_model_step_t *step, size_t voice_index, const seq_model_voice_t *voice)
 
bool seq_model_step_add_plock (seq_model_step_t *step, const seq_model_plock_t *plock)
 
void seq_model_step_clear_plocks (seq_model_step_t *step)
 
bool seq_model_step_remove_plock (seq_model_step_t *step, size_t index)
 
bool seq_model_step_get_plock (const seq_model_step_t *step, size_t index, seq_model_plock_t *out)
 
void seq_model_step_set_offsets (seq_model_step_t *step, const seq_model_step_offsets_t *offsets)
 
const seq_model_step_offsets_tseq_model_step_get_offsets (const seq_model_step_t *step)
 
bool seq_model_step_has_playable_voice (const seq_model_step_t *step)
 
bool seq_model_step_is_automation_only (const seq_model_step_t *step)
 
bool seq_model_step_has_any_plock (const seq_model_step_t *step)
 
bool seq_model_step_has_seq_plock (const seq_model_step_t *step)
 
bool seq_model_step_has_cart_plock (const seq_model_step_t *step)
 
void seq_model_step_make_automation_only (seq_model_step_t *step)
 
void seq_model_step_make_neutral (seq_model_step_t *step)
 
void seq_model_pattern_set_quantize (seq_model_pattern_t *pattern, const seq_model_quantize_config_t *config)
 
void seq_model_pattern_set_transpose (seq_model_pattern_t *pattern, const seq_model_transpose_config_t *config)
 
void seq_model_pattern_set_scale (seq_model_pattern_t *pattern, const seq_model_scale_config_t *config)
 
void seq_model_step_recompute_flags (seq_model_step_t *step)
 

Description détaillée

Brick sequencer data model helpers.

Documentation des fonctions

◆ seq_model_gen_bump()

void seq_model_gen_bump ( seq_model_gen_t gen)

Increment the generation counter after a mutation.

◆ seq_model_gen_has_changed()

bool seq_model_gen_has_changed ( const seq_model_gen_t lhs,
const seq_model_gen_t rhs 
)

Check whether two generation counters differ.

◆ seq_model_gen_reset()

void seq_model_gen_reset ( seq_model_gen_t gen)

Reset the generation counter to its initial value.

◆ seq_model_pattern_init()

void seq_model_pattern_init ( seq_model_pattern_t pattern)

Reset a full pattern to defaults.

◆ seq_model_pattern_set_quantize()

void seq_model_pattern_set_quantize ( seq_model_pattern_t pattern,
const seq_model_quantize_config_t config 
)

Update the quantize configuration of a pattern.

◆ seq_model_pattern_set_scale()

void seq_model_pattern_set_scale ( seq_model_pattern_t pattern,
const seq_model_scale_config_t config 
)

Update the scale configuration of a pattern.

◆ seq_model_pattern_set_transpose()

void seq_model_pattern_set_transpose ( seq_model_pattern_t pattern,
const seq_model_transpose_config_t config 
)

Update the transpose configuration of a pattern.

◆ seq_model_step_add_plock()

bool seq_model_step_add_plock ( seq_model_step_t step,
const seq_model_plock_t plock 
)

Append a parameter lock to a step.

◆ seq_model_step_clear_plocks()

void seq_model_step_clear_plocks ( seq_model_step_t step)

Remove all parameter locks from a step.

◆ seq_model_step_get_offsets()

const seq_model_step_offsets_t * seq_model_step_get_offsets ( const seq_model_step_t step)

Access the aggregate offsets for a step.

◆ seq_model_step_get_plock()

bool seq_model_step_get_plock ( const seq_model_step_t step,
size_t  index,
seq_model_plock_t out 
)

Retrieve a parameter lock by index.

◆ seq_model_step_get_voice()

const seq_model_voice_t * seq_model_step_get_voice ( const seq_model_step_t step,
size_t  voice_index 
)

Retrieve a voice descriptor by index.

◆ seq_model_step_has_any_plock()

bool seq_model_step_has_any_plock ( const seq_model_step_t step)

Return true when the step exposes at least one parameter lock.

◆ seq_model_step_has_cart_plock()

bool seq_model_step_has_cart_plock ( const seq_model_step_t step)

Return true when the step exposes at least one cartridge-domain parameter lock.

◆ seq_model_step_has_playable_voice()

bool seq_model_step_has_playable_voice ( const seq_model_step_t step)

Return true if at least one voice is enabled with a non-zero velocity.

◆ seq_model_step_has_seq_plock()

bool seq_model_step_has_seq_plock ( const seq_model_step_t step)

Return true when the step exposes at least one sequencer-domain parameter lock.

◆ seq_model_step_init()

void seq_model_step_init ( seq_model_step_t step)

Clear a step and restore default voices/offsets.

◆ seq_model_step_init_default()

void seq_model_step_init_default ( seq_model_step_t step,
uint8_t  note 
)

Initialise a step using Elektron quick-step defaults for the provided note.

◆ seq_model_step_is_automation_only()

bool seq_model_step_is_automation_only ( const seq_model_step_t step)

Return true if the step should be treated as automation-only.

◆ seq_model_step_make_automation_only()

void seq_model_step_make_automation_only ( seq_model_step_t step)

Convert a step into an automation-only placeholder (all voices muted).

◆ seq_model_step_make_neutral()

void seq_model_step_make_neutral ( seq_model_step_t step)

Convert an empty step into a neutral quick-step shell.

◆ seq_model_step_recompute_flags()

void seq_model_step_recompute_flags ( seq_model_step_t step)

Recompute cached flags after mutating voices or parameter locks.

◆ seq_model_step_remove_plock()

bool seq_model_step_remove_plock ( seq_model_step_t step,
size_t  index 
)

Remove a parameter lock at the provided index.

◆ seq_model_step_set_offsets()

void seq_model_step_set_offsets ( seq_model_step_t step,
const seq_model_step_offsets_t offsets 
)

Assign the aggregate offsets for a step.

◆ seq_model_step_set_voice()

bool seq_model_step_set_voice ( seq_model_step_t step,
size_t  voice_index,
const seq_model_voice_t voice 
)

Replace the voice descriptor at the provided index.

◆ seq_model_voice_init()

void seq_model_voice_init ( seq_model_voice_t voice,
bool  primary 
)

Initialise a voice with Elektron-like defaults.