/// <summary> /// Clear all event handlers /// </summary> public void ClearEventHandlers() { if (DeviceConnectedEvent != null) { foreach (Delegate d in DeviceConnectedEvent?.GetInvocationList()) { DeviceConnectedEvent -= (EventHandler <DeviceEventArgs>)d; } } if (DeviceReadyEvent != null) { foreach (Delegate d in DeviceReadyEvent?.GetInvocationList()) { DeviceReadyEvent -= (EventHandler <DeviceEventArgs>)d; } } if (DeviceDisconnectedEvent != null) { foreach (Delegate d in DeviceDisconnectedEvent?.GetInvocationList()) { DeviceDisconnectedEvent -= (EventHandler <DeviceEventArgs>)d; } } if (MtuChangeEvent != null) { foreach (Delegate d in MtuChangeEvent?.GetInvocationList()) { MtuChangeEvent -= (EventHandler <DeviceMtuEventArgs>)d; } } if (ServicesDiscoveredEvent != null) { foreach (Delegate d in ServicesDiscoveredEvent?.GetInvocationList()) { ServicesDiscoveredEvent -= (EventHandler <EventArgs>)d; } } }
public List <IMessageHandler> CreateHandlers(HttpContext context, CloseFunction closeFunction, SenderFunction sendFunction) { string emulatorName = context.Request.Path.Value.Replace($"/ws/{DeviceType}/", ""); var emulator = emulatorService.FindEmulator <IDs4Emulator>(XOutput.Emulation.DeviceTypes.SonyDualShock4, emulatorName); var device = emulator.CreateDs4Device(); DeviceDisconnectedEvent disconnectedEvent = (sender, args) => closeFunction(); device.Closed += disconnectedEvent; var ip = context.Request.HttpContext.Connection.RemoteIpAddress?.ToString(); deviceInfoService.Add(new NetworkDeviceInfo { Device = device, IPAddress = ip, DeviceType = XOutput.Emulation.DeviceTypes.SonyDualShock4, Emulator = emulator.Name, }); return(new List <IMessageHandler> { new DebugMessageHandler(), new Ds4FeedbackMessageHandler(device, sendFunction.GetTyped <Ds4FeedbackMessage>()), new Ds4InputMessageHandler(device, disconnectedEvent), }); }
public void OnDeviceDisconnected(BluetoothDevice p0) { DeviceDisconnectedEvent?.Invoke(this, new DeviceEventArgs(p0)); }
/// <summary> /// Event handler for when the device is disconnected /// </summary> /// <param name="sender">Sender</param> /// <param name="e">Event arguments including a Bluetooth device</param> private void _skfBleManagerCallbacks_DeviceDisconnectedEvent(object sender, DeviceEventArgs e) { _currentDevice = null; DeviceDisconnectedEvent?.Invoke(this, new DeviceEventArgs(e.Device)); }
public XboxInputMessageHandler(XboxDevice device, DeviceDisconnectedEvent disconnectedEventHandler) { this.device = device; this.disconnectedEventHandler = disconnectedEventHandler; }
public void Accept(DeviceDisconnectedEvent evt) { this.OnDeviceDisconnected(evt.Data.Id, evt.Data.Error); }
public Ds4InputMessageHandler(Ds4Device device, DeviceDisconnectedEvent disconnectedEventHandler) { this.device = device; this.disconnectedEventHandler = disconnectedEventHandler; }