Public Member Functions | List of all members
MPEInstrument::Listener Class Reference

Derive from this class to be informed about any changes in the expressive MIDI notes played by this instrument. More...

Inheritance diagram for MPEInstrument::Listener:

Public Member Functions

virtual ~Listener ()=default
 Destructor. More...
 
virtual void noteAdded (MPENote newNote)
 Implement this callback to be informed whenever a new expressive MIDI note is triggered. More...
 
virtual void notePressureChanged (MPENote changedNote)
 Implement this callback to be informed whenever a currently playing MPE note's pressure value changes. More...
 
virtual void notePitchbendChanged (MPENote changedNote)
 Implement this callback to be informed whenever a currently playing MPE note's pitchbend value changes. More...
 
virtual void noteTimbreChanged (MPENote changedNote)
 Implement this callback to be informed whenever a currently playing MPE note's timbre value changes. More...
 
virtual void noteKeyStateChanged (MPENote changedNote)
 Implement this callback to be informed whether a currently playing MPE note's key state (whether the key is down and/or the note is sustained) has changed. More...
 
virtual void noteReleased (MPENote finishedNote)
 Implement this callback to be informed whenever an MPE note is released (either by a note-off message, or by a sustain/sostenuto pedal release for a note that already received a note-off), and should therefore stop playing. More...
 

Detailed Description

Derive from this class to be informed about any changes in the expressive MIDI notes played by this instrument.

Note: This listener type receives its callbacks immediately, and not via the message thread (so you might be for example in the MIDI thread). Therefore you should never do heavy work such as graphics rendering etc. inside those callbacks.

Constructor & Destructor Documentation

◆ ~Listener()

virtual MPEInstrument::Listener::~Listener ( )
virtualdefault

Destructor.

Member Function Documentation

◆ noteAdded()

virtual void MPEInstrument::Listener::noteAdded ( MPENote  newNote)
virtual

Implement this callback to be informed whenever a new expressive MIDI note is triggered.

Reimplemented in MPESynthesiser.

References ignoreUnused().

◆ notePressureChanged()

virtual void MPEInstrument::Listener::notePressureChanged ( MPENote  changedNote)
virtual

Implement this callback to be informed whenever a currently playing MPE note's pressure value changes.

Reimplemented in MPESynthesiser.

References ignoreUnused().

◆ notePitchbendChanged()

virtual void MPEInstrument::Listener::notePitchbendChanged ( MPENote  changedNote)
virtual

Implement this callback to be informed whenever a currently playing MPE note's pitchbend value changes.

Note: This can happen if the note itself is bent, if there is a master channel pitchbend event, or if both occur simultaneously. Call MPENote::getFrequencyInHertz to get the effective note frequency.

Reimplemented in MPESynthesiser.

References ignoreUnused().

◆ noteTimbreChanged()

virtual void MPEInstrument::Listener::noteTimbreChanged ( MPENote  changedNote)
virtual

Implement this callback to be informed whenever a currently playing MPE note's timbre value changes.

Reimplemented in MPESynthesiser.

References ignoreUnused().

◆ noteKeyStateChanged()

virtual void MPEInstrument::Listener::noteKeyStateChanged ( MPENote  changedNote)
virtual

Implement this callback to be informed whether a currently playing MPE note's key state (whether the key is down and/or the note is sustained) has changed.

Note: If the key state changes to MPENote::off, noteReleased is called instead.

Reimplemented in MPESynthesiser.

References ignoreUnused().

◆ noteReleased()

virtual void MPEInstrument::Listener::noteReleased ( MPENote  finishedNote)
virtual

Implement this callback to be informed whenever an MPE note is released (either by a note-off message, or by a sustain/sostenuto pedal release for a note that already received a note-off), and should therefore stop playing.

Reimplemented in MPESynthesiser.

References ignoreUnused().


The documentation for this class was generated from the following file: