#include #include #include #include #include #include #include #include using namespace std; class TemperCheckImp { private: float m_fTempHigh; //温度上限 float m_fTempLow; //温度下线 float m_fTempStdDev; //温度标准差 int m_nQueueSize; //队列长度 float m_fGradientMean; //温度梯度均值 float m_fGradientStdDev; //温度梯度标准差 string m_strLogPath; deque m_dqTemp; deque m_dqTempGradient; map m_mapTemp; void PrintTime(); public: TemperCheckImp(); virtual ~TemperCheckImp(void); TemperCheckImp(float fSetTempHigh, float fSetTempLow, float fSetTempStdDev, float fSetGradientMean, float fSetGradientStdDev, int nSetQueueSize, char *LogPath); bool clearMapAndLog(); //构造函数参数依次为: //温度上限 //温度下限 //温度标准差 //温度梯度均值 //温度梯度标准差 //队列长度 int TempeCheckMethod1(float fTemp); //返回值1符合标准。0不符合标准。-1输入参数错误,如 fSetTempLow>fSetTempHigh等。-2队列长度小于nSetQueueSize,继续采集。-3设定队列长度异常。 int TempeCheckMethod2(float fTemp, double dTime); //返回值1符合标准。0不符合标准。-1输入参数错误,如 fSetTempLow>fSetTempHigh等。-2采集温度不再设定范围内。-3队列长度小于nSetQueueSize,继续采集。-4设定队列长度异常。 };