| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- namespace IvfTl.AutoFocus.Layout
- {
- /// <summary>
- /// 两级原始配置值(可空),喂给 <see cref="PhotoLayerCalculator.Resolve"/> 做就近优先解析(§2.5)。
- /// 调用方(M2-03/M2-04/M2-07)从 DB 读 house_well_setting / tl_setting 填好后传入,取数与解析解耦。
- ///
- /// 字段对齐 sql/migrations/2026-06-17-autofocus-data-layer.sql:
- /// well 级(house_well_setting):focus_layer_spacing_pulse / focus_layer_count / move_down_layer(复用)
- /// 设备级(tl_setting):focus_layer_spacing_pulse / focus_layer_count / focus_layer_down
- ///
- /// ⚠ EEPROM 值不在此入参中(§2.5:EEPROM 仅参考,不进解析链),故天然不会被纳入解析。
- /// </summary>
- public sealed class FocusLayerRawConfig
- {
- // ---- well 级覆盖(house_well_setting,可空;空=继承设备级)----
- /// <summary>house_well_setting.focus_layer_spacing_pulse(well 级层间距覆盖)。</summary>
- public int? WellSpacingPulse { get; init; }
- /// <summary>house_well_setting.focus_layer_count(well 级层数覆盖)。</summary>
- public int? WellLayerCount { get; init; }
- /// <summary>house_well_setting.move_down_layer(well 级下移层数覆盖,复用既有列)。</summary>
- public int? WellMoveDownLayer { get; init; }
- // ---- 设备级(tl_setting)----
- /// <summary>tl_setting.focus_layer_spacing_pulse(工艺值,无 SQL 默认;缺失须报错)。</summary>
- public int? DeviceSpacingPulse { get; init; }
- /// <summary>tl_setting.focus_layer_count(SQL DEFAULT 5)。</summary>
- public int? DeviceLayerCount { get; init; }
- /// <summary>tl_setting.focus_layer_down(SQL DEFAULT 2)。</summary>
- public int? DeviceLayerDown { get; init; }
- // ---- 报错信息用(不参与计算)----
- /// <summary>设备 tl_sn,用于缺配置异常消息。</summary>
- public string TlSn { get; init; }
- /// <summary>仓室编号,用于异常定位。</summary>
- public int HouseSn { get; init; }
- /// <summary>well 编号,用于异常定位。</summary>
- public int WellSn { get; init; }
- }
- }
|