Classes | Public Types | Static Public Member Functions | List of all members
universal_midi_packets::Factory Struct Reference

This struct holds functions that can be used to create different kinds of Universal MIDI Packet. More...

Classes

struct  Detail
 

Public Types

enum  NoteAttributeKind : uint8_t { NoteAttributeKind::none = 0x00, NoteAttributeKind::manufacturer = 0x01, NoteAttributeKind::profile = 0x02, NoteAttributeKind::pitch7_9 = 0x03 }
 

Static Public Member Functions

static PacketX1 makeNoop (uint8_t group)
 
static PacketX1 makeJRClock (uint8_t group, uint16_t time)
 
static PacketX1 makeJRTimestamp (uint8_t group, uint16_t time)
 
static PacketX1 makeTimeCode (uint8_t group, uint8_t code)
 
static PacketX1 makeSongPositionPointer (uint8_t group, uint16_t pos)
 
static PacketX1 makeSongSelect (uint8_t group, uint8_t song)
 
static PacketX1 makeTuneRequest (uint8_t group)
 
static PacketX1 makeTimingClock (uint8_t group)
 
static PacketX1 makeStart (uint8_t group)
 
static PacketX1 makeContinue (uint8_t group)
 
static PacketX1 makeStop (uint8_t group)
 
static PacketX1 makeActiveSensing (uint8_t group)
 
static PacketX1 makeReset (uint8_t group)
 
static PacketX1 makeNoteOffV1 (uint8_t group, uint8_t channel, uint8_t note, uint8_t velocity)
 
static PacketX1 makeNoteOnV1 (uint8_t group, uint8_t channel, uint8_t note, uint8_t velocity)
 
static PacketX1 makePolyPressureV1 (uint8_t group, uint8_t channel, uint8_t note, uint8_t pressure)
 
static PacketX1 makeControlChangeV1 (uint8_t group, uint8_t channel, uint8_t controller, uint8_t value)
 
static PacketX1 makeProgramChangeV1 (uint8_t group, uint8_t channel, uint8_t program)
 
static PacketX1 makeChannelPressureV1 (uint8_t group, uint8_t channel, uint8_t pressure)
 
static PacketX1 makePitchBend (uint8_t group, uint8_t channel, uint16_t pitchbend)
 
static PacketX2 makeSysExIn1Packet (uint8_t group, uint8_t numBytes, const uint8_t *data)
 
static PacketX2 makeSysExStart (uint8_t group, uint8_t numBytes, const uint8_t *data)
 
static PacketX2 makeSysExContinue (uint8_t group, uint8_t numBytes, const uint8_t *data)
 
static PacketX2 makeSysExEnd (uint8_t group, uint8_t numBytes, const uint8_t *data)
 
static PacketX2 makeRegisteredPerNoteControllerV2 (uint8_t group, uint8_t channel, uint8_t note, uint8_t controller, uint32_t data)
 
static PacketX2 makeAssignablePerNoteControllerV2 (uint8_t group, uint8_t channel, uint8_t note, uint8_t controller, uint32_t data)
 
static PacketX2 makeRegisteredControllerV2 (uint8_t group, uint8_t channel, uint8_t bank, uint8_t index, uint32_t data)
 
static PacketX2 makeAssignableControllerV2 (uint8_t group, uint8_t channel, uint8_t bank, uint8_t index, uint32_t data)
 
static PacketX2 makeRelativeRegisteredControllerV2 (uint8_t group, uint8_t channel, uint8_t bank, uint8_t index, uint32_t data)
 
static PacketX2 makeRelativeAssignableControllerV2 (uint8_t group, uint8_t channel, uint8_t bank, uint8_t index, uint32_t data)
 
static PacketX2 makePerNotePitchBendV2 (uint8_t group, uint8_t channel, uint8_t note, uint32_t data)
 
static PacketX2 makeNoteOffV2 (uint8_t group, uint8_t channel, uint8_t note, NoteAttributeKind attribute, uint16_t velocity, uint16_t attributeValue)
 
static PacketX2 makeNoteOnV2 (uint8_t group, uint8_t channel, uint8_t note, NoteAttributeKind attribute, uint16_t velocity, uint16_t attributeValue)
 
static PacketX2 makePolyPressureV2 (uint8_t group, uint8_t channel, uint8_t note, uint32_t data)
 
static PacketX2 makeControlChangeV2 (uint8_t group, uint8_t channel, uint8_t controller, uint32_t data)
 
static PacketX2 makeProgramChangeV2 (uint8_t group, uint8_t channel, uint8_t optionFlags, uint8_t program, uint8_t bankMsb, uint8_t bankLsb)
 
static PacketX2 makeChannelPressureV2 (uint8_t group, uint8_t channel, uint32_t data)
 
static PacketX2 makePitchBendV2 (uint8_t group, uint8_t channel, uint32_t data)
 
static PacketX2 makePerNoteManagementV2 (uint8_t group, uint8_t channel, uint8_t note, uint8_t optionFlags)
 
static PacketX4 makeSysEx8in1Packet (uint8_t group, uint8_t numBytes, uint8_t streamId, const uint8_t *data)
 
static PacketX4 makeSysEx8Start (uint8_t group, uint8_t numBytes, uint8_t streamId, const uint8_t *data)
 
static PacketX4 makeSysEx8Continue (uint8_t group, uint8_t numBytes, uint8_t streamId, const uint8_t *data)
 
static PacketX4 makeSysEx8End (uint8_t group, uint8_t numBytes, uint8_t streamId, const uint8_t *data)
 
static PacketX4 makeMixedDataSetHeader (uint8_t group, uint8_t dataSetId, const uint8_t *data)
 
static PacketX4 makeDataSetPayload (uint8_t group, uint8_t dataSetId, const uint8_t *data)
 

Detailed Description

This struct holds functions that can be used to create different kinds of Universal MIDI Packet.

Member Enumeration Documentation

◆ NoteAttributeKind

Enumerator
none 
manufacturer 
profile 
pitch7_9 

Member Function Documentation

◆ makeNoop()

static PacketX1 universal_midi_packets::Factory::makeNoop ( uint8_t  group)
static

◆ makeJRClock()

static PacketX1 universal_midi_packets::Factory::makeJRClock ( uint8_t  group,
uint16_t  time 
)
static

◆ makeJRTimestamp()

static PacketX1 universal_midi_packets::Factory::makeJRTimestamp ( uint8_t  group,
uint16_t  time 
)
static

◆ makeTimeCode()

static PacketX1 universal_midi_packets::Factory::makeTimeCode ( uint8_t  group,
uint8_t  code 
)
static

◆ makeSongPositionPointer()

static PacketX1 universal_midi_packets::Factory::makeSongPositionPointer ( uint8_t  group,
uint16_t  pos 
)
static

◆ makeSongSelect()

static PacketX1 universal_midi_packets::Factory::makeSongSelect ( uint8_t  group,
uint8_t  song 
)
static

◆ makeTuneRequest()

static PacketX1 universal_midi_packets::Factory::makeTuneRequest ( uint8_t  group)
static

◆ makeTimingClock()

static PacketX1 universal_midi_packets::Factory::makeTimingClock ( uint8_t  group)
static

◆ makeStart()

static PacketX1 universal_midi_packets::Factory::makeStart ( uint8_t  group)
static

◆ makeContinue()

static PacketX1 universal_midi_packets::Factory::makeContinue ( uint8_t  group)
static

◆ makeStop()

static PacketX1 universal_midi_packets::Factory::makeStop ( uint8_t  group)
static

◆ makeActiveSensing()

static PacketX1 universal_midi_packets::Factory::makeActiveSensing ( uint8_t  group)
static

◆ makeReset()

static PacketX1 universal_midi_packets::Factory::makeReset ( uint8_t  group)
static

◆ makeNoteOffV1()

static PacketX1 universal_midi_packets::Factory::makeNoteOffV1 ( uint8_t  group,
uint8_t  channel,
uint8_t  note,
uint8_t  velocity 
)
static

◆ makeNoteOnV1()

static PacketX1 universal_midi_packets::Factory::makeNoteOnV1 ( uint8_t  group,
uint8_t  channel,
uint8_t  note,
uint8_t  velocity 
)
static

◆ makePolyPressureV1()

static PacketX1 universal_midi_packets::Factory::makePolyPressureV1 ( uint8_t  group,
uint8_t  channel,
uint8_t  note,
uint8_t  pressure 
)
static

◆ makeControlChangeV1()

static PacketX1 universal_midi_packets::Factory::makeControlChangeV1 ( uint8_t  group,
uint8_t  channel,
uint8_t  controller,
uint8_t  value 
)
static

◆ makeProgramChangeV1()

static PacketX1 universal_midi_packets::Factory::makeProgramChangeV1 ( uint8_t  group,
uint8_t  channel,
uint8_t  program 
)
static

◆ makeChannelPressureV1()

static PacketX1 universal_midi_packets::Factory::makeChannelPressureV1 ( uint8_t  group,
uint8_t  channel,
uint8_t  pressure 
)
static

◆ makePitchBend()

static PacketX1 universal_midi_packets::Factory::makePitchBend ( uint8_t  group,
uint8_t  channel,
uint16_t  pitchbend 
)
static

◆ makeSysExIn1Packet()

static PacketX2 universal_midi_packets::Factory::makeSysExIn1Packet ( uint8_t  group,
uint8_t  numBytes,
const uint8_t *  data 
)
static

◆ makeSysExStart()

static PacketX2 universal_midi_packets::Factory::makeSysExStart ( uint8_t  group,
uint8_t  numBytes,
const uint8_t *  data 
)
static

◆ makeSysExContinue()

static PacketX2 universal_midi_packets::Factory::makeSysExContinue ( uint8_t  group,
uint8_t  numBytes,
const uint8_t *  data 
)
static

◆ makeSysExEnd()

static PacketX2 universal_midi_packets::Factory::makeSysExEnd ( uint8_t  group,
uint8_t  numBytes,
const uint8_t *  data 
)
static

◆ makeRegisteredPerNoteControllerV2()

static PacketX2 universal_midi_packets::Factory::makeRegisteredPerNoteControllerV2 ( uint8_t  group,
uint8_t  channel,
uint8_t  note,
uint8_t  controller,
uint32_t  data 
)
static

◆ makeAssignablePerNoteControllerV2()

static PacketX2 universal_midi_packets::Factory::makeAssignablePerNoteControllerV2 ( uint8_t  group,
uint8_t  channel,
uint8_t  note,
uint8_t  controller,
uint32_t  data 
)
static

◆ makeRegisteredControllerV2()

static PacketX2 universal_midi_packets::Factory::makeRegisteredControllerV2 ( uint8_t  group,
uint8_t  channel,
uint8_t  bank,
uint8_t  index,
uint32_t  data 
)
static

◆ makeAssignableControllerV2()

static PacketX2 universal_midi_packets::Factory::makeAssignableControllerV2 ( uint8_t  group,
uint8_t  channel,
uint8_t  bank,
uint8_t  index,
uint32_t  data 
)
static

◆ makeRelativeRegisteredControllerV2()

static PacketX2 universal_midi_packets::Factory::makeRelativeRegisteredControllerV2 ( uint8_t  group,
uint8_t  channel,
uint8_t  bank,
uint8_t  index,
uint32_t  data 
)
static

◆ makeRelativeAssignableControllerV2()

static PacketX2 universal_midi_packets::Factory::makeRelativeAssignableControllerV2 ( uint8_t  group,
uint8_t  channel,
uint8_t  bank,
uint8_t  index,
uint32_t  data 
)
static

◆ makePerNotePitchBendV2()

static PacketX2 universal_midi_packets::Factory::makePerNotePitchBendV2 ( uint8_t  group,
uint8_t  channel,
uint8_t  note,
uint32_t  data 
)
static

◆ makeNoteOffV2()

static PacketX2 universal_midi_packets::Factory::makeNoteOffV2 ( uint8_t  group,
uint8_t  channel,
uint8_t  note,
NoteAttributeKind  attribute,
uint16_t  velocity,
uint16_t  attributeValue 
)
static

◆ makeNoteOnV2()

static PacketX2 universal_midi_packets::Factory::makeNoteOnV2 ( uint8_t  group,
uint8_t  channel,
uint8_t  note,
NoteAttributeKind  attribute,
uint16_t  velocity,
uint16_t  attributeValue 
)
static

◆ makePolyPressureV2()

static PacketX2 universal_midi_packets::Factory::makePolyPressureV2 ( uint8_t  group,
uint8_t  channel,
uint8_t  note,
uint32_t  data 
)
static

◆ makeControlChangeV2()

static PacketX2 universal_midi_packets::Factory::makeControlChangeV2 ( uint8_t  group,
uint8_t  channel,
uint8_t  controller,
uint32_t  data 
)
static

◆ makeProgramChangeV2()

static PacketX2 universal_midi_packets::Factory::makeProgramChangeV2 ( uint8_t  group,
uint8_t  channel,
uint8_t  optionFlags,
uint8_t  program,
uint8_t  bankMsb,
uint8_t  bankLsb 
)
static

◆ makeChannelPressureV2()

static PacketX2 universal_midi_packets::Factory::makeChannelPressureV2 ( uint8_t  group,
uint8_t  channel,
uint32_t  data 
)
static

◆ makePitchBendV2()

static PacketX2 universal_midi_packets::Factory::makePitchBendV2 ( uint8_t  group,
uint8_t  channel,
uint32_t  data 
)
static

◆ makePerNoteManagementV2()

static PacketX2 universal_midi_packets::Factory::makePerNoteManagementV2 ( uint8_t  group,
uint8_t  channel,
uint8_t  note,
uint8_t  optionFlags 
)
static

◆ makeSysEx8in1Packet()

static PacketX4 universal_midi_packets::Factory::makeSysEx8in1Packet ( uint8_t  group,
uint8_t  numBytes,
uint8_t  streamId,
const uint8_t *  data 
)
static

◆ makeSysEx8Start()

static PacketX4 universal_midi_packets::Factory::makeSysEx8Start ( uint8_t  group,
uint8_t  numBytes,
uint8_t  streamId,
const uint8_t *  data 
)
static

◆ makeSysEx8Continue()

static PacketX4 universal_midi_packets::Factory::makeSysEx8Continue ( uint8_t  group,
uint8_t  numBytes,
uint8_t  streamId,
const uint8_t *  data 
)
static

◆ makeSysEx8End()

static PacketX4 universal_midi_packets::Factory::makeSysEx8End ( uint8_t  group,
uint8_t  numBytes,
uint8_t  streamId,
const uint8_t *  data 
)
static

◆ makeMixedDataSetHeader()

static PacketX4 universal_midi_packets::Factory::makeMixedDataSetHeader ( uint8_t  group,
uint8_t  dataSetId,
const uint8_t *  data 
)
static

◆ makeDataSetPayload()

static PacketX4 universal_midi_packets::Factory::makeDataSetPayload ( uint8_t  group,
uint8_t  dataSetId,
const uint8_t *  data 
)
static

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