// ============================================================================
// Copyright © 2026 Hexagon Technology Center GmbH. All Rights Reserved.
// 文件å? ProcessorParameter.cs
// æè¿°: 图åƒå¤„ç†ç®—å傿•°å®šä¹‰ç±»ï¼Œç”¨äºŽæè¿°ç®—åçš„å¯é…ç½®å‚æ•°
// 功能:
// - å®šä¹‰å‚æ•°çš„基本属性(åç§°ã€ç±»åž‹ã€é»˜è®¤å€¼ï¼‰
// - 支æŒå‚数范围约æŸï¼ˆæœ€å°å€¼ã€æœ€å¤§å€¼ï¼‰
// - æ”¯æŒæžšä¸¾ç±»åž‹å‚数(下拉选项ï¼?
// - æä¾›å‚æ•°æè¿°ä¿¡æ¯ç”¨äºŽUI显示
// - ç»Ÿä¸€çš„å‚æ•°ç®¡ç†æœºåˆ?
// 作è€? æŽä¼Ÿ wei.lw.li@hexagon.com
// ============================================================================
namespace XP.ImageProcessing.Core;
///
/// 图åƒå¤„ç†ç®—å傿•°å®šä¹‰
///
public class ProcessorParameter
{
/// 傿•°å称(代ç ä¸ä½¿ç”¨ï¼?/summary>
public string Name { get; set; }
/// 显示å称(UI䏿˜¾ç¤ºï¼‰
public string DisplayName { get; set; }
/// 傿•°ç±»åž‹
public Type ValueType { get; set; }
/// 当å‰å€?/summary>
public object Value { get; set; }
/// 最å°å€¼ï¼ˆå¯é€‰ï¼‰
public object? MinValue { get; set; }
/// 最大值(å¯é€‰ï¼‰
public object? MaxValue { get; set; }
/// 傿•°æè¿°
public string Description { get; set; }
/// å¯é€‰å€¼åˆ—表(用于下拉框)
public string[]? Options { get; set; }
/// 傿•°æ˜¯å¦å¯è§
public bool IsVisible { get; set; } = true;
public ProcessorParameter(string name, string displayName, Type valueType, object defaultValue,
object? minValue = null, object? maxValue = null, string description = "", string[]? options = null)
{
Name = name;
DisplayName = displayName;
ValueType = valueType;
Value = defaultValue;
MinValue = minValue;
MaxValue = maxValue;
Description = description;
Options = options;
}
}