102 void removeVoice (
int index);
110 void reduceNumVoices (
int newNumVoices);
120 virtual void turnOffAllVoices (
bool allowTailOff);
141 void setCurrentPlaybackSampleRate (
double newRate)
override;
158 void handleMidiEvent (
const MidiMessage&)
override;
195 void noteAdded (
MPENote newNote)
override;
210 void noteReleased (
MPENote finishedNote)
override;
218 void notePressureChanged (
MPENote changedNote)
override;
226 void notePitchbendChanged (
MPENote changedNote)
override;
234 void noteTimbreChanged (
MPENote changedNote)
override;
242 void noteKeyStateChanged (
MPENote changedNote)
override;
251 int numSamples)
override;
259 int numSamples)
override;
273 bool stealIfNoneAvailable)
const;
310 bool shouldStealVoices =
false;
311 uint32 lastNoteOnCounter = 0;
#define JUCE_API
This macro is added to all JUCE public class declarations.
Base class for an MPE-compatible musical device that can play sounds.
Encapsulates a MIDI message.
int getNumVoices() const noexcept
Returns the number of voices that have been added.
bool isVoiceStealingEnabled() const noexcept
Returns true if note-stealing is enabled.
Represents an MPE voice that an MPESynthesiser can use to play a sound.
Derive from this class to create a basic audio generator capable of MPE.
This struct represents a playing MPE note.
virtual void handleController(int, int, int)
Callback for MIDI controller messages.
void setVoiceStealingEnabled(bool shouldSteal) noexcept
If set to true, then the synth will try to take over an existing voice if it runs out and needs to pl...
virtual void handleProgramChange(int, int)
Callback for MIDI program change messages.
An array designed for holding objects.
This class represents an instrument handling MPE.