public static DCSBIOSOutput GetDCSBIOSOutput(string controlId)
 {
     lock (LockObject)
     {
         if (Common.IsOperationModeFlagSet(OperationFlag.KeyboardEmulationOnly))
         {
             throw new Exception("DCSBIOSControlLocator.GetDCSBIOSOutput() Should not be called when only key emulator is active");
         }
         try
         {
             var control       = GetControl(controlId);
             var dcsBIOSOutput = new DCSBIOSOutput();
             dcsBIOSOutput.Consume(control);
             return(dcsBIOSOutput);
         }
         catch (InvalidOperationException ioe)
         {
             throw new Exception("Check DCS-BIOS version. Failed to create DCSBIOSOutput based on control " + controlId + " for airframe " + Airframe.GetDescription() + " ( " + Airframe.GetDescription() + ".json)." + Environment.NewLine + ioe.Message);
         }
     }
 }
 public static DCSBIOSOutput GetDCSBIOSOutput(string controlId)
 {
     lock (_lockObject)
     {
         if (_airframe == DCSAirframe.NONE)
         {
             return(null);
         }
         try
         {
             var control       = GetControl(controlId);
             var dcsBIOSOutput = new DCSBIOSOutput();
             dcsBIOSOutput.Consume(control);
             return(dcsBIOSOutput);
         }
         catch (InvalidOperationException ioe)
         {
             throw new Exception("Failed to create DCSBIOSOutput based on control " + controlId + " for airframe " + Airframe.GetDescription() + "." + Environment.NewLine + ioe.Message);
         }
     }
 }