Files
ParkingRobot/ClumsyPilot/ParkrobTrajplanner/EMPlanner/Contracts/EmPlanningStatus.cs
T

97 lines
3.1 KiB
C#

namespace MultiWheelC.TrajectoryPlanning.EMPlanner;
/// <summary>
/// 表示 EM 规划请求的最终处理状态;仅两个成功状态允许发布轨迹,其余状态要求消费者保留现有安全策略并读取诊断。
/// </summary>
public enum EmPlanningStatus
{
/// <summary>
/// 所有规划和验证阶段成功,结果可按其生效时间发布。
/// </summary>
Success,
/// <summary>
/// 已发布经过验证的降级或回退轨迹;消费者仍可使用轨迹,并应记录诊断原因。
/// </summary>
SuccessWithFallback,
/// <summary>
/// 请求对象或其成员未满足服务输入要求。
/// </summary>
InvalidInput,
/// <summary>
/// 请求的车辆运动模型未被当前 EM 管线支持。
/// </summary>
UnsupportedMotionMode,
/// <summary>
/// 车辆状态采集时刻相对于请求时刻过旧。
/// </summary>
StaleVehicleState,
/// <summary>
/// 车辆状态的行驶方向与选定参考路径方向段不一致。
/// </summary>
StateDirectionMismatch,
/// <summary>
/// 参考路径结果、方向段或其状态不能用于规划。
/// </summary>
InvalidReferencePath,
/// <summary>
/// 无法将车辆状态投影到选定参考路径或方向段。
/// </summary>
ProjectionFailed,
/// <summary>
/// 地图和车辆约束下未能构造可行的行驶走廊。
/// </summary>
CorridorInfeasible,
/// <summary>
/// 横向优化未得到满足约束的候选解。
/// </summary>
LateralInfeasible,
/// <summary>
/// 纵向优化未得到满足时空与动力学约束的候选解。
/// </summary>
LongitudinalInfeasible,
/// <summary>
/// 当前速度、距离或限制不足以在所需边界前完成停车。
/// </summary>
StoppingDistanceInsufficient,
/// <summary>
/// 所需二次规划求解器不可用。
/// </summary>
SolverUnavailable,
/// <summary>
/// 求解在共享时间预算或迭代限制内未完成。
/// </summary>
SolverTimedOut,
/// <summary>
/// 调用方在可发布结果生成前取消了请求。
/// </summary>
Cancelled,
/// <summary>
/// 候选轨迹未通过最终世界空间、动力学或终端语义验证。
/// </summary>
ValidationFailed,
/// <summary>
/// 请求在处理期间被更新版本的规划工作替代。
/// </summary>
Superseded,
/// <summary>
/// 候选轨迹相对于当前状态未形成足够的有效进展。
/// </summary>
NoProgress,
/// <summary>
/// 轨迹末端位姿未满足要求的真实终端位姿。
/// </summary>
TerminalPoseMismatch,
/// <summary>
/// 完整方向段规划超过配置的时间、采样或求解资源上限。
/// </summary>
FullSegmentResourceLimitExceeded,
/// <summary>
/// 未被其他状态细分的规划失败。
/// </summary>
Failed,
/// <summary>
/// The outer planning cycle exhausted its shared bootstrap-to-publication deadline.
/// </summary>
CycleDeadlineExpired,
}