using System.ComponentModel;

namespace SHH.CameraSdk;

/// <summary>
/// 图像缩放/变换类型枚举
/// 用于控制帧数据的尺寸调整策略，适配不同的显示/分析场景
/// </summary>
public enum FrameScaleType
{
    /// <summary> 无变化（保持原始尺寸）</summary>
    /// <remarks>适用于高精度分析、原始帧存储等场景，无性能损耗</remarks>
    [Description("原始尺寸")]
    None = 0,

    /// <summary> 缩小 (Downscale) - 通常用于降低带宽或 UI 预览 </summary>
    /// <remarks>适用于监控大屏、低性能设备预览，可降低 CPU/内存占用</remarks>
    [Description("图像缩小")]
    Shrink = 1,

    /// <summary> 放大 (Upscale) - 通常用于增强显示效果 </summary>
    /// <remarks>适用于细节观测场景，会增加一定的性能开销，建议配合硬件加速</remarks>
    [Description("图像放大")]
    Expand = 2
}