Example #1
0
 void WinMIDIOutput::sendPitchBend(int chan, int value)
 {
     WinMIDIPacket packet;
     packet.data[0] = MIDI_STATUS_PITCHBEND | (chan & MIDI_CHANNEL_MASK);
     packet.data[1] = MIDI_LSB(value);
     packet.data[2] = MIDI_MSB(value);
     d->sendShortMessage(packet);
 }
Example #2
0
/**
 * Set properties of song position pointer messages.
 * @param data     The message data object to write to.
 * @param property The property to set.
 * @param size     The size of the memory object pointed to by @c value.
 * @param value    A pointer to the memory object who's contents shall be
 *                 copied to the message property.
 * @retval 0 on success.
 * @retval 1 if the property was not set.
 */
static int _set_song_position_pointer( struct MIDIMessageData * data, MIDIProperty property, size_t size, void * value ) {
  unsigned char * m = &(data->bytes[0]);
  if( size == 0 || value == NULL ) return 1;
  switch( property ) {
    PROPERTY_CASE_SET(MIDI_STATUS,MIDIStatus,m[0]);
    PROPERTY_CASE_SET(MIDI_VALUE_LSB,MIDIValue,m[1]);
    PROPERTY_CASE_SET(MIDI_VALUE_MSB,MIDIValue,m[2]);
    PROPERTY_CASE_BASE(MIDI_VALUE,MIDILongValue);
      m[1] = MIDI_LSB(*(MIDILongValue*)value);
      m[2] = MIDI_MSB(*(MIDILongValue*)value);
      return 0;
    PROPERTY_DEFAULT;
  }
}
Example #3
0
void NetMIDIOutput::sendPitchBend(int chan, int value)
{
    d->sendMessage(MIDI_STATUS_PITCHBEND + chan, MIDI_LSB(value), MIDI_MSB(value));
}