Example #1
0
        private bool HasListenerFor(Interpolator interpolator)
        {
            int persistentEventCount = innerEvent.GetPersistentEventCount();

            for (int i = 0; i < persistentEventCount; i++)
            {
                if (innerEvent.GetPersistentTarget(i) == interpolator)
                {
                    return(true);
                }
            }

            return(false);
        }
Example #2
0
 public override void Apply()
 {
     MidiDriver.KnobDelegate action = (MidiChannel ch, int knob, float val) =>
     {
         if ((ch == channel || channel == MidiChannel.All) && knob == knobNumber)
         {
             onKnob.Invoke(val);
         }
     };
     info = new MidiCcEventInfo()
     {
         knobName   = knobName,
         channel    = channel,
         knobNumber = knobNumber,
         methods    = Enumerable.Range(0, onKnob.GetPersistentEventCount())
                      .Select(idx => onKnob.GetPersistentTarget(idx).ToString() + "." + onKnob.GetPersistentMethodName(idx))
                      .ToArray()
     };
     MidiController.AddCcAction(action, info);
 }