81 lines
1.9 KiB
C
81 lines
1.9 KiB
C
|
#pragma once
|
|||
|
#include "config/ConfigManager.h"
|
|||
|
#include "Communication/ComServer.h"
|
|||
|
//#include "ScannerCtrl/ScannerCtrl.h"
|
|||
|
//#include "Purifier/BasePurifier.h"
|
|||
|
#include "Communication/PurifierClient.h"
|
|||
|
#include "Communication/HBDPurifierClient.h"
|
|||
|
//#include "ui/UIBean.h"
|
|||
|
#include "Buzzer.h"
|
|||
|
#include "PLC/SignalService.h"
|
|||
|
//#include "Remote/RemoteClient.h"
|
|||
|
|
|||
|
class StateManager
|
|||
|
{
|
|||
|
public:
|
|||
|
StateManager();
|
|||
|
~StateManager();
|
|||
|
void Init(ScannerCtrl* psc,CoreCommunication * cc,ComServer* pcs, BasePurifier* pbp, RemoteClient* rc);
|
|||
|
void Start();
|
|||
|
void Stop();
|
|||
|
|
|||
|
void DrawNotify(void);
|
|||
|
void AddNotify(string notify);
|
|||
|
void AddDangerNotify(string notify);
|
|||
|
void DrawOxygenReady();
|
|||
|
//void SetStopAlarm(string code, bool isAlarm);
|
|||
|
//void SetPauseAlarm(string code,bool isAlarm);
|
|||
|
void DrawDangerNotify();
|
|||
|
void ResetTotalPrintTime();
|
|||
|
void AddAlarmNotify(AlarmShowInfo* info);
|
|||
|
//void ResetTotalLaserTime();
|
|||
|
private:
|
|||
|
static DWORD WINAPI StateProc(StateManager* _this);
|
|||
|
void StateRun();
|
|||
|
|
|||
|
|
|||
|
public:
|
|||
|
static string m_MStatueFilePath;
|
|||
|
vector<string> m_Notifies;
|
|||
|
|
|||
|
private:
|
|||
|
ScannerCtrl* m_ScannerCtrl;
|
|||
|
//GTSController* m_GTSController;
|
|||
|
ComServer* m_ComServer;
|
|||
|
BasePurifier* m_Purifier;
|
|||
|
HANDLE m_StateThread;
|
|||
|
bool m_RunFlag;
|
|||
|
IOCfgWrapper* m_IoCfgWrapper;
|
|||
|
AlarmCfgWrapper* m_AlarmCfgWrapper;
|
|||
|
PowderEstimateCfg* m_PowderEstimateCfg;
|
|||
|
ExtCfg* m_ExtCfg;
|
|||
|
RunCfg* m_RunCfg;
|
|||
|
map<short, AxisCfg*>* m_AxisCfgs;
|
|||
|
uint64_t m_LogTime;
|
|||
|
CRITICAL_SECTION m_NotifiesCS;
|
|||
|
uint64_t m_TotalRunTime;
|
|||
|
uint64_t m_TotalLaserTime;
|
|||
|
MachineCfg* m_MachineCfg;
|
|||
|
Machine* m_Machine;
|
|||
|
CoreCommunication* m_CoreCommunication;
|
|||
|
|
|||
|
ofstream* m_SFile;
|
|||
|
uint64_t m_MStatueSaveTime;
|
|||
|
Buzzer* m_Buzzer;
|
|||
|
|
|||
|
int m_LastLayerIndex;
|
|||
|
|
|||
|
uint64_t m_LastWarnInfo;
|
|||
|
vector<string> m_DangerNotifies;
|
|||
|
bool m_PrintCabinDoorOpenAlarmLastState;
|
|||
|
|
|||
|
vector<AlarmShowInfo*> m_AlarmNotifies;
|
|||
|
int m_LastSendAlarmFlag;
|
|||
|
RemoteClient* m_RemoteClient;
|
|||
|
BaseCtrl::PrintState m_LaserPS;
|
|||
|
|
|||
|
|
|||
|
//CRITICAL_SECTION m_MStatueCS;
|
|||
|
};
|
|||
|
|