#pragma once #include "Common.h" #include "Pou.h" /// /// 用于管理所有Pou单元的类 /// class POU; class WindowAppPouScene; class PouManager { public: PouManager(); void registerPou(POU* pPou); // 注册硬件Pou void registerHdwPou(POU* pPou); // 获取所有的Pou数据结构 QMap& getAllPous(); // 获取Hardware Pou POU* getHdwPou(); // 获取指定的Pou POU* getPouByName(const QString& strName); // 2022-6-12,获取指定Pou的Scene指针 WindowAppPouScene* getPouSceneByName(const QString& strName); // 本分组是否是Pou中的一个 bool isPou(const QString& strName); void RemovePou(const QString& strName); void resetAllPous(); protected: QMap m_Pous; POU* m_pHardwarePou; };