EonaCat.HID/EonaCat.HID/IHidManager.cs

30 lines
1012 B
C#

using EonaCat.HID.EventArguments;
using System;
using System.Collections.Generic;
namespace EonaCat.HID
{
// This file is part of the EonaCat project(s) which is released under the Apache License.
// See the LICENSE file or go to https://EonaCat.com/license for full license details.
/// <summary>
/// Interface for manager to enumerate devices and monitor connect/disconnect
/// </summary>
public interface IHidManager
{
/// <summary>
/// Enumerate all connected HID devices matching optional VendorId/ProductId filters
/// </summary>
IEnumerable<IHid> Enumerate(ushort? vendorId = null, ushort? productId = null);
/// <summary>
/// Event is raised when a HID device is inserted
/// </summary>
event EventHandler<HidEventArgs> OnDeviceInserted;
/// <summary>
/// Event is raised when a HID device is removed
/// </summary>
event EventHandler<HidEventArgs> OnDeviceRemoved;
}
}