void OnDeviceRemoved(IOReturn result, IOHIDDevice device) { if (DeviceRemoved != null) { DeviceRemoved(this, new IOHIDDeviceEventArgs(result, device)); } }
void OnMatchingDeviceFound(IOReturn result, IOHIDDevice device) { if (MatchingDeviceFound != null) { MatchingDeviceFound(this, new IOHIDDeviceEventArgs(result, device)); } }
public IOHIDDevice[] GetDevices() { ThrowIfDisposed(); var setRef = IOHIDManagerCopyDevices(Handle); if (setRef == IntPtr.Zero) { return(new IOHIDDevice[0]); } using (var deviceSet = new CFSet(setRef, true)) { var devices = new IOHIDDevice[deviceSet.Count]; int i = 0; foreach (var devicePtr in deviceSet.Values) { devices [i++] = new IOHIDDevice(devicePtr, true); } return(devices); } }
public IOHIDDeviceEventArgs(IOReturn result, IOHIDDevice device) : base(result) { Device = device; }