5a96a696b1
- 펌웨어(program), C# 대시보드(TestProgram), 시뮬레이터(Simulator), 프로토콜/문서(Protocol, doc) 전체를 단일 저장소로 통합 - program 폴더의 별도 git 저장소를 제거하고 통합 저장소에 흡수 - 빌드 산출물(program/build, bin/obj, *.o/.elf/.bin/.hex 등) .gitignore 처리 - 사내 Synology NAS Git 원격 연결 예정 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
25 lines
1.1 KiB
C#
25 lines
1.1 KiB
C#
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));
|
|
}
|
|
}
|