namespace ChromeboxFanControl; public sealed class FanSampleEventArgs : EventArgs { public DateTime Time { get; init; } public double? TempC { get; init; } /// Desired fan duty from curve or fail-safe; null when paused or not applicable. public byte? TargetDutyPercent { get; init; } /// Actual duty read from ectool when FanDutyArgs configured; else null. public int? ActualDutyPercent { get; init; } public int? Rpm { get; init; } public string? LastEctoolMessage { get; init; } public bool Paused { get; init; } public bool FailSafe { get; init; } }