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