logplus/ModuleConsole/include/ParameterLimits.h
2026-01-16 17:18:41 +08:00

71 lines
1.6 KiB
C++

/**
* @file ParameterLimits.h
* @brief 一些针对参数项的值的极限值的辅助函数
* @date: 2012-2-24
* @author: sinopec
*/
#ifndef PAI_FRAME_WORKFLOWVIEW_PARAMETERLIMITS_H
#define PAI_FRAME_WORKFLOWVIEW_PARAMETERLIMITS_H
#include <limits>
#include <float.h>
#include <iostream>
#include <ParameterItem.h>
/**
* @brief 根据参数项的类型返回该类型对应最小值的文本格式
* @param pt 参数项的类型
* @return pt类型对应最小值的文本格式
*/
std::string GetMinValue(pai::module::ParameterType pt)
{
std::stringstream ss;
switch(pt)
{
case pai::module::ParmType_INT:
ss << INT_MIN;
break;
case pai::module::ParmType_LONG:
ss << LONG_MIN;
break;
case pai::module::ParmType_FLOAT:
ss << FLT_MIN;
break;
case pai::module::ParmType_DOUBLE:
ss << DBL_MIN;
break;
default:
break;
}
return ss.str();
}
/**
* @brief 根据参数项的类型返回该类型对应最大值的文本格式
* @param pt 参数项的类型
* @return pt类型对应最大值的文本格式
*/
std::string GetMaxValue(pai::module::ParameterType pt)
{
std::stringstream ss;
switch(pt)
{
case pai::module::ParmType_INT:
ss << INT_MAX;
break;
case pai::module::ParmType_LONG:
ss << LONG_MAX;
break;
case pai::module::ParmType_FLOAT:
ss << FLT_MAX;
break;
case pai::module::ParmType_DOUBLE:
ss << DBL_MAX;
break;
default:
break;
}
return ss.str();
}
#endif