58 lines
1.2 KiB
C
Raw Normal View History

2024-03-19 17:45:12 +08:00
#pragma once
#include "BaseClient.h"
class Upsstat
{
public:
Upsstat() {
inputVol = 0;
lastVol = 0;
outputVol = 0;
outputLoad = 0;
outputF = 0;
unitVol = 0;
tempValue = 0;
isVolError = false;
isBatteryVolLow = false;
isBypassMode = false;
isUpsError = false;
upsType = false;
isTesting = false;
isShutdown = false;
}
~Upsstat(){}
public:
BaseStat baseStat;
float inputVol; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹ: MMM.M
float lastVol; //<2F><>һ<EFBFBD><D2BB>ת<EFBFBD><D7AA><EFBFBD>طŵ<D8B7>ʱ<EFBFBD><CAB1>ѹ: NNN.N
float outputVol; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹ: PPP.P
int outputLoad; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ذٷֱ<D9B7>: QQQ
float outputF; //<2F><><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>: RR.R
float unitVol; //<2F><><EFBFBD>ص<EFBFBD>Ԫ<EFBFBD><D4AA>ѹ: S.SS
float tempValue; //<2F><EFBFBD>: TT.T
bool isVolError; //<2F>е<EFBFBD><D0B5>
bool isBatteryVolLow; //<2F><><EFBFBD>ص<EFBFBD>ѹ<EFBFBD><D1B9>
bool isBypassMode; //<2F><>·ģʽ
bool isUpsError; //UPS <20><><EFBFBD><EFBFBD>
bool upsType; //UPS <20><><EFBFBD><EFBFBD>ʽ (0 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ)
bool isTesting; //<2F><><EFBFBD>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD>
bool isShutdown; //<2F>ػ<EFBFBD>
};
class UPSClient :public TcpClient
{
public:
UPSClient(CommunicationCfg* pconfig);
~UPSClient();
void InitCommand();
void ShutDownUps(float minute);
void GetStat(Upsstat& stat);
private:
void static ProcInfo(void* pobject, Command* pcommand);
void static ProcShutDown(void* pobject, Command* pcommand);
private:
Upsstat m_Stat;
};