public HidDeviceFactory(IButtplugLogManager aLogManager, IHidDeviceInfo aInfo) { _buttplugLogManager = aLogManager; _bpLogger = _buttplugLogManager.GetLogger(GetType()); _bpLogger.Trace($"Creating {GetType().Name}"); _deviceInfo = aInfo; }
protected BaseHidDevice(IHidDeviceInfo deviceInfo, INativeHelper helper) { DeviceInfo = deviceInfo ?? throw new ArgumentNullException($"{nameof(deviceInfo)} is null"); Helper = helper ?? throw new ArgumentNullException($"{nameof(helper)} is null"); DisposeToken = DisposeTokenSource.Token; ReadHandle = new SafeFileHandle(IntPtr.Zero, true); WriteHandle = new SafeFileHandle(IntPtr.Zero, true); }
protected HidButtplugDevice(IButtplugLogManager aLogManager, IHidDevice aHid, IHidDeviceInfo aDeviceInfo) : base(aLogManager, aDeviceInfo.Name, aHid.DevicePath) { LogManager = aLogManager; _hid = aHid; DeviceInfo = aDeviceInfo; _tokenSource = new CancellationTokenSource(); _hid.Inserted += DeviceAttachedHandler; _hid.Removed += DeviceRemovedHandler; }
public static IHidDevice GetDevice(this IHidDeviceInfo deviceInfo) { return(new HidDevice(deviceInfo)); }
/// <summary> /// Predicate which queries p_IHidDeviceInfo.VendorID and /// p_IHidDeviceInfo.ProductID and returns true if a SpaceTraveler /// device is connected. /// </summary> /// <param name="p_IHidDeviceInfo"></param> /// <returns>boolean</returns> private bool IsSpaceTraveler(IHidDeviceInfo p_IHidDeviceInfo) { return (p_IHidDeviceInfo.VendorID == c_LogitechVendorID) && (p_IHidDeviceInfo.ProductID == c_SpaceTravelerProductID); }
///////////////////// // Private methods // ///////////////////// /// <summary> /// Predicate which queries p_IHidDeviceInfo.VendorID and /// p_IHidDeviceInfo.ProductID and returns true if an Aerion /// device is connected. /// </summary> /// <param name="p_IHidDeviceInfo"></param> /// <returns>boolean</returns> private bool IsAerion(IHidDeviceInfo p_IHidDeviceInfo) { return (p_IHidDeviceInfo.VendorID == c_AerionVendorID) && (p_IHidDeviceInfo.ProductID == c_AerionProductID); }
/// <summary> /// Predicate which queries p_IHidDeviceInfo.VendorID and /// p_IHidDeviceInfo.ProductID and returns true if a SpacePilot /// device is connected. /// </summary> /// <param name="p_IHidDeviceInfo"></param> /// <returns>boolean</returns> private bool IsSpacePilot(IHidDeviceInfo p_IHidDeviceInfo) { return((p_IHidDeviceInfo.VendorID == c_LogitechVendorID) && (p_IHidDeviceInfo.ProductID == c_SpacePilotProductID)); }
/// <summary> /// Predicate which queries p_IHidDeviceInfo.VendorID and /// p_IHidDeviceInfo.ProductID and returns true if a SpaceNavigator /// device is connected. /// </summary> /// <param name="p_IHidDeviceInfo"></param> /// <returns>boolean</returns> private bool IsSpaceNavigator(IHidDeviceInfo p_IHidDeviceInfo) { return((p_IHidDeviceInfo.VendorID == c_LogitechVendorID) && (p_IHidDeviceInfo.ProductID == c_SpaceNavigatorProductID)); }
///////////////////// // Private methods // ///////////////////// /// <summary> /// Predicate which queries p_IHidDeviceInfo.VendorID and /// p_IHidDeviceInfo.ProductID and returns true if an Aerion /// device is connected. /// </summary> /// <param name="p_IHidDeviceInfo"></param> /// <returns>boolean</returns> private bool IsAerion(IHidDeviceInfo p_IHidDeviceInfo) { return((p_IHidDeviceInfo.VendorID == c_AerionVendorID) && (p_IHidDeviceInfo.ProductID == c_AerionProductID)); }
public HidDevice(IHidDeviceInfo deviceInfo) : base(deviceInfo, new NativeHelper()) { }