using System.ComponentModel.DataAnnotations; namespace SHH.CameraSdk; // ============================================================================== // 2. 订阅策略 DTO (对应 A/B/C/D 进程需求) // 用于多进程帧需求的注册与更新,支持显示帧和分析帧的独立配置 // ============================================================================== public class SubscriptionDto { /// /// 进程唯一标识 (如 "AI_Process_01"、"Main_Display_02") /// [Required(ErrorMessage = "进程标识 AppId 不能为空")] [MaxLength(50, ErrorMessage = "AppId 长度不能超过 50 个字符")] public string AppId { get; set; } = string.Empty; /// /// 显示帧率需求 (单位: fps) /// 不需要显示则设为 0,控制器会自动注销该类型需求 /// [Range(0, 60, ErrorMessage = "显示帧率需在 0-60 fps 范围内")] public int DisplayFps { get; set; } /// /// 分析帧率需求 (单位: fps) /// 不需要分析则设为 0,控制器会自动注销该类型需求 /// [Range(0, 30, ErrorMessage = "分析帧率需在 0-30 fps 范围内")] public int AnalysisFps { get; set; } }