143 using NoteCallback = std::function<void(uint8_t note, uint8_t velocity,
bool is_on)>;
158 return m_note_callbacks.add(
160 if (!m_last_midi_message) {
163 const auto& midi = *m_last_midi_message;
164 if (midi.type() == 0x90) {
165 callback(midi.data1, midi.data2, midi.data2 > 0);
167 callback(midi.data1, 0, false);
178 return m_cc_callbacks.add(
180 if (m_last_midi_message) {
181 callback(m_last_midi_message->data1, m_last_midi_message->data2);
192 return m_pitch_bend_callbacks.add(
194 if (m_last_midi_message) {
195 callback(
static_cast<int16_t
>(((m_last_midi_message->data2 << 7) | m_last_midi_message->data1) - 8192));
204 void notify_tick(
double value)
override;
Stores, fires and clears the hooks of one node channel.
Base context class for node callbacks.
uint64_t HookId
Identifies one registration inside a HookList.