#include <mpeprocessor.h>
|  | 
| virtual bool | generateNewNoteID (NoteID &outNoteID)=0 | 
|  | Generate a new noteID.  More... 
 | 
|  | 
| virtual void | releaseNoteID (NoteID noteID)=0 | 
|  | Release a noteID.  More... 
 | 
|  | 
| virtual void | onMPENoteOn (NoteID noteID, Pitch pitch, Velocity velocity)=0 | 
|  | A note on was transmitted.  More... 
 | 
|  | 
| virtual void | onMPENoteOff (NoteID noteID, Pitch pitch, Velocity velocity)=0 | 
|  | A note off was transmitted.  More... 
 | 
|  | 
| virtual void | onMPEControllerChange (NoteID noteID, Controller cc, NormalizedValue value)=0 | 
|  | A new per note controller change was transmitted.  More... 
 | 
|  | 
| virtual void | onOtherInput (const uint8_t *data, size_t dataSize)=0 | 
|  | Non MPE MIDI input data was transmitted.  More... 
 | 
|  | 
| virtual void | onSysexInput (const uint8_t *data, size_t dataSize)=0 | 
|  | Sysex MIDI data was transmitted.  More... 
 | 
|  | 
| virtual void | errorNoteDroppedBecauseNoNoteID (Pitch pitch)=0 | 
|  | called when the handler did not return a new note ID  More... 
 | 
|  | 
| virtual void | errorNoteDroppedBecauseNoteStackFull (Channel channel, Pitch pitch)=0 | 
|  | the internal note stack for this channel is full, happens on too many note ons per channel  More... 
 | 
|  | 
| virtual void | errorNoteForNoteOffNotFound (Channel channel, Pitch pitch)=0 | 
|  | called when the internal data has no reference to this note off  More... 
 | 
|  | 
| virtual void | errorProgramChangeReceivedInMPEZone ()=0 | 
|  | called when a program change was received inside the MPE zone which is a protocol violation  More... 
 | 
|  | 
◆ generateNewNoteID()
  
  | 
        
          | virtual bool generateNewNoteID | ( | NoteID & | outNoteID | ) |  |  | pure virtual | 
 
Generate a new noteID. 
called by the processor for a new NoteID. The handler has to make sure that the noteID is not used again until the releaseNoteID method is called. 
@param outNoteID on return contains the new noteID if this call succeed
@return true if outNoteID was filled with a new noteID
 
 
 
◆ releaseNoteID()
  
  | 
        
          | virtual void releaseNoteID | ( | NoteID | noteID | ) |  |  | pure virtual | 
 
Release a noteID. 
called by the processor when the NoteID is no longer used.
- Parameters
- 
  
    | noteID | the noteID not longer in use |  
 
 
 
◆ onMPENoteOn()
A note on was transmitted. 
- Parameters
- 
  
    | noteID | unique note identifier |  | pitch | note pitch |  | velocity | note on velocity |  
 
 
 
◆ onMPENoteOff()
A note off was transmitted. 
- Parameters
- 
  
    | noteID | unique note identifier |  | pitch | note pitch |  | velocity | note off velocity |  
 
 
 
◆ onMPEControllerChange()
A new per note controller change was transmitted. 
- Parameters
- 
  
    | noteID | unique note identifier |  | cc | the MIDI controller which changed |  | value | the value of the change in the range [0..1] |  
 
 
 
◆ onOtherInput()
  
  | 
        
          | virtual void onOtherInput | ( | const uint8_t * | data, |  
          |  |  | size_t | dataSize |  
          |  | ) |  |  |  | pure virtual | 
 
Non MPE MIDI input data was transmitted. 
- Parameters
- 
  
    | data | MIDI data buffer |  | dataSize | size of the MIDI data buffer in bytes |  
 
 
 
◆ onSysexInput()
  
  | 
        
          | virtual void onSysexInput | ( | const uint8_t * | data, |  
          |  |  | size_t | dataSize |  
          |  | ) |  |  |  | pure virtual | 
 
Sysex MIDI data was transmitted. 
- Parameters
- 
  
    | data | Sysex data buffer |  | dataSize | size of sysex data buffer in bytes |  
 
 
 
◆ errorNoteDroppedBecauseNoNoteID()
  
  | 
        
          | virtual void errorNoteDroppedBecauseNoNoteID | ( | Pitch | pitch | ) |  |  | pure virtual | 
 
called when the handler did not return a new note ID 
 
 
◆ errorNoteDroppedBecauseNoteStackFull()
  
  | 
        
          | virtual void errorNoteDroppedBecauseNoteStackFull | ( | Channel | channel, |  
          |  |  | Pitch | pitch |  
          |  | ) |  |  |  | pure virtual | 
 
the internal note stack for this channel is full, happens on too many note ons per channel 
 
 
◆ errorNoteForNoteOffNotFound()
  
  | 
        
          | virtual void errorNoteForNoteOffNotFound | ( | Channel | channel, |  
          |  |  | Pitch | pitch |  
          |  | ) |  |  |  | pure virtual | 
 
called when the internal data has no reference to this note off 
 
 
◆ errorProgramChangeReceivedInMPEZone()
  
  | 
        
          | virtual void errorProgramChangeReceivedInMPEZone | ( |  | ) |  |  | pure virtual | 
 
called when a program change was received inside the MPE zone which is a protocol violation