#include "VPGlobal.h" #include "GvlManager.h" #include "WindowAppGvlView.h" #include "WindowAppResourceManagerTree.h" #include "TaskManager.h" #include "WindowAppTaskMonitorView.h" #include "PouManager.h" #include "UiManager.h" #include "WindowMain.h" #include "LoadingManager.h" // #include "FrameManager.h" WindowMain* VPGlobal::m_pMainWindow = nullptr; WindowAppResourceManagerTree* VPGlobal::m_pResourceManager = nullptr; WindowAppGvlView* VPGlobal::m_pGvlView = nullptr; // WindowHdw* VPGlobal::m_pHdwWnd = nullptr; WindowAppMdiFrame* VPGlobal::m_pMdiFrame = nullptr; WindowAppTaskMonitorView* VPGlobal::m_pTaskMonitorView = nullptr; WindowRuntime* VPGlobal::m_pWindowRuntime = nullptr; PouManager* VPGlobal::m_pPouManager = new PouManager(); TaskManager* VPGlobal::m_pTaskManager = nullptr; GvlManager* VPGlobal::m_pGvlManager = nullptr; UiManager* VPGlobal::m_pUiManager = new UiManager(); LoadingManager* VPGlobal::m_pLoadingManager; // FrameManager* VPGlobal::m_pFrameManager = new FrameManager(); Document* VPGlobal::m_pDoc = nullptr; DialogUserMsg* VPGlobal::m_pDialogUserMsg = nullptr; // enum // QMetaEnum VPGlobal::emTaskMode; QMetaEnum VPGlobal::enumExecStatus; QMetaEnum VPGlobal::enumRetValue; QMetaEnum VPGlobal::enumPriority; QMetaEnum VPGlobal::enumGvlAccess; VPGlobal::VPGlobal() { } /// /// 初始化 /// void VPGlobal::init() { m_pTaskManager = TaskManager::getInstance(); m_pGvlManager = GvlManager::getInstance(); m_pLoadingManager = new LoadingManager(); // emTaskMode = QMetaEnum::fromType(); emExecStatus = QMetaEnum::fromType(); emRetValue = QMetaEnum::fromType(); emPriority = QMetaEnum::fromType(); emGvlAccess = QMetaEnum::fromType(); } /// /// 获取MdiFrame的指针 /// /// WindowAppMdiFrame* VPGlobal::getMdiFrame() { return m_pMdiFrame; } /// /// 获取TaskMonitorView指针 /// /// WindowAppTaskMonitorView* VPGlobal::getTaskMonitorView() { return m_pTaskMonitorView; } /// /// 注册AppTree /// /// void VPGlobal::Register(WindowAppResourceManagerTree* pAppTree) { Q_ASSERT(pAppTree != nullptr); m_pResourceManager = pAppTree; } /// /// 注册GvlView /// /// void VPGlobal::Register(WindowAppGvlView* pGvlView) { Q_ASSERT(pGvlView != nullptr); m_pGvlView = pGvlView; } ///// ///// 注册HardwareView ///// ///// //void VPGlobal::Register(WindowHdw* pHdwWnd) //{ // Q_ASSERT(pHdwWnd != nullptr); // // m_pHdwWnd = pHdwWnd; //} /// /// 注册MdiFrame /// /// void VPGlobal::Register(WindowAppMdiFrame* pMdiFrame) { Q_ASSERT(pMdiFrame != nullptr); m_pMdiFrame = pMdiFrame; } /// /// 注册默认的Task Monitor View /// /// void VPGlobal::Register(WindowAppTaskMonitorView* pTaskMonitorView) { Q_ASSERT(pTaskMonitorView != nullptr); m_pTaskMonitorView = pTaskMonitorView; } /// /// 注册Runtime窗体 /// /// void VPGlobal::Register(WindowRuntime* pRuntime) { Q_ASSERT(pRuntime != nullptr); m_pWindowRuntime = pRuntime; } /// /// 注册主框架 /// /// void VPGlobal::Register(WindowMain* pMainWindow) { Q_ASSERT(pMainWindow != nullptr); m_pMainWindow = pMainWindow; } /// /// For Debug /// void VPGlobal::debugAllPous() { //QMapIterator it(m_PouManagers); //qDebug() << "================ All Pous ========================="; //while (it.hasNext()) //{ // qDebug() << "Group: " << it.next().key(); // const POU* pou = it.value(); // QVectorIterator<_INTERFACE*> it2(pou->GetAllRunningInterfaces()); // while (it2.hasNext()) // { // const VARIABLE* var = it2.next(); // qDebug() << "\t" << var->strName << " - " << var->bSerialized // << " " << Utility::getStringByType(var->value.Type) // << " " << var->getValueString() << " " << var->strComment; // } //} //qDebug() << "=============================================================\n"; } // //QHash* VPGlobal::VariableManager() //{ // return m_pVariableManagers->getAllVariables(); //}