// ReSharper disable UnusedMemberInSuper.Global // ReSharper disable UnusedMember.Global using System.Collections.Generic; namespace RGB.NET.Core; /// /// Represents a generic ledgroup. /// public interface ILedGroup : IDecoratable, IEnumerable { /// /// Gets the surface this group is attached to or null if it is not attached to any surface. /// RGBSurface? Surface { get; internal set; } /// /// Gets a bool indicating if the group is attached to a surface. /// bool IsAttached => Surface != null; /// /// Gets or sets the which should be drawn over this . /// IBrush? Brush { get; set; } /// /// Gets or sets the z-index of this to allow ordering them before drawing. (lowest first) (default: 0) /// int ZIndex { get; set; } /// /// Called when the is attached to the . /// void OnAttach(); /// /// Called when the is detached from the . /// void OnDetach(); /// /// Returns a list containing all in this group. /// /// A list containing all in this group. IList ToList(); }