将Feature/XP.Common和Feature/XP.Hardware分支合并至Develop/XP.forHardwareAndCommon,完善XPapp注册和相关硬件类库通用类库功能。

This commit is contained in:
QI Mingxuan
2026-04-16 17:31:13 +08:00
parent 6ec4c3ddaa
commit 2bd6e566c3
581 changed files with 74600 additions and 222 deletions
@@ -0,0 +1,12 @@
using Prism.Events;
namespace XP.Hardware.RaySource.Abstractions.Events
{
/// <summary>
/// 错误触发事件 | Error Occurred Event
/// 携带错误信息字符串 | Carries error message string
/// </summary>
public class ErrorOccurredEvent : PubSubEvent<string>
{
}
}
@@ -0,0 +1,41 @@
using Prism.Events;
namespace XP.Hardware.RaySource.Abstractions.Events
{
/// <summary>
/// 操作结果数据模型 | Operation Result Data Model
/// 携带操作名称和成功状态 | Carries operation name and success status
/// </summary>
public class OperationResultData
{
/// <summary>
/// 操作名称 | Operation name
/// </summary>
public string OperationName { get; set; }
/// <summary>
/// 操作是否成功 | Operation success status
/// </summary>
public bool IsSuccess { get; set; }
/// <summary>
/// 附加消息 | Additional message
/// </summary>
public string Message { get; set; }
public OperationResultData(string operationName, bool isSuccess, string message = null)
{
OperationName = operationName;
IsSuccess = isSuccess;
Message = message;
}
}
/// <summary>
/// 操作结果事件 | Operation Result Event
/// 用于通知操作执行结果 | Used to notify operation execution result
/// </summary>
public class OperationResultEvent : PubSubEvent<OperationResultData>
{
}
}
@@ -0,0 +1,13 @@
using Prism.Events;
using XP.Hardware.RaySource.Abstractions.Enums;
namespace XP.Hardware.RaySource.Abstractions.Events
{
/// <summary>
/// 射线源状态变更事件 | X-Ray Source Status Changed Event
/// 携带 RaySourceStatus 枚举值,表示三态状态变更 | Carries RaySourceStatus enum for tri-state status changes
/// </summary>
public class RaySourceStatusChangedEvent : PubSubEvent<RaySourceStatus>
{
}
}
@@ -0,0 +1,95 @@
using Prism.Events;
using System;
namespace XP.Hardware.RaySource.Abstractions.Events
{
/// <summary>
/// 系统状态数据模型 | System Status Data Model
/// 携带全量系统状态信息 | Carries complete system status information
/// </summary>
public class SystemStatusData
{
/// <summary>
/// 设定电压值(kV| Set voltage value (kV)
/// </summary>
public float SetVoltage { get; set; }
/// <summary>
/// 实际电压值(kV| Actual voltage value (kV)
/// </summary>
public float ActualVoltage { get; set; }
/// <summary>
/// 设定电流值(μA| Set current value (μA)
/// </summary>
public float SetCurrent { get; set; }
/// <summary>
/// 实际电流值(μA| Actual current value (μA)
/// </summary>
public float ActualCurrent { get; set; }
/// <summary>
/// 射线开启状态 | X-ray on status
/// </summary>
public bool IsXRayOn { get; set; }
/// <summary>
/// 暖机状态描述 | Warm-up status description
/// </summary>
public string WarmUpStatus { get; set; }
/// <summary>
/// 真空状态描述 | Vacuum status description
/// </summary>
public string VacuumStatus { get; set; }
/// <summary>
/// 启动状态描述 | Startup status description
/// </summary>
public string StartUpStatus { get; set; }
/// <summary>
/// 自动定心状态描述 | Auto-center status description
/// </summary>
public string AutoCenterStatus { get; set; }
/// <summary>
/// 灯丝调整状态描述 | Filament adjust status description
/// </summary>
public string FilamentAdjustStatus { get; set; }
/// <summary>
/// 连锁状态 | Interlock status
/// </summary>
public bool IsInterlockActive { get; set; }
/// <summary>
/// 看门狗状态 | Watchdog status
/// </summary>
public string WatchdogStatus { get; set; }
/// <summary>
/// 功率模式 | Power mode
/// </summary>
public string PowerMode { get; set; }
/// <summary>
/// TXI状态 | TXI status
/// </summary>
public string TxiStatus { get; set; }
/// <summary>
/// 时间戳 | Timestamp
/// </summary>
public DateTime Timestamp { get; set; } = DateTime.Now;
}
/// <summary>
/// 状态更新事件 | Status Updated Event
/// 用于通知UI层系统状态变化 | Used to notify UI layer of system status changes
/// </summary>
public class StatusUpdatedEvent : PubSubEvent<SystemStatusData>
{
}
}
@@ -0,0 +1,12 @@
using Prism.Events;
namespace XP.Hardware.RaySource.Abstractions.Events
{
/// <summary>
/// PVI 变量连接状态变更事件 | PVI variables connection state changed event
/// Payload: true = 已连接, false = 已断开 | true = connected, false = disconnected
/// </summary>
public class VariablesConnectedEvent : PubSubEvent<bool>
{
}
}