// // Created by linbo on 2025/10/21. // #ifndef CMVR_ES_HARDWARE_MANAGER_H #define CMVR_ES_HARDWARE_MANAGER_H #include "rapidxml/xml_parser.h" #include #include namespace cmvr::device { class HardWareManager { public: HardWareManager(const HardWareManager&) = delete; HardWareManager& operator=(const HardWareManager&) = delete; static HardWareManager& getInstance(const XmlNode &cfg); static HardWareManager& getInstance(); static void destroyInstance(); private: XmlNode cfg_; static std::once_flag init_flag_; static std::shared_ptr instance_; explicit HardWareManager(const XmlNode &cfg); }; } #endif //CMVR_ES_HARDWARE_MANAGER_H