1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- #pragma once
- #include <vector>
- #include <mutex>
- #include"CRS485.h"
- #ifdef TEMPERATURE_EXPORTS
- #define Temperature_DLL_API __declspec(dllexport)
- #else
- #define Temperature_DLL_API
- #endif
- enum Temperature_Ctltype { GLTC = 1, Temperature_Other};
- #define TEMPER_BASE_ERROR (MODBUS_BASE_ERROR+10000)
- class Temperature_DLL_API CTemperature
- {
- public:
- typedef struct
- {
- string addrs;
- CTemperature* pTemperature;
- }TEMPERATURE_LST;
- public:
-
- static long GetInstance(string strPort, Temperature_Ctltype iCtlType, CTemperature **temperature);
- static string GetErrText(long errid);
-
-
-
-
-
-
-
-
-
- long SetTemperature(unsigned char rtuAddr, double dTemperature, unsigned char iMaxSendNum = 3);
-
-
-
-
-
-
-
- long GetTemperature(unsigned char rtuAddr, double &pTemperature, unsigned char iMaxSendNum = 3);
- private:
- Temperature_Ctltype m_iTemperType;
- CRS485 *m_ComPort;
- bool m_bIsInitSuccess;
-
- static std::vector<TEMPERATURE_LST> m_vecTemperature;
- static std::mutex m_Mutex;
- std::mutex m_mutexReadWrite;
- CTemperature();
- ~CTemperature();
- long Init(string port, Temperature_Ctltype iTemperType);
- void UnInit();
- static CTemperature* GetTemperature(string addrs);
- CTemperature(const CTemperature &temperature);
- const CTemperature &operator=(const CTemperature &temperature);
- };
|