Per-note state maintained by MpeVoiceTracker. More...
#include <mpe_voice_tracker.hpp>
Public Attributes | |
| bool | active = false |
| uint8_t | channel = 0 |
| MPE member channel the note lives on. | |
| uint8_t | note = 0 |
| MIDI note number (0-127). | |
| uint8_t | velocity = 0 |
| Note-on velocity (0-127). | |
| float | pitch_bend_semitones = 0.0f |
| Current per-note pitch bend in semitones. | |
| float | pressure = 0.0f |
| Channel pressure (0..1). | |
| float | timbre = 0.0f |
| CC 74 (0..1); same value as slide. | |
| MpeNoteGeneration | note_id = 0 |
| Monotonic generation assigned on note-on (never 0). | |
| bool | is_upper_zone = false |
| true if this note lives in the upper zone | |
| bool | detached = false |
| True after a UMP Per-Note Management message with the "detach
controllers" flag landed on this note: subsequent channel-level controller updates (pitch bend, pressure, CC74 on the member channel) no longer write into this note. | |
Per-note state maintained by MpeVoiceTracker.
Expression values are normalized:
| bool pulp::midi::MpeNoteState::active = false |
| uint8_t pulp::midi::MpeNoteState::channel = 0 |
MPE member channel the note lives on.
| bool pulp::midi::MpeNoteState::detached = false |
True after a UMP Per-Note Management message with the "detach controllers" flag landed on this note: subsequent channel-level controller updates (pitch bend, pressure, CC74 on the member channel) no longer write into this note.
Per-note targeted messages (status 0x60 / 0x00 / 0x10) still apply. Cleared when the slot is reused for a fresh note-on (retrigger included).
| bool pulp::midi::MpeNoteState::is_upper_zone = false |
true if this note lives in the upper zone
| uint8_t pulp::midi::MpeNoteState::note = 0 |
MIDI note number (0-127).
| MpeNoteGeneration pulp::midi::MpeNoteState::note_id = 0 |
Monotonic generation assigned on note-on (never 0).
| float pulp::midi::MpeNoteState::pitch_bend_semitones = 0.0f |
Current per-note pitch bend in semitones.
| float pulp::midi::MpeNoteState::pressure = 0.0f |
Channel pressure (0..1).
| float pulp::midi::MpeNoteState::timbre = 0.0f |
CC 74 (0..1); same value as slide.
| uint8_t pulp::midi::MpeNoteState::velocity = 0 |
Note-on velocity (0-127).