#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; }