GrpcPrint/PrintC/UI/Controller.cpp

65 lines
1.5 KiB
C++

#include "Controller.h"
#include "../config/ConfigManager.h"
#include "../Purifier/XTPurifier.h"
#include "../Purifier/HBD3Purifier.h"
#include "../Purifier/G4Purifier.h"
Controller::Controller()
: m_Machine(nullptr)
//, m_Axis(nullptr)
, m_StateCtrlWrapper(nullptr)
, m_SysParamWrapper(nullptr)
, m_AxisRecordWrapper(nullptr)
, m_SignalStateWrapper(nullptr)
, m_MachineCfg(nullptr){
}
Controller::~Controller() {
//DELP(m_Axis);
DELP(m_StateCtrlWrapper);
DELP(m_SysParamWrapper);
DELP(m_AxisRecordWrapper);
DELP(m_SignalStateWrapper);
DELP(m_Machine);
DELP(m_MachineCfg);
}
bool Controller::Init() {
m_StateCtrlWrapper = new StateCtrlWrapper();
m_SysParamWrapper = new SysParamWrapper();
m_AxisRecordWrapper = new AxisRecordWrapper();
m_SignalStateWrapper = new SignalStateWrapper();
ConfigManager::Instance()->Init();
m_Machine = ConfigManager::Instance()->GetMachine();
m_Machine->SetAxisAndSignal(m_SysParamWrapper, m_AxisRecordWrapper);
m_MachineCfg = ConfigManager::Instance()->GetMachineCfg();
m_ComServer = new ComServer(); //辅机服务
m_ComServer->Init();
switch (m_MachineCfg->m_PulifierType)
{
case PurifierTypeCfg::XT: {
m_Purifier = new XTPurifier(m_ScannerCtrl);
}break;
case PurifierTypeCfg::HBD_PURIFIER_3: {
m_Purifier = new HBD3Purifier(m_ScannerCtrl);
}break;
case PurifierTypeCfg::G4_PURIFIER: {
m_Purifier = new G4Purifier(m_ScannerCtrl);
}break;
default:
m_Purifier = new XTPurifier(m_ScannerCtrl);
}
m_Purifier->Init();
return true;
}