using System.Collections.Generic; using RGB.NET.Core; namespace RGB.NET.Layout; /// /// Represents a generic layout of a device. /// public interface IDeviceLayout { /// /// Gets or sets the name of the . /// string? Name { get; } /// /// Gets or sets the description of the . /// string? Description { get; } /// /// Gets or sets the author of the . /// string? Author { get; } /// /// Gets or sets the of the . /// RGBDeviceType Type { get; } /// /// Gets or sets the vendor of the . /// string? Vendor { get; } /// /// Gets or sets the model of the . /// string? Model { get; } /// /// Gets or sets the of the . /// Shape Shape { get; } /// /// Gets or sets the width of the . /// float Width { get; } /// /// Gets or sets the height of the . /// float Height { get; } /// /// Gets or sets the width of one 'unit' used for the calculation of led positions and sizes. /// float LedUnitWidth { get; set; } /// /// Gets or sets the height of one 'unit' used for the calculation of led positions and sizes. /// float LedUnitHeight { get; set; } /// /// Gets or sets a list of representing all the of the . /// IEnumerable Leds { get; } /// /// Gets the untyped custom data of this layout. /// object? UntypedCustomData { get; } }