using System.ComponentModel; using System.Runtime.CompilerServices; namespace ErvDashboard.Model { // 히스테리시스 한 프리셋(ECO/NORMAL/TURBO)의 임계값 — 편집 가능 public class HystRow : INotifyPropertyChanged { public string Name { get; } public int Preset { get; } // 0 ECO / 1 NORMAL / 2 TURBO (CTRL_HYST_VALUE) public HystRow(string name, int preset) { Name = name; Preset = preset; } int _pm25, _pm10, _voc, _co2; public int Pm25 { get => _pm25; set { if (_pm25 != value) { _pm25 = value; OnChanged(); } } } public int Pm10 { get => _pm10; set { if (_pm10 != value) { _pm10 = value; OnChanged(); } } } public int Voc { get => _voc; set { if (_voc != value) { _voc = value; OnChanged(); } } } public int Co2 { get => _co2; set { if (_co2 != value) { _co2 = value; OnChanged(); } } } public event PropertyChangedEventHandler? PropertyChanged; void OnChanged([CallerMemberName] string? n = null) => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(n)); } }