mirror of
https://github.com/DarthAffe/RGB.NET.git
synced 2025-12-13 01:58:30 +00:00
46 lines
1.2 KiB
C#
46 lines
1.2 KiB
C#
// ReSharper disable EventNeverSubscribedTo.Global
|
|
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Collections.ObjectModel;
|
|
|
|
namespace RGB.NET.Core
|
|
{
|
|
/// <summary>
|
|
/// Represents a generic device provider.
|
|
/// </summary>
|
|
public interface IRGBDeviceProvider : IDisposable
|
|
{
|
|
#region Properties & Fields
|
|
|
|
/// <summary>
|
|
/// Indicates if the used SDK is initialized and ready to use.
|
|
/// </summary>
|
|
bool IsInitialized { get; }
|
|
|
|
/// <summary>
|
|
/// Gets a list of <see cref="IRGBDevice"/> loaded by this <see cref="IRGBDeviceProvider"/>.
|
|
/// </summary>
|
|
IEnumerable<IRGBDevice> Devices { get; }
|
|
|
|
ReadOnlyCollection<(int id, IDeviceUpdateTrigger trigger)> UpdateTriggers { get; }
|
|
|
|
#endregion
|
|
|
|
#region Events
|
|
|
|
/// <summary>
|
|
/// Occurs when an exception is thrown in the device provider
|
|
/// </summary>
|
|
event EventHandler<ExceptionEventArgs>? Exception;
|
|
|
|
#endregion
|
|
|
|
#region Methods
|
|
|
|
bool Initialize(RGBDeviceType loadFilter = RGBDeviceType.All, bool throwExceptions = false);
|
|
|
|
#endregion
|
|
}
|
|
}
|