GrpcPrint/PrintS/Communication/ServoManager.h

41 lines
724 B
C++

#pragma once
#include "../log/AxisLog.h"
#include "BaseServoClient.h"
#include "../PLC/Axis.h"
class ServoManager
{
public:
ServoManager(PLCAxis* axis);
virtual ~ServoManager();
void Startup();
void Shutdown();
void StartLog(AxisLog* al);
void StopLog(AxisLog* al);
void DrawServo();
void ResetLogServo();
private:
static DWORD WINAPI UpdateProc(ServoManager* _this);
void UpdateRun();
public:
bool m_IsShowServo;
private:
bool m_UpdateFlag;
HANDLE m_UpdateThread;
ServoStat m_MoldStat;
ServoStat m_LoadStat;
ServoStat m_ArmStat;
ServoStat m_SupplyStat;
CRITICAL_SECTION m_LogLoadCS;
CRITICAL_SECTION m_ShowLoadCS;
bool m_IsLogReady;
PLCAxis* m_Axis;
//AxisLog* m_AxisLog;
//bool m_IsRun;
};