#pragma once #include "BaseClient.h" //#include "../config/ConfigManager.h" #include #include "../config/bean/ExtCfg.h" class Oxygenstat { public: explicit Oxygenstat() { concentrationValue = 0.0f; valueUnit = ""; scale = 1; tempValue = 0.0f; humidityValue = 0.0f; concentrationAgValue = 0.0f; } public: BaseStat baseStat; float concentrationValue; //浓度值 string valueUnit; //浓度单位 int scale; //数值放大倍数 float tempValue; //温度值 float humidityValue; //湿度值 float concentrationAgValue; //模拟量 }; class OxygenClient :public TcpClient { public: OxygenClient(CommunicationCfg* pconfig); ~OxygenClient(); void GetOxygenStat(unsigned char addr, Oxygenstat& stat); void GetOxygenStat(Oxygenstat& stat1, Oxygenstat& stat2, Oxygenstat& stat3); void InitCommand(); protected: virtual void ServerDisconnectProc(); virtual void WriteSuccessProc(int wlength, unsigned char* buffer, Command* pcommand); virtual void WriteTimeoutProc(Command* pcommand); virtual void ReadTimeoutProc(Command* pcommand); virtual void ReadSuccessProc(int rlength, unsigned char* buffer, Command* pcommand); private: void static PorcOxygenValue(void* pobject, Command* pcommand); void static ProcPointInfo(void* pobject, Command* pcommand); void static PorcConcentrationValue(void* pobject, Command* pcommand); void static ProcTempInfo(void* pobject, Command* pcommand); void static ProcNewVersion(void* pobject, Command* pcommand); private: map m_Oxygens; ExtCfg* m_ExtCfg; //vector m_PurifierOxygenCommands; //map m_Oxygens; };