#include <lv2synth.hpp>
Public Member Functions | |
void | on (unsigned char key, unsigned char velocity) |
void | off (unsigned char velocity) |
unsigned char | get_key () const |
void | render (uint32_t from, uint32_t to) |
Protected Member Functions | |
template<typename T> | |
T *& | p (uint32_t port) |
float *& | p (uint32_t port) |
void LV2::Voice::on | ( | unsigned char | key, | |
unsigned char | velocity | |||
) | [inline] |
Turn the voice on. This default implementation does nothing, you probably want to override it.
If key
is LV2::INVALID_KEY the voice should go silent as fast at possible (the synth may use this when it receives an All Sound Off event).
key | The MIDI key for the note that the voice should play. | |
velocity | The MIDI velocity for the Note On event. |
void LV2::Voice::off | ( | unsigned char | velocity | ) | [inline] |
Turn the voice off. This default implementation does nothing, you probably want to override it.
velocity | The MIDI velocity for the Note Off event. |
unsigned char LV2::Voice::get_key | ( | ) | const [inline] |
Return the MIDI key that the voice is currently playing. LV2::INVALID_KEY means that the voice is not active and could be used to play a new note.
void LV2::Voice::render | ( | uint32_t | from, | |
uint32_t | to | |||
) | [inline] |
Render audio for this voice to the output buffers, from sample from
to sample to
. The buffers may already contain audio from other voices, so use += instead of = when writing to it. This default implementation does nothing, you probably want to override it.
T*& LV2::Voice::p | ( | uint32_t | port | ) | [inline, protected] |
Same as Plugin::p() - returns the buffer for the given port.
float*& LV2::Voice::p | ( | uint32_t | port | ) | [inline, protected] |
Same as Plugin::p() - returns the buffer for the given port.