/[svn]/linuxsampler/trunk/src/drivers/midi/VirtualMidiDevice.cpp
ViewVC logotype

Diff of /linuxsampler/trunk/src/drivers/midi/VirtualMidiDevice.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2384 by schoenebeck, Fri Dec 14 16:04:49 2012 UTC revision 2385 by schoenebeck, Fri Dec 14 17:41:32 2012 UTC
# Line 57  namespace LinuxSampler { Line 57  namespace LinuxSampler {
57    
58      bool VirtualMidiDevice::SendNoteOnToSampler(uint8_t Key, uint8_t Velocity) {      bool VirtualMidiDevice::SendNoteOnToSampler(uint8_t Key, uint8_t Velocity) {
59          if (Key >= MIDI_KEYS || Velocity > 127) return false;          if (Key >= MIDI_KEYS || Velocity > 127) return false;
60            if (Velocity == 0) {
61                return SendNoteOffToSampler(Key, Velocity);
62            }
63          event_t ev = { EVENT_TYPE_NOTEON, Key, Velocity };          event_t ev = { EVENT_TYPE_NOTEON, Key, Velocity };
64          if (p->events.write_space() <= 0) return false;          if (p->events.write_space() <= 0) return false;
65          p->events.push(&ev);          p->events.push(&ev);
# Line 125  namespace LinuxSampler { Line 128  namespace LinuxSampler {
128    
129      void VirtualMidiDevice::SendNoteOnToDevice(uint8_t Key, uint8_t Velocity) {      void VirtualMidiDevice::SendNoteOnToDevice(uint8_t Key, uint8_t Velocity) {
130          if (Key >= MIDI_KEYS) return;          if (Key >= MIDI_KEYS) return;
131            if (Velocity == 0) {
132                SendNoteOffToDevice(Key, Velocity);
133                return;
134            }
135          atomic_set( &(p->pNoteOnVelocity)[Key], Velocity );          atomic_set( &(p->pNoteOnVelocity)[Key], Velocity );
136          atomic_inc( &(p->pNoteIsActive)[Key] );          atomic_inc( &(p->pNoteIsActive)[Key] );
137          atomic_inc( &(p->pNoteChanged)[Key] );          atomic_inc( &(p->pNoteChanged)[Key] );

Legend:
Removed from v.2384  
changed lines
  Added in v.2385

  ViewVC Help
Powered by ViewVC