using System;
namespace SHH.ProcessLaunchers
{
///
/// 进程信息快照 (用于 UI 数据绑定)
///
public class ProcessInfoSnapshot
{
/// 唯一标识 (例如: "Streamer_01")
public string Id { get; set; } = string.Empty;
//
/// 通用名称/类别 (例如: "视频取流服务")
/// 用于 UI 分组或显示图标
public string DisplayName { get; set; } = string.Empty;
/// 详细描述 (例如: "西门 1 号机位")
public string Description { get; set; } = string.Empty;
/// 操作系统进程 ID (运行中才有)
public int? Pid { get; set; }
/// 当前生命周期状态
public ProcessStatus Status { get; set; }
/// 最近一次启动时间
public DateTime? LastStartTime { get; set; }
/// 最近一次退出时间
public DateTime? LastExitTime { get; set; }
/// 当前连续失败次数 (用于熔断判定)
public int ConsecutiveFailures { get; set; }
/// 预计下次尝试启动的时间 (用于 UI 显示倒计时)
public DateTime? NextRetryTime { get; set; }
/// 附加状态信息 (如熔断倒计时文本)
public string Message { get; set; } = string.Empty;
}
}