VST 3 SDK VST 3.7
SDK for developing VST plug-in
IUniversalMidiPacketHandler Struct Referenceabstract

#include <ump.h>

+ Inheritance diagram for IUniversalMidiPacketHandler:

Public Types

enum class  SystemRealtime {
  TimingClock , Start , Continue , Stop ,
  ActiveSensing , Reset
}
 
using Group = uint8_t
 
using Channel = uint8_t
 
using Index = uint8_t
 
using NoteNumber = uint8_t
 
using BankNumber = uint8_t
 
using ControllerNumber = uint8_t
 
using Velocity8 = uint8_t
 
using Velocity16 = uint16_t
 
using AttributeType = uint8_t
 
using AttributeValue = uint16_t
 
using OptionFlags = uint8_t
 
using Data8 = uint8_t
 
using Data32 = uint32_t
 
using Program = uint8_t
 
using BankMSB = uint8_t
 
using BankLSB = uint8_t
 
using Timestamp = uint16_t
 
using Timecode = uint8_t
 
using StreamID = uint8_t
 
using SysEx6ByteData = const std::array< uint8_t, 6 > &
 
using SysEx13ByteData = const std::array< uint8_t, 13 > &
 
using MixedData = const std::array< uint8_t, 14 > &
 

Public Member Functions

virtual void onNoop (Group group) const =0
 
virtual void onJitterClock (Group group, Timestamp time) const =0
 
virtual void onJitterTimestamp (Group group, Timestamp time) const =0
 
virtual void onMIDITimeCode (Group group, Timecode timecode) const =0
 
virtual void onSongPositionPointer (Group group, uint8_t posLSB, uint8_t posMSB) const =0
 
virtual void onSongSelect (Group group, uint8_t songIndex) const =0
 
virtual void onTuneRequest (Group group) const =0
 
virtual void onSystemRealtime (Group group, SystemRealtime which) const =0
 
virtual void onMidi1NoteOff (Group group, Channel channel, NoteNumber note, Velocity8 velocity) const =0
 
virtual void onMidi1NoteOn (Group group, Channel channel, NoteNumber note, Velocity8 velocity) const =0
 
virtual void onMidi1PolyPressure (Group group, Channel channel, NoteNumber note, Data8 data) const =0
 
virtual void onMidi1ControlChange (Group group, Channel channel, ControllerNumber controller, Data8 value) const =0
 
virtual void onMidi1ProgramChange (Group group, Channel channel, Program program) const =0
 
virtual void onMidi1ChannelPressure (Group group, Channel channel, Data8 pressure) const =0
 
virtual void onMidi1PitchBend (Group group, Channel channel, Data8 valueLSB, Data8 valueMSB) const =0
 
virtual void onSysExPacket (Group group, SysEx6ByteData data) const =0
 
virtual void onSysExStart (Group group, SysEx6ByteData data) const =0
 
virtual void onSysExContinue (Group group, SysEx6ByteData data) const =0
 
virtual void onSysExEnd (Group group, SysEx6ByteData data) const =0
 
virtual void onRegisteredPerNoteController (Group group, Channel channel, NoteNumber note, ControllerNumber controller, Data32 data) const =0
 
virtual void onAssignablePerNoteController (Group group, Channel channel, NoteNumber note, ControllerNumber controller, Data32 data) const =0
 
virtual void onRegisteredController (Group group, Channel channel, BankNumber bank, Index index, Data32 data) const =0
 
virtual void onAssignableController (Group group, Channel channel, BankNumber bank, Index index, Data32 data) const =0
 
virtual void onRelativeRegisteredController (Group group, Channel channel, BankNumber bank, Index index, Data32 data) const =0
 
virtual void onRelativeAssignableController (Group group, Channel channel, BankNumber bank, Index index, Data32 data) const =0
 
virtual void onPerNotePitchBend (Group group, Channel channel, NoteNumber note, Data32 data) const =0
 
virtual void onNoteOff (Group group, Channel channel, NoteNumber note, Velocity16 velocity, AttributeType attr, AttributeValue attrValue) const =0
 
virtual void onNoteOn (Group group, Channel channel, NoteNumber note, Velocity16 velocity, AttributeType attr, AttributeValue attrValue) const =0
 
virtual void onPolyPressure (Group group, Channel channel, NoteNumber note, Data32 data) const =0
 
virtual void onControlChange (Group group, Channel channel, ControllerNumber controller, Data32 data) const =0
 
virtual void onProgramChange (Group group, Channel channel, OptionFlags options, Program program, BankMSB bankMSB, BankLSB bankLSB) const =0
 
virtual void onChannelPressure (Group group, Channel channel, Data32 data) const =0
 
virtual void onPitchBend (Group group, Channel channel, Data32 data) const =0
 
virtual void onPerNoteManagement (Group group, Channel channel, NoteNumber note, OptionFlags options) const =0
 
virtual void onSysEx8Packet (Group group, Data8 numBytes, Index streamID, SysEx13ByteData data) const =0
 
virtual void onSysEx8Start (Group group, Data8 numBytes, Index streamID, SysEx13ByteData data) const =0
 
virtual void onSysEx8Continue (Group group, Data8 numBytes, Index streamID, SysEx13ByteData data) const =0
 
virtual void onSysEx8End (Group group, Data8 numBytes, Index streamID, SysEx13ByteData data) const =0
 
virtual void onMixedDataSetHeader (Group group, Index mdsID, MixedData data) const =0
 
virtual void onMixedDataSetPayload (Group group, Index mdsID, MixedData data) const =0
 
virtual ParsingAction onInvalidInputData (size_t index) const =0
 
virtual void onInsufficentInputData (size_t index, size_t numMissingWords) const =0
 

Member Typedef Documentation

◆ Group

using Group = uint8_t

◆ Channel

using Channel = uint8_t

◆ Index

using Index = uint8_t

◆ NoteNumber

using NoteNumber = uint8_t

◆ BankNumber

using BankNumber = uint8_t

◆ ControllerNumber

using ControllerNumber = uint8_t

◆ Velocity8

using Velocity8 = uint8_t

◆ Velocity16

using Velocity16 = uint16_t

◆ AttributeType

using AttributeType = uint8_t

◆ AttributeValue

using AttributeValue = uint16_t

◆ OptionFlags

using OptionFlags = uint8_t

◆ Data8

using Data8 = uint8_t

◆ Data32

using Data32 = uint32_t

◆ Program

using Program = uint8_t

◆ BankMSB

using BankMSB = uint8_t

◆ BankLSB

using BankLSB = uint8_t

◆ Timestamp

using Timestamp = uint16_t

◆ Timecode

using Timecode = uint8_t

◆ StreamID

using StreamID = uint8_t

◆ SysEx6ByteData

using SysEx6ByteData = const std::array<uint8_t, 6>&

◆ SysEx13ByteData

using SysEx13ByteData = const std::array<uint8_t, 13>&

◆ MixedData

using MixedData = const std::array<uint8_t, 14>&

Member Enumeration Documentation

◆ SystemRealtime

enum class SystemRealtime
strong
Enumerator
TimingClock 
Start 
Continue 
Stop 
ActiveSensing 
Reset 

Member Function Documentation

◆ onNoop()

virtual void onNoop ( Group  group) const
pure virtual

◆ onJitterClock()

virtual void onJitterClock ( Group  group,
Timestamp  time 
) const
pure virtual

◆ onJitterTimestamp()

virtual void onJitterTimestamp ( Group  group,
Timestamp  time 
) const
pure virtual

◆ onMIDITimeCode()

virtual void onMIDITimeCode ( Group  group,
Timecode  timecode 
) const
pure virtual

◆ onSongPositionPointer()

virtual void onSongPositionPointer ( Group  group,
uint8_t  posLSB,
uint8_t  posMSB 
) const
pure virtual

◆ onSongSelect()

virtual void onSongSelect ( Group  group,
uint8_t  songIndex 
) const
pure virtual

◆ onTuneRequest()

virtual void onTuneRequest ( Group  group) const
pure virtual

◆ onSystemRealtime()

virtual void onSystemRealtime ( Group  group,
SystemRealtime  which 
) const
pure virtual

◆ onMidi1NoteOff()

virtual void onMidi1NoteOff ( Group  group,
Channel  channel,
NoteNumber  note,
Velocity8  velocity 
) const
pure virtual

◆ onMidi1NoteOn()

virtual void onMidi1NoteOn ( Group  group,
Channel  channel,
NoteNumber  note,
Velocity8  velocity 
) const
pure virtual

◆ onMidi1PolyPressure()

virtual void onMidi1PolyPressure ( Group  group,
Channel  channel,
NoteNumber  note,
Data8  data 
) const
pure virtual

◆ onMidi1ControlChange()

virtual void onMidi1ControlChange ( Group  group,
Channel  channel,
ControllerNumber  controller,
Data8  value 
) const
pure virtual

◆ onMidi1ProgramChange()

virtual void onMidi1ProgramChange ( Group  group,
Channel  channel,
Program  program 
) const
pure virtual

◆ onMidi1ChannelPressure()

virtual void onMidi1ChannelPressure ( Group  group,
Channel  channel,
Data8  pressure 
) const
pure virtual

◆ onMidi1PitchBend()

virtual void onMidi1PitchBend ( Group  group,
Channel  channel,
Data8  valueLSB,
Data8  valueMSB 
) const
pure virtual

◆ onSysExPacket()

virtual void onSysExPacket ( Group  group,
SysEx6ByteData  data 
) const
pure virtual

◆ onSysExStart()

virtual void onSysExStart ( Group  group,
SysEx6ByteData  data 
) const
pure virtual

◆ onSysExContinue()

virtual void onSysExContinue ( Group  group,
SysEx6ByteData  data 
) const
pure virtual

◆ onSysExEnd()

virtual void onSysExEnd ( Group  group,
SysEx6ByteData  data 
) const
pure virtual

◆ onRegisteredPerNoteController()

virtual void onRegisteredPerNoteController ( Group  group,
Channel  channel,
NoteNumber  note,
ControllerNumber  controller,
Data32  data 
) const
pure virtual

◆ onAssignablePerNoteController()

virtual void onAssignablePerNoteController ( Group  group,
Channel  channel,
NoteNumber  note,
ControllerNumber  controller,
Data32  data 
) const
pure virtual

◆ onRegisteredController()

virtual void onRegisteredController ( Group  group,
Channel  channel,
BankNumber  bank,
Index  index,
Data32  data 
) const
pure virtual

◆ onAssignableController()

virtual void onAssignableController ( Group  group,
Channel  channel,
BankNumber  bank,
Index  index,
Data32  data 
) const
pure virtual

◆ onRelativeRegisteredController()

virtual void onRelativeRegisteredController ( Group  group,
Channel  channel,
BankNumber  bank,
Index  index,
Data32  data 
) const
pure virtual

◆ onRelativeAssignableController()

virtual void onRelativeAssignableController ( Group  group,
Channel  channel,
BankNumber  bank,
Index  index,
Data32  data 
) const
pure virtual

◆ onPerNotePitchBend()

virtual void onPerNotePitchBend ( Group  group,
Channel  channel,
NoteNumber  note,
Data32  data 
) const
pure virtual

◆ onNoteOff()

virtual void onNoteOff ( Group  group,
Channel  channel,
NoteNumber  note,
Velocity16  velocity,
AttributeType  attr,
AttributeValue  attrValue 
) const
pure virtual

◆ onNoteOn()

virtual void onNoteOn ( Group  group,
Channel  channel,
NoteNumber  note,
Velocity16  velocity,
AttributeType  attr,
AttributeValue  attrValue 
) const
pure virtual

◆ onPolyPressure()

virtual void onPolyPressure ( Group  group,
Channel  channel,
NoteNumber  note,
Data32  data 
) const
pure virtual

◆ onControlChange()

virtual void onControlChange ( Group  group,
Channel  channel,
ControllerNumber  controller,
Data32  data 
) const
pure virtual

◆ onProgramChange()

virtual void onProgramChange ( Group  group,
Channel  channel,
OptionFlags  options,
Program  program,
BankMSB  bankMSB,
BankLSB  bankLSB 
) const
pure virtual

◆ onChannelPressure()

virtual void onChannelPressure ( Group  group,
Channel  channel,
Data32  data 
) const
pure virtual

◆ onPitchBend()

virtual void onPitchBend ( Group  group,
Channel  channel,
Data32  data 
) const
pure virtual

◆ onPerNoteManagement()

virtual void onPerNoteManagement ( Group  group,
Channel  channel,
NoteNumber  note,
OptionFlags  options 
) const
pure virtual

◆ onSysEx8Packet()

virtual void onSysEx8Packet ( Group  group,
Data8  numBytes,
Index  streamID,
SysEx13ByteData  data 
) const
pure virtual

◆ onSysEx8Start()

virtual void onSysEx8Start ( Group  group,
Data8  numBytes,
Index  streamID,
SysEx13ByteData  data 
) const
pure virtual

◆ onSysEx8Continue()

virtual void onSysEx8Continue ( Group  group,
Data8  numBytes,
Index  streamID,
SysEx13ByteData  data 
) const
pure virtual

◆ onSysEx8End()

virtual void onSysEx8End ( Group  group,
Data8  numBytes,
Index  streamID,
SysEx13ByteData  data 
) const
pure virtual

◆ onMixedDataSetHeader()

virtual void onMixedDataSetHeader ( Group  group,
Index  mdsID,
MixedData  data 
) const
pure virtual

◆ onMixedDataSetPayload()

virtual void onMixedDataSetPayload ( Group  group,
Index  mdsID,
MixedData  data 
) const
pure virtual

◆ onInvalidInputData()

virtual ParsingAction onInvalidInputData ( size_t  index) const
pure virtual

◆ onInsufficentInputData()

virtual void onInsufficentInputData ( size_t  index,
size_t  numMissingWords 
) const
pure virtual
Empty

Copyright © Steinberg Media Technologies GmbH. All Rights Reserved. This documentation is under this license.