#pragma once #include "BaseClient.h" #include "../config/bean/RunCfg.h" #include "../config/bean/AlarmCfg.h" class PowerStat { public: PowerStat() { uab = 0.0f ; ubc = 0.0f ; uca = 0.0f ; ua = 0.0f ; ub = 0.0f ; uc = 0.0f ; ia = 0.0f ; ib = 0.0f ; ic = 0.0f ; pt = 0.0f ; pa = 0.0f ; pb = 0.0f ; pc = 0.0f ; qt = 0.0f ; qa = 0.0f ; qb = 0.0f ; qc = 0.0f ; pft = 0.0f ; pfa = 0.0f ; pfb = 0.0f ; pfc = 0.0f ; freq = 0.0f ; impEp=0.0f; expEp = 0.0f; q1Eq = 0.0f; q2Eq = 0.0f; q3Eq = 0.0f; q4Eq = 0.0f; irAt = 0.0f; urAt = 0.0f; } public: //BaseStat baseStat; float uab; float ubc; float uca; float ua; float ub; float uc; float ia; float ib; float ic; float pt; float pa; float pb; float pc; float qt; float qa; float qb; float qc; float pft; float pfa; float pfb; float pfc; float freq; float impEp; float expEp; float q1Eq; float q2Eq; float q3Eq; float q4Eq; float irAt; float urAt; }; class PowerMeterClient:public TcpClient { public: PowerMeterClient(CommunicationCfg* pconfig); ~PowerMeterClient(); //void DrawUI(bool* isshow); void GetState(PowerStat& stat); void ResetElec(); private: void InitCommand(); void static PorcPowerValue(void* pobject, Command* pcommand); void static PorcPowerValue2(void* pobject, Command* pcommand); void static PorcVoltageValue(void* pobject, Command* pcommand); void static PorcVoltageValue2(void* pobject, Command* pcommand); void static ProcUnitValue(void* pobject, Command* pcommand); private: PowerStat m_State; RunCfg* m_RunCfg; AlarmCfgWrapper* m_AlarmCfgWrapper; };