protected ChkVm(int loudspeaker, int line, CardModel card, MainUnitModel main) { Loudspeaker = loudspeaker; Line = line; Card = card; Main = main; }
public LspNode(int loudspeaker, int line, CardModel card, MainUnitModel main) : base(loudspeaker, line, card, main) { _loudspeaker = loudspeaker; _line = line; _flow = card.Flows.Skip(Loudspeaker).FirstOrDefault(); }
/// <summary> /// Low Pilot /// 0 1 2 /// Watts A B AB /// 3 4 5 /// Ohm A B AB /// High Pilot /// 6 7 8 /// Watts A B AB /// 9 1011 /// Ohm A B AB /// </summary> public static double[] GetLoads(FlowModel flow, MainUnitModel main) { var ret = new double[12]; if (main.DspCopy.Count < 131070) { return(Enumerable.Range(0, 12).Select(n => 0.0).ToArray()); } var ks = main.DspCopy.Skip(McuDat.KreisInstall).Skip(flow.Id * 72).Take(72).ToArray(); for (var g = 0; g < 2; g++) { var start = 12 + g * 18; //stored load high pilot a, b, ab for (var i = 0; i < 3; i++) { ret[i + g * 6] = (DspCoefficients.Nfb(new[] { ks[start + i * 2], ks[start + i * 2 + 1] })); } } for (var g = 0; g < 2; g++) { //add resistance to array for (var i = 0; i < 3; i++) { switch (flow.AmplifierOperationMode) { case AmplifierOperationMode.Bridged100V: case AmplifierOperationMode.Trafo: var q = ret[i + g * 6]; ret[i + 3 + g * 6] = q < .01 ? 0 : Math.Round(10000 / ret[i + g * 6], 0); break; case AmplifierOperationMode.Single50V: q = ret[i + g * 6]; ret[i + 3 + g * 6] = q < 0.01 ? 0 : Math.Round(2500 / ret[i + g * 6], 0); break; default: ret[i + 3 + g * 6] = 0; break; } } } for (int i = 0; i < ret.Length; i++) { if (ret[i] < 10) { ret[i] = 0; } } return(ret); }
private static SortedSet <FlowModel> GenFlows(MainUnitModel model, int cardId) { return (new SortedSet <FlowModel>( Enumerable.Range(model.Id * 12 + cardId * 4, 4).Select(n => new FlowModel { Id = n }))); }
public MainUnitViewModel(MainUnitModel mainUnit, MainViewModel main) { main.Communication.ConnectionModeChanged += Communication_ConnectionModeChanged; _mainUnit = mainUnit; _main = main; main.SystemChanged += UpdateName; VuMeter = new VuMeter(this); AlarmMessages = new AlarmMessagesViewModel(this); UpdateConnectionMode(); }
protected internal ToneControlUpdater(MainUnitModel main) : base(main) { }
protected internal TimeStampUpdater(MainUnitModel main) : base(main) { }
protected internal MessageSelector(MainUnitModel main) : base(main) { }
public HardwareReceive(MainUnitModel main) : base(main) { }
public PeqUpload(MainUnitModel main) : base(main) { }
protected internal MatrixSender(MainUnitModel main) : base(main) { }
protected internal InputSensitivityUpdater(MainUnitModel main) : base(main) { }
public MainUnitEmergencyViewModel(MainUnitModel main, int xLocation) { _main = main; Location.Y = 0; Location.X = xLocation; }
public SensitivityReceive(int mcuId, MainUnitModel main) { _mcuId = mcuId; _main = main; }
protected internal EscLogic(MainUnitModel main) { Main = main; }
public EscSender(MainUnitModel main) { _main = main; }
protected internal SliderUpdater(MainUnitModel main) : base(main) { }
/// <summary> /// Design instance /// </summary> public MainUnitViewModel() { LibraryData.CreateEmptySystem(); _mainUnit = LibraryData.GetMainUnit(0); _main = new MainViewModel(); }
private static void MainUnitIntegratyChecker(MainUnitModel mainUnitModel) { if (mainUnitModel.LoudSpeakers == null || mainUnitModel.LoudSpeakers.Count < 1) { mainUnitModel.LoudSpeakers = new List<LoudSpeakerModel>(); mainUnitModel.LoudSpeakers.AddRange(Enumerable.Range(0, 24).Select(n => new LoudSpeakerModel() { Id = n, IsVisibileInMonitoringSchematic = false, Line = (n < 12) ? LoudspeakerLine.LineA : LoudspeakerLine.LineB })); } }
protected internal LineLinkUpdater(MainUnitModel main) : base(main) { _flows = Main.Cards.OfType <CardModel>().SelectMany(o => o.Flows).ToList(); }
protected internal SdMessageReceive(MainUnitModel main) : base(main) { }
protected internal DelayUpdater(MainUnitModel main) : base(main) { }
protected internal AuxLinker(MainUnitModel main) : base(main) { }
public LspLeftHeader(int line, CardModel card, MainUnitModel main) : base(0, line, card, main) { _flow = card.Flows.Skip(line).FirstOrDefault(); }