private void GetExternalInputSliders() { //only get monitor slider for the first card as it is per mainunit Main.MonitorSlider = GetGainSlider.DbValue(Main.DspCopy, SliderType.Monitoring, 0); var cardFlows = Main.DataModel.Cards.OfType <ExtensionCardModel>().First().Flows.OrderBy(i => i.Id).ToArray(); foreach (var flow in cardFlows) { flow.InputSlider = GetGainSlider.DbValue(Main.DspCopy, SliderType.Input, flow.Id); } }
private void ApplySliderValues() { foreach (var result in Main.DataModel.Cards.OfType <CardModel>().SelectMany(f => f.Flows)) { SetSliders(result); } foreach (var c in Main.DataModel.Cards.OfType <CardModel>()) { c.AuxGainSlider = GetGainSlider.DbValue(Main.DspCopy, SliderType.Auxiliary, Main.Id * 12 + c.Id * 4); } }
private void SetSliders(FlowModel flow) { if (flow.Id > GenericMethods.StartCountFrom) { flow.InputSlider = GetGainSlider.DbValue(Main.DspCopy, SliderType.Input, (flow.Id - GenericMethods.StartCountFrom) % 5); } //set pilotTone frequencies var pilot = Main.DspCopy.Skip(0xF113 + 72 * flow.Id + 60).First(); flow.PilotFrequency = PilotToneConverter.PilotFreqDict.ContainsKey(pilot) ? PilotToneConverter.PilotFreqDict[pilot] : 0; flow.InputSlider = GetGainSlider.DbValue(Main.DspCopy, SliderType.Input, flow.Id); flow.PageGain = GetGainSlider.DbValue(Main.DspCopy, SliderType.Page, flow.Id); flow.OutputGain = GetGainSlider.DbValue(Main.DspCopy, SliderType.Output, flow.Id); //demux link flow.Path = DspCoefficients.Link(Main.DspCopy, flow.Id); }