using System.Collections.Generic; namespace RGB.NET.Core { /// /// /// /// Represents a generic . /// public abstract class AbstractLedGroup : AbstractDecoratable, ILedGroup { #region Properties & Fields public RGBSurface? Surface { get; private set; } /// public IBrush? Brush { get; set; } /// public int ZIndex { get; set; } = 0; #endregion #region Constructors /// /// Initializes a new instance of the class. /// protected AbstractLedGroup(RGBSurface? attachTo) { attachTo?.AttachLedGroup(this); } #endregion #region Methods /// public abstract IList GetLeds(); /// public virtual void OnAttach(RGBSurface surface) => Surface = surface; /// public virtual void OnDetach(RGBSurface surface) => Surface = null; #endregion } }