示例#1
0
 private void SendGenericCommand(TOGGLE_EVENT sendingEvent, uint dwData = 0)
 {
     try
     {
         simconnect?.TransmitClientEvent(SimConnect.SIMCONNECT_OBJECT_ID_USER, sendingEvent, dwData, GROUPID.MAX, SIMCONNECT_EVENT_FLAG.GROUPID_IS_PRIORITY);
     }
     catch (COMException ex) when(ex.Message == "0xC00000B0")
     {
         RecoverFromError(ex);
     }
 }
示例#2
0
        public void RegisterToggleEvent(TOGGLE_EVENT toggleAction)
        {
            if (simconnect == null)
            {
                return;
            }

            if (genericEvents.Contains(toggleAction))
            {
                return;
            }

            genericEvents.Add(toggleAction);
            logger.LogInformation("RegisterEvent {action} {simConnectAction}", toggleAction, toggleAction.EventToSimConnectEvent());
            simconnect.MapClientEventToSimEvent(toggleAction, toggleAction.EventToSimConnectEvent());
        }
示例#3
0
 public void Trigger(TOGGLE_EVENT toggleAction, uint data = 0)
 {
     logger.LogInformation("Toggle {action} {data}", toggleAction, data);
     SendGenericCommand(toggleAction, data);
 }
 public void Toggle(TOGGLE_EVENT toggleAction)
 {
     logger.LogInformation("Toggle {1}", toggleAction);
     SendGenericCommand(toggleAction);
 }
 public static string EventToSimConnectEvent(this TOGGLE_EVENT input)
 {
     return(input.ToString().Replace("MOBIFLIGHT_", "MobiFlight."));
 }