using System; using RGB.NET.Core; namespace RGB.NET.Devices.Logitech { /// /// /// Represents a generic information for a Logitech-. /// public class LogitechRGBDeviceInfo : IRGBDeviceInfo { #region Properties & Fields /// public RGBDeviceType DeviceType { get; } /// public string Manufacturer => "Logitech"; /// public string Model { get; } /// public Uri Image { get; protected set; } /// public RGBDeviceLighting Lighting { get { if (DeviceCaps.HasFlag(LogitechDeviceCaps.PerKeyRGB)) return RGBDeviceLighting.Key; if (DeviceCaps.HasFlag(LogitechDeviceCaps.DeviceRGB)) return RGBDeviceLighting.Keyboard; return RGBDeviceLighting.None; } } /// /// Gets a flag that describes device capabilities. () /// public LogitechDeviceCaps DeviceCaps { get; } #endregion #region Constructors /// /// Internal constructor of managed . /// /// The type of the . /// The represented device model. /// The lighting-capabilities of the device. internal LogitechRGBDeviceInfo(RGBDeviceType deviceType, string model, LogitechDeviceCaps deviceCaps) { this.DeviceType = deviceType; this.Model = model; this.DeviceCaps = deviceCaps; } #endregion } }