Files
XplorePlane/XP.Hardware.MotionControl/Abstractions/SafetyDoorBase.cs
T

33 lines
985 B
C#

using XP.Hardware.MotionControl.Abstractions.Enums;
namespace XP.Hardware.MotionControl.Abstractions
{
/// <summary>
/// 安全门抽象基类 | Safety Door Abstract Base Class
/// 提供门状态管理等通用逻辑 | Provides door status management
/// </summary>
public abstract class SafetyDoorBase : ISafetyDoor
{
/// <summary>门状态 | Door status</summary>
protected DoorStatus _status = DoorStatus.Unknown;
/// <summary>门状态 | Door status</summary>
public DoorStatus Status => _status;
/// <summary>联锁信号是否有效 | Interlock active</summary>
public abstract bool IsInterlocked { get; }
/// <inheritdoc/>
public abstract MotionResult Open();
/// <inheritdoc/>
public abstract MotionResult Close();
/// <inheritdoc/>
public abstract MotionResult Stop();
/// <inheritdoc/>
public abstract void UpdateStatus();
}
}