public void Remove(MasterChannel provider) { lock (FSourceLock) { FSources.Remove(provider); } }
public void Remove(MasterChannel provider) { lock(FSourceLock) { FSources.Remove(provider); } }
//add/remove sample providers public void Add(MasterChannel provider) { lock(FSourceLock) { if(!FSources.Contains(provider)) FSources.Add(provider); } }
//add/remove sample providers public void Add(MasterChannel provider) { lock (FSourceLock) { if (!FSources.Contains(provider)) { FSources.Add(provider); } } }
//called when data for any output pin is requested public void Evaluate(int SpreadMax) { if(FInput.IsChanged || FChannelOffsetIn.IsChanged) { AudioService.Engine.RemoveOutput(LastSignals); LastSignals.SliceCount = SpreadMax; for (int i = 0; i < SpreadMax; i++) { LastSignals[i] = new MasterChannel(FInput[i], i + FChannelOffsetIn[i]); } AudioService.Engine.AddOutput(LastSignals); } }