/********************************************************************** * @file FITKAbstractEasyParam.h * @brief 参数数据基类 * @author BaGuijun (baguijun@163.com) * @date 2024-09-09 *********************************************************************/ #ifndef _FITKABSTRACT_EASY_PARAM_H___ #define _FITKABSTRACT_EASY_PARAM_H___ #include "FITK_Kernel/FITKCore/FITKAbstractNDataObject.h" #include "FITKEasyParamAPI.h" namespace Core { /** * @brief 参数数据基类 * @author BaGuijun (baguijun@163.com) * @date 2024-09-09 */ class FITKEasyParamAPI FITKAbstractEasyParam : public FITKAbstractNDataObject { Q_OBJECT public: /** * @brief 数据类型 * @author BaGuijun (baguijun@163.com) * @date 2024-09-09 */ enum FITKEasyParamType { FEPNone, FEPBool, FEPBoolGroup, FEPCombox, FEPDouble, FEPDoubleList, FEPInt, FEPLabel, FEPRadioGroup, FEPString, }; Q_ENUM(FITKEasyParamType); public: /** * @brief 构造函数 * @author BaGuijun (baguijun@163.com) * @date 2024-09-09 */ explicit FITKAbstractEasyParam() = default; /** * @brief 析构函数 * @author BaGuijun (baguijun@163.com) * @date 2024-09-09 */ virtual ~FITKAbstractEasyParam() = 0; /** * @brief 获取数据类型 * @return FITKEasyParamType 数据类型 * @author BaGuijun (baguijun@163.com) * @date 2024-09-09 */ virtual FITKEasyParamType getParamType() = 0; /** * @brief 拷贝数据 * @param[i] data 被拷贝数据 * @author BaGuijun (baguijun@163.com) * @date 2024-09-09 */ virtual void copyParaData(FITKAbstractEasyParam* data); signals: ; /** * @brief 数据更改信号 * @author BaGuijun (baguijun@163.com) * @date 2024-09-09 */ void sigDataChange(); }; } #endif