| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144 |
- #include "message.h"
- /** Returns the data within the MidiEvent as a NoteOffEvent struct */
- NoteOffEvent AsNoteOff(MidiEvent* event) {
- NoteOffEvent m;
- m.channel = event->channel;
- m.note = event->data[0];
- m.velocity = event->data[1];
- return m;
- }
- /** Returns the data within the MidiEvent as a NoteOnEvent struct */
- NoteOnEvent AsNoteOn(MidiEvent* event) {
- NoteOnEvent m;
- m.channel = event->channel;
- m.note = event->data[0];
- m.velocity = event->data[1];
- return m;
- }
- /** Returns the data within the MidiEvent as a PolyphonicKeyPressureEvent struct */
- PolyphonicKeyPressureEvent AsPolyphonicKeyPressure(MidiEvent* event) {
- PolyphonicKeyPressureEvent m;
- m.channel = event->channel;
- m.note = event->data[0];
- m.pressure = event->data[1];
- return m;
- }
- /** Returns the data within the MidiEvent as a ControlChangeEvent struct.*/
- ControlChangeEvent AsControlChange(MidiEvent* event) {
- ControlChangeEvent m;
- m.channel = event->channel;
- m.control_number = event->data[0];
- m.value = event->data[1];
- return m;
- }
- /** Returns the data within the MidiEvent as a ProgramChangeEvent struct.*/
- ProgramChangeEvent AsProgramChange(MidiEvent* event) {
- ProgramChangeEvent m;
- m.channel = event->channel;
- m.program = event->data[0];
- return m;
- }
- /** Returns the data within the MidiEvent as a ProgramChangeEvent struct.*/
- ChannelPressureEvent AsChannelPressure(MidiEvent* event) {
- ChannelPressureEvent m;
- m.channel = event->channel;
- m.pressure = event->data[0];
- return m;
- }
- /** Returns the data within the MidiEvent as a PitchBendEvent struct.*/
- PitchBendEvent AsPitchBend(MidiEvent* event) {
- PitchBendEvent m;
- m.channel = event->channel;
- m.value = ((uint16_t)(event->data[1]) << 7) + (event->data[0] - 8192);
- return m;
- }
- SystemExclusiveEvent AsSystemExclusive(MidiEvent* event) {
- SystemExclusiveEvent m;
- m.length = event->sysex_message_len;
- for(int i = 0; i < SYSEX_BUFFER_LEN; i++) {
- m.data[i] = 0;
- if(i < m.length) {
- m.data[i] = event->sysex_data[i];
- }
- }
- return m;
- }
- MTCQuarterFrameEvent AsMTCQuarterFrame(MidiEvent* event) {
- MTCQuarterFrameEvent m;
- m.message_type = (event->data[0] & 0x70) >> 4;
- m.value = (event->data[0]) & 0x0f;
- return m;
- }
- SongPositionPointerEvent AsSongPositionPointer(MidiEvent* event) {
- SongPositionPointerEvent m;
- m.position = ((uint16_t)(event->data[1]) << 7) | (event->data[0]);
- return m;
- }
- SongSelectEvent AsSongSelect(MidiEvent* event) {
- SongSelectEvent m;
- m.song = event->data[0];
- return m;
- }
- AllSoundOffEvent AsAllSoundOff(MidiEvent* event) {
- AllSoundOffEvent m;
- m.channel = event->channel;
- return m;
- }
- ResetAllControllersEvent AsResetAllControllers(MidiEvent* event) {
- ResetAllControllersEvent m;
- m.channel = event->channel;
- m.value = event->data[1];
- return m;
- }
- LocalControlEvent AsLocalControl(MidiEvent* event) {
- LocalControlEvent m;
- m.channel = event->channel;
- m.local_control_off = (event->data[1] == 0);
- m.local_control_on = (event->data[1] == 127);
- return m;
- }
- AllNotesOffEvent AsAllNotesOff(MidiEvent* event) {
- AllNotesOffEvent m;
- m.channel = event->channel;
- return m;
- }
- OmniModeOffEvent AsOmniModeOff(MidiEvent* event) {
- OmniModeOffEvent m;
- m.channel = event->channel;
- return m;
- }
- OmniModeOnEvent AsOmniModeOn(MidiEvent* event) {
- OmniModeOnEvent m;
- m.channel = event->channel;
- return m;
- }
- MonoModeOnEvent AsMonoModeOn(MidiEvent* event) {
- MonoModeOnEvent m;
- m.channel = event->channel;
- m.num_channels = event->data[1];
- return m;
- }
- PolyModeOnEvent AsPolyModeOn(MidiEvent* event) {
- PolyModeOnEvent m;
- m.channel = event->channel;
- return m;
- }
|