#pragma once namespace DIOS::Dev::Detail::MachineryECOM { const std::string DONOTHING_DIOSBOARD = "DONOTHING_DIOSBOARD"; const std::string ECOM_DIOSBOARD = "DIOSBoardController"; class IDIOSBoardController; class IDIOSBoardPacketRecevier; class DIOSBoardFactory { public: DIOSBoardFactory(); ~DIOSBoardFactory(); public: static DIOSBoardFactory *Instance(); IDIOSBoardController *CreateSingleton(const std::string &typeName); private: static DIOSBoardFactory *m_instance; std::map m_boards; }; }