using System; using System.Collections.Generic; namespace RGB.NET.Core; public sealed class DevicesChangedEventArgs : EventArgs { #region Properties & Fields public IList Added { get; } public IList Removed { get; } #endregion #region Constructors private DevicesChangedEventArgs(IList added, IList removed) { this.Added = added; this.Removed = removed; } #endregion #region Methods public static DevicesChangedEventArgs CreateDevicesAddedArgs(params IRGBDevice[] addedDevices) => CreateDevicesAddedArgs((IEnumerable)addedDevices); public static DevicesChangedEventArgs CreateDevicesAddedArgs(IEnumerable addedDevices) => new(new List(addedDevices), new List()); public static DevicesChangedEventArgs CreateDevicesRemovedArgs(params IRGBDevice[] removedDevices) => CreateDevicesRemovedArgs((IEnumerable)removedDevices); public static DevicesChangedEventArgs CreateDevicesRemovedArgs(IEnumerable removedDevices) => new(new List(), new List(removedDevices)); #endregion }