/[svn]/linuxsampler/trunk/src/engines/AbstractEngineChannel.cpp
ViewVC logotype

Diff of /linuxsampler/trunk/src/engines/AbstractEngineChannel.cpp

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

revision 3987 by schoenebeck, Thu Jan 23 18:15:37 2020 UTC revision 3988 by schoenebeck, Wed Aug 4 18:23:05 2021 UTC
# Line 3  Line 3 
3   *   LinuxSampler - modular, streaming capable sampler                     *   *   LinuxSampler - modular, streaming capable sampler                     *
4   *                                                                         *   *                                                                         *
5   *   Copyright (C) 2003,2004 by Benno Senoner and Christian Schoenebeck    *   *   Copyright (C) 2003,2004 by Benno Senoner and Christian Schoenebeck    *
6   *   Copyright (C) 2005-2020 Christian Schoenebeck                         *   *   Copyright (C) 2005-2021 Christian Schoenebeck                         *
7   *   Copyright (C) 2009-2012 Grigor Iliev                                  *   *   Copyright (C) 2009-2012 Grigor Iliev                                  *
8   *   Copyright (C) 2012-2017 Andreas Persson                               *   *   Copyright (C) 2012-2017 Andreas Persson                               *
9   *                                                                         *   *                                                                         *
# Line 593  namespace LinuxSampler { Line 593  namespace LinuxSampler {
593              event.pEngineChannel      = this;              event.pEngineChannel      = this;
594              if (this->pEventQueue->write_space() > 0) this->pEventQueue->push(&event);              if (this->pEventQueue->write_space() > 0) this->pEventQueue->push(&event);
595              else dmsg(1,("AbstractEngineChannel: Input event queue full!"));              else dmsg(1,("AbstractEngineChannel: Input event queue full!"));
596                // inform connected virtual MIDI devices if any ...
597                // (e.g. slider / knob in instrument editor(s))
598                ArrayList<VirtualMidiDevice*>& devices =
599                    const_cast<ArrayList<VirtualMidiDevice*>&>(
600                        virtualMidiDevicesReader_MidiThread.Lock()
601                    );
602                for (int i = 0; i < devices.size(); i++) {
603                    devices[i]->SendCCToDevice(Controller, Value);
604                }
605                virtualMidiDevicesReader_MidiThread.Unlock();
606          }          }
607      }      }
608    
# Line 624  namespace LinuxSampler { Line 634  namespace LinuxSampler {
634              event.pEngineChannel      = this;              event.pEngineChannel      = this;
635              if (this->pEventQueue->write_space() > 0) this->pEventQueue->push(&event);              if (this->pEventQueue->write_space() > 0) this->pEventQueue->push(&event);
636              else dmsg(1,("AbstractEngineChannel: Input event queue full!"));              else dmsg(1,("AbstractEngineChannel: Input event queue full!"));
637                // inform connected virtual MIDI devices if any ...
638                // (e.g. slider / knob in instrument editor(s))
639                ArrayList<VirtualMidiDevice*>& devices =
640                    const_cast<ArrayList<VirtualMidiDevice*>&>(
641                        virtualMidiDevicesReader_MidiThread.Lock()
642                    );
643                for (int i = 0; i < devices.size(); i++) {
644                    devices[i]->SendCCToDevice(Controller, Value);
645                }
646                virtualMidiDevicesReader_MidiThread.Unlock();
647          }          }
648      }      }
649    

Legend:
Removed from v.3987  
changed lines
  Added in v.3988

  ViewVC Help
Powered by ViewVC