mirror of
https://github.com/DarthAffe/RGB.NET.git
synced 2025-12-12 17:48:31 +00:00
34 lines
947 B
C#
34 lines
947 B
C#
// ReSharper disable UnusedMember.Global
|
|
|
|
namespace RGB.NET.Core.Effects
|
|
{
|
|
/// <summary>
|
|
/// Represents a basic effect-target.
|
|
/// </summary>
|
|
/// <typeparam name="T">The type this target represents.</typeparam>
|
|
public interface IEffectTarget<out T>
|
|
where T : IEffectTarget<T>
|
|
{
|
|
#region Methods
|
|
|
|
/// <summary>
|
|
/// Updates all <see cref="IEffect{T}"/> added to this target.
|
|
/// </summary>
|
|
void UpdateEffects();
|
|
|
|
/// <summary>
|
|
/// Adds an <see cref="IEffect{T}"/>.
|
|
/// </summary>
|
|
/// <param name="effect">The <see cref="IEffect{T}"/> to add.</param>
|
|
void AddEffect(IEffect<T> effect);
|
|
|
|
/// <summary>
|
|
/// Removes an <see cref="IEffect{T}"/>.
|
|
/// </summary>
|
|
/// <param name="effect">The <see cref="IEffect{T}"/> to remove.</param>
|
|
void RemoveEffect(IEffect<T> effect);
|
|
|
|
#endregion
|
|
}
|
|
}
|