public void PZ69KnobChanged(bool isFirstReport, IEnumerable <object> hashSet) { lock (LockLCDUpdateObject) { Interlocked.Add(ref _doUpdatePanelLCD, 1); foreach (var radioPanelKnobObject in hashSet) { var radioPanelKnob = (RadioPanelKnobAV8BNA)radioPanelKnobObject; switch (radioPanelKnob.RadioPanelPZ69Knob) { case RadioPanelPZ69KnobsAV8BNA.UPPER_COMM1: { if (radioPanelKnob.IsOn) { _currentUpperRadioMode = CurrentAV8BNARadioMode.COMM1; } break; } case RadioPanelPZ69KnobsAV8BNA.UPPER_COMM2: { if (radioPanelKnob.IsOn) { _currentUpperRadioMode = CurrentAV8BNARadioMode.COMM2; } break; } case RadioPanelPZ69KnobsAV8BNA.UPPER_NAV1: case RadioPanelPZ69KnobsAV8BNA.UPPER_NAV2: case RadioPanelPZ69KnobsAV8BNA.UPPER_ADF: case RadioPanelPZ69KnobsAV8BNA.UPPER_DME: case RadioPanelPZ69KnobsAV8BNA.UPPER_XPDR: { if (radioPanelKnob.IsOn) { _currentUpperRadioMode = CurrentAV8BNARadioMode.NOUSE; } break; } case RadioPanelPZ69KnobsAV8BNA.LOWER_COMM1: { if (radioPanelKnob.IsOn) { _currentLowerRadioMode = CurrentAV8BNARadioMode.COMM1; } break; } case RadioPanelPZ69KnobsAV8BNA.LOWER_COMM2: { if (radioPanelKnob.IsOn) { _currentLowerRadioMode = CurrentAV8BNARadioMode.COMM2; } break; } case RadioPanelPZ69KnobsAV8BNA.LOWER_NAV1: case RadioPanelPZ69KnobsAV8BNA.LOWER_NAV2: case RadioPanelPZ69KnobsAV8BNA.LOWER_ADF: case RadioPanelPZ69KnobsAV8BNA.LOWER_DME: case RadioPanelPZ69KnobsAV8BNA.LOWER_XPDR: { if (radioPanelKnob.IsOn) { _currentLowerRadioMode = CurrentAV8BNARadioMode.NOUSE; } break; } case RadioPanelPZ69KnobsAV8BNA.UPPER_LARGE_FREQ_WHEEL_INC: { break; } case RadioPanelPZ69KnobsAV8BNA.UPPER_LARGE_FREQ_WHEEL_DEC: { break; } case RadioPanelPZ69KnobsAV8BNA.UPPER_SMALL_FREQ_WHEEL_INC: { break; } case RadioPanelPZ69KnobsAV8BNA.UPPER_SMALL_FREQ_WHEEL_DEC: { break; } case RadioPanelPZ69KnobsAV8BNA.LOWER_LARGE_FREQ_WHEEL_INC: { break; } case RadioPanelPZ69KnobsAV8BNA.LOWER_LARGE_FREQ_WHEEL_DEC: { break; } case RadioPanelPZ69KnobsAV8BNA.LOWER_SMALL_FREQ_WHEEL_INC: { break; } case RadioPanelPZ69KnobsAV8BNA.LOWER_SMALL_FREQ_WHEEL_DEC: { break; } case RadioPanelPZ69KnobsAV8BNA.UPPER_FREQ_SWITCH: { SendFrequencyToDCSBIOS(radioPanelKnob); break; } case RadioPanelPZ69KnobsAV8BNA.LOWER_FREQ_SWITCH: { SendFrequencyToDCSBIOS(radioPanelKnob); break; } } } AdjustFrequency(hashSet); } }
public void PZ69KnobChanged(bool isFirstReport, IEnumerable <object> hashSet) { if (isFirstReport) { return; } lock (LockLCDUpdateObject) { Interlocked.Increment(ref _doUpdatePanelLCD); foreach (var radioPanelKnobObject in hashSet) { var radioPanelKnob = (RadioPanelKnobAV8BNA)radioPanelKnobObject; switch (radioPanelKnob.RadioPanelPZ69Knob) { case RadioPanelPZ69KnobsAV8BNA.UPPER_COMM1: { if (radioPanelKnob.IsOn) { _currentUpperRadioMode = CurrentAV8BNARadioMode.COMM1; } break; } case RadioPanelPZ69KnobsAV8BNA.UPPER_COMM2: { if (radioPanelKnob.IsOn) { _currentUpperRadioMode = CurrentAV8BNARadioMode.COMM2; } break; } case RadioPanelPZ69KnobsAV8BNA.UPPER_NAV1: case RadioPanelPZ69KnobsAV8BNA.UPPER_NAV2: case RadioPanelPZ69KnobsAV8BNA.UPPER_ADF: case RadioPanelPZ69KnobsAV8BNA.UPPER_DME: case RadioPanelPZ69KnobsAV8BNA.UPPER_XPDR: { if (radioPanelKnob.IsOn) { _currentUpperRadioMode = CurrentAV8BNARadioMode.NOUSE; } break; } case RadioPanelPZ69KnobsAV8BNA.LOWER_COMM1: { if (radioPanelKnob.IsOn) { _currentLowerRadioMode = CurrentAV8BNARadioMode.COMM1; } break; } case RadioPanelPZ69KnobsAV8BNA.LOWER_COMM2: { if (radioPanelKnob.IsOn) { _currentLowerRadioMode = CurrentAV8BNARadioMode.COMM2; } break; } case RadioPanelPZ69KnobsAV8BNA.LOWER_NAV1: case RadioPanelPZ69KnobsAV8BNA.LOWER_NAV2: case RadioPanelPZ69KnobsAV8BNA.LOWER_ADF: case RadioPanelPZ69KnobsAV8BNA.LOWER_DME: case RadioPanelPZ69KnobsAV8BNA.LOWER_XPDR: { if (radioPanelKnob.IsOn) { _currentLowerRadioMode = CurrentAV8BNARadioMode.NOUSE; } break; } case RadioPanelPZ69KnobsAV8BNA.UPPER_LARGE_FREQ_WHEEL_INC: { break; } case RadioPanelPZ69KnobsAV8BNA.UPPER_LARGE_FREQ_WHEEL_DEC: { break; } case RadioPanelPZ69KnobsAV8BNA.UPPER_SMALL_FREQ_WHEEL_INC: { break; } case RadioPanelPZ69KnobsAV8BNA.UPPER_SMALL_FREQ_WHEEL_DEC: { break; } case RadioPanelPZ69KnobsAV8BNA.LOWER_LARGE_FREQ_WHEEL_INC: { break; } case RadioPanelPZ69KnobsAV8BNA.LOWER_LARGE_FREQ_WHEEL_DEC: { break; } case RadioPanelPZ69KnobsAV8BNA.LOWER_SMALL_FREQ_WHEEL_INC: { break; } case RadioPanelPZ69KnobsAV8BNA.LOWER_SMALL_FREQ_WHEEL_DEC: { break; } case RadioPanelPZ69KnobsAV8BNA.UPPER_FREQ_SWITCH: { SendFrequencyToDCSBIOS(radioPanelKnob); break; } case RadioPanelPZ69KnobsAV8BNA.LOWER_FREQ_SWITCH: { SendFrequencyToDCSBIOS(radioPanelKnob); break; } } if (PluginManager.PlugSupportActivated && PluginManager.HasPlugin()) { PluginManager.DoEvent(DCSFPProfile.SelectedProfile.Description, HIDInstance, PluginGamingPanelEnum.PZ69RadioPanel_PreProg_AV8BNA, (int)radioPanelKnob.RadioPanelPZ69Knob, radioPanelKnob.IsOn, null); } } AdjustFrequency(hashSet); } }