128 void setPressureTrackingMode (TrackingMode modeToUse);
131 void setPitchbendTrackingMode (TrackingMode modeToUse);
134 void setTimbreTrackingMode (TrackingMode modeToUse);
152 virtual void noteOn (
int midiChannel,
int midiNoteNumber,
MPEValue midiNoteOnVelocity);
160 virtual void noteOff (
int midiChannel,
int midiNoteNumber,
MPEValue midiNoteOffVelocity);
170 virtual void pitchbend (
int midiChannel,
MPEValue pitchbend);
194 virtual void polyAftertouch (
int midiChannel,
int midiNoteNumber,
MPEValue value);
201 virtual void sustainPedal (
int midiChannel,
bool isDown);
208 virtual void sostenutoPedal (
int midiChannel,
bool isDown);
214 void releaseAllNotes();
313 void addListener (Listener* listenerToAdd);
316 void removeListener (Listener* listenerToRemove);
340 void enableLegacyMode (
int pitchbendRange = 2,
350 void setLegacyModeChannelRange (
Range<
int> channelRange);
356 void setLegacyModePitchbendRange (
int pitchbendRange);
#define noexcept
Definition DistrhoDefines.h:72
static void message(int level, const char *fmt,...)
Definition adplugdb.cpp:120
Definition juce_Array.h:56
Definition juce_CriticalSection.h:43
Definition juce_ListenerList.h:70
Definition juce_MPEInstrument.h:260
virtual void notePitchbendChanged(MPENote changedNote)
Definition juce_MPEInstrument.h:282
virtual void noteAdded(MPENote newNote)
Definition juce_MPEInstrument.h:268
virtual void notePressureChanged(MPENote changedNote)
Definition juce_MPEInstrument.h:273
virtual void noteTimbreChanged(MPENote changedNote)
Definition juce_MPEInstrument.h:287
virtual void noteReleased(MPENote finishedNote)
Definition juce_MPEInstrument.h:303
virtual ~Listener()=default
virtual void zoneLayoutChanged()
Definition juce_MPEInstrument.h:308
virtual void noteKeyStateChanged(MPENote changedNote)
Definition juce_MPEInstrument.h:296
void updateDimensionForNote(MPENote &, MPEDimension &, MPEValue)
Definition juce_MPEInstrument.cpp:513
bool isMemberChannelSustained[16]
Definition juce_MPEInstrument.h:370
void processMidiControllerMessage(const MidiMessage &)
Definition juce_MPEInstrument.cpp:246
void processMidiPitchWheelMessage(const MidiMessage &)
Definition juce_MPEInstrument.cpp:232
MPEZoneLayout getZoneLayout() const noexcept
Definition juce_MPEInstrument.cpp:63
void updateNoteTotalPitchbend(MPENote &)
Definition juce_MPEInstrument.cpp:535
bool isMemberChannel(int midiChannel) const noexcept
Definition juce_MPEInstrument.cpp:645
void processMidiAfterTouchMessage(const MidiMessage &)
Definition juce_MPEInstrument.cpp:301
MPEZoneLayout zoneLayout
Definition juce_MPEInstrument.h:365
void handlePressureMSB(int midiChannel, int value) noexcept
Definition juce_MPEInstrument.cpp:311
void processMidiNoteOnMessage(const MidiMessage &)
Definition juce_MPEInstrument.cpp:203
TrackingMode
Definition juce_MPEInstrument.h:120
@ highestNoteOnChannel
Definition juce_MPEInstrument.h:123
@ lowestNoteOnChannel
Definition juce_MPEInstrument.h:122
@ lastNotePlayedOnChannel
Definition juce_MPEInstrument.h:121
@ allNotesOnChannel
Definition juce_MPEInstrument.h:124
void resetLastReceivedValues()
Definition juce_MPEInstrument.cpp:68
CriticalSection lock
Definition juce_MPEInstrument.h:360
ListenerList< Listener > listeners
Definition juce_MPEInstrument.h:366
MPEInstrument() noexcept
Definition juce_MPEInstrument.cpp:39
void setZoneLayout(MPEZoneLayout newLayout)
Definition juce_MPEInstrument.cpp:85
MPEDimension pitchbendDimension
Definition juce_MPEInstrument.h:388
void processMidiNoteOffMessage(const MidiMessage &)
Definition juce_MPEInstrument.cpp:224
void updateDimension(int midiChannel, MPEDimension &, MPEValue)
Definition juce_MPEInstrument.cpp:450
const MPENote * getLastNotePlayedPtr(int midiChannel) const noexcept
Definition juce_MPEInstrument.cpp:766
MPEDimension timbreDimension
Definition juce_MPEInstrument.h:388
void handleSustainOrSostenuto(int midiChannel, bool isDown, bool isSostenuto)
Definition juce_MPEInstrument.cpp:588
void handlePressureLSB(int midiChannel, int value) noexcept
Definition juce_MPEInstrument.cpp:319
const MPENote * getNotePtr(int midiChannel, int midiNoteNumber) const noexcept
Definition juce_MPEInstrument.cpp:728
MPEDimension pressureDimension
Definition juce_MPEInstrument.h:388
void updateDimensionMaster(bool, MPEDimension &, MPEValue)
Definition juce_MPEInstrument.cpp:482
const MPENote * getLowestNotePtr(int midiChannel) const noexcept
Definition juce_MPEInstrument.cpp:814
void processMidiResetAllControllersMessage(const MidiMessage &)
Definition juce_MPEInstrument.cpp:261
void handleTimbreLSB(int midiChannel, int value) noexcept
Definition juce_MPEInstrument.cpp:332
MPEValue getInitialValueForNewNote(int midiChannel, MPEDimension &) const
Definition juce_MPEInstrument.cpp:441
uint8 lastTimbreLowerBitReceivedOnChannel[16]
Definition juce_MPEInstrument.h:369
void handleTimbreMSB(int midiChannel, int value) noexcept
Definition juce_MPEInstrument.cpp:324
void processMidiChannelPressureMessage(const MidiMessage &)
Definition juce_MPEInstrument.cpp:239
Array< MPENote > notes
Definition juce_MPEInstrument.h:364
const MPENote * getHighestNotePtr(int midiChannel) const noexcept
Definition juce_MPEInstrument.cpp:788
void callListenersDimensionChanged(const MPENote &, const MPEDimension &)
Definition juce_MPEInstrument.cpp:527
bool isMasterChannel(int midiChannel) const noexcept
Definition juce_MPEInstrument.cpp:654
uint8 lastPressureLowerBitReceivedOnChannel[16]
Definition juce_MPEInstrument.h:368
bool isUsingChannel(int midiChannel) const noexcept
Definition juce_MPEInstrument.cpp:666
LegacyMode legacyMode
Definition juce_MPEInstrument.h:387
Definition juce_MPEValue.h:37
Definition juce_MPEZoneLayout.h:121
Definition juce_MidiMessage.h:35
Definition juce_Range.h:40
static PuglViewHint int value
Definition pugl.h:1708
#define JUCE_API
Definition juce_StandardHeader.h:152
Definition carla_juce.cpp:31
unsigned short uint16
Definition juce_MathsFunctions.h:41
void ignoreUnused(Types &&...) noexcept
Definition juce_MathsFunctions.h:333
unsigned char uint8
Definition juce_MathsFunctions.h:37
Definition juce_MPEInstrument.h:373
Range< int > channelRange
Definition juce_MPEInstrument.h:375
bool isEnabled
Definition juce_MPEInstrument.h:374
int pitchbendRange
Definition juce_MPEInstrument.h:376
Definition juce_MPEInstrument.h:380
TrackingMode trackingMode
Definition juce_MPEInstrument.h:381
MPEValue MPENote::* value
Definition juce_MPEInstrument.h:383
MPEValue & getValue(MPENote ¬e) noexcept
Definition juce_MPEInstrument.h:384
MPEValue lastValueReceivedOnChannel[16]
Definition juce_MPEInstrument.h:382
Definition juce_MPENote.h:40
#define const
Definition zconf.h:137