#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; }; #pragma pack(1) class PowerParam { public: PowerParam() : uab(new FloatData("uab", u8"uab")) , ubc(new FloatData("ubc", u8"ubc")) , uca(new FloatData("uca", u8"uca")) , ua(new FloatData("ua", u8"ua")) , ub(new FloatData("ub", u8"ub")) , uc(new FloatData("uc", u8"uc")) , ia(new FloatData("ia", u8"ia")) , ib(new FloatData("ib", u8"ib")) , ic(new FloatData("ic", u8"ic")) , pt(new FloatData("pt", u8"pt")) , pa(new FloatData("pa", u8"pa")) , pc(new FloatData("pc", u8"pc")) , qt(new FloatData("qt", u8"qt")) , qa(new FloatData("qa", u8"qa")) , qb(new FloatData("qb", u8"qb")) , qc(new FloatData("qc", u8"qc")) , pft(new FloatData("pft", u8"pft")) , pfa(new FloatData("pfa", u8"pfa")) , pfb(new FloatData("pfb", u8"pfb")) , pfc(new FloatData("pfc", u8"pfc")) , freq(new FloatData("freq", u8"freq")) , impEp(new FloatData("impEp", u8"impEp")) , expEp(new FloatData("expEp", u8"expEp")) , q1Eq(new FloatData("q1Eq", u8"q1Eq")) , q2Eq(new FloatData("q2Eq", u8"q2Eq")) , q3Eq(new FloatData("q3Eq", u8"q3Eq")) , q4Eq(new FloatData("q4Eq", u8"q4Eq")) , irAt(new FloatData("irAt", u8"irAt")) , urAt(new FloatData("urAt", u8"urAt")){ } public: //BaseStat baseStat; char m_startFlag; FloatData* uab; FloatData* ubc; FloatData* uca; FloatData* ua; FloatData* ub; FloatData* uc; FloatData* ia; FloatData* ib; FloatData* ic; FloatData* pt; FloatData* pa; FloatData* pb; FloatData* pc; FloatData* qt; FloatData* qa; FloatData* qb; FloatData* qc; FloatData* pft; FloatData* pfa; FloatData* pfb; FloatData* pfc; FloatData* freq; FloatData* impEp; FloatData* expEp; FloatData* q1Eq; FloatData* q2Eq; FloatData* q3Eq; FloatData* q4Eq; FloatData* irAt; FloatData* urAt; char m_endFlag; }; #pragma pack() class PowerMeterClient:public TcpClient { public: PowerMeterClient(void* pconfig = nullptr); ~PowerMeterClient(); void DrawUI(bool* isshow); void GetState(PowerStat& stat); //void ResetElec(); //void UpdateData(const ReadData& msg); 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: PowerParam m_State; RunCfg* m_RunCfg; AlarmCfgWrapper* m_AlarmCfgWrapper; };