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 DeviceName { get; } /// public string Manufacturer => "Logitech"; /// public string Model { get; } /// public object? LayoutMetadata { get; set; } /// /// Gets a flag that describes device capabilities. () /// public LogitechDeviceCaps DeviceCaps { get; } /// /// Gets the zone at which LEDs start being mapped /// public int ZoneOffset { get; } /// /// Gets the amount of zones the is able to control (0 for single-color and per-key devices) /// public int Zones { get; } #endregion #region Constructors /// /// Internal constructor of managed . /// /// The type of the . /// The represented device model. /// The lighting-capabilities of the device. /// The zone at which to start mapping LEDs. /// The amount of zones the device is able to control. internal LogitechRGBDeviceInfo(RGBDeviceType deviceType, string model, LogitechDeviceCaps deviceCaps, int zoneOffset, int zones) { this.DeviceType = deviceType; this.Model = model; this.DeviceCaps = deviceCaps; this.ZoneOffset = zoneOffset; this.Zones = zones; DeviceName = DeviceHelper.CreateDeviceName(Manufacturer, Model); } #endregion } }