using System;
using System.Collections.ObjectModel;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using Prism.Commands;
using Prism.Mvvm;
using TeamAAS.Feeder.Enums;
using TeamAAS.Feeder.Interfaces;
using TeamAAS.Feeder.Models;
namespace TeamAAS.Feeder.UI
{
///
/// 通用(Team 品牌)供料器调试页的视图模型:从宿主 SettingViewModel 下沉而来(Phase 2 迁移)。
/// 绑定一个 设备实例 + 其 配置,直接调用设备 API。
/// IFeederManager 经 TeamAAS.Global.ServiceRegistry 拉取(避免 Feeder 库反向依赖 TeamAAS.Core)。
/// 方向/振动集/序列集/料斗IO/输入触发/系统参数/背光 全部在此,与硬件库调试页范式一致。
///
public class FeederDebugViewModel : BindableBase
{
private const string LogSource = "Feeder";
private IFeeder _feeder;
private FeederInfo _info;
private IFeederManager _manager;
private CancellationTokenSource _sequenceCts;
public FeederDebugViewModel()
{
FeederDirectionCommand = new DelegateCommand