namespace TeleWave.Domain.Programming;

/// <summary>
/// Чем меряется блок, который слот берёт за один выход. Свойство слота, ортогональное стратегии:
/// любую стратегию можно скомбинировать с «одна единица», «четыре подряд» или «пока не наберётся
/// два часа». Марафон — это <see cref="FillSlot"/>, отдельной стратегии не нужно.
/// </summary>
public enum SlotBlockMode
{
    /// <summary>Ровно N единиц воспроизведения.</summary>
    Count = 0,

    /// <summary>Единицы, пока сумма не превысит M минут (последняя входит целиком).</summary>
    Duration = 1,

    /// <summary>Пока не исчерпан бюджет слота.</summary>
    FillSlot = 2,
}
