#include "DataMonitorFactory.h" #include "PluginManager.h" DataMonitorBasePtr DataMonitorFactory::GetInstance(const std::string &interfaceName) { return PluginManager::Instance().GetMonitor(interfaceName); } void DataMonitorFactory::ReleaseInstance(const std::string &interfaceName) { // 插件管理器会自动管理实例生命周期 // 这里可以添加额外的清理逻辑 } bool DataMonitorFactory::HasInterface(const std::string &interfaceName) { auto interfaces = PluginManager::Instance().GetSupportedInterfaces(); return std::find(interfaces.begin(), interfaces.end(), interfaceName) != interfaces.end(); } std::vector DataMonitorFactory::GetRegisteredInterfaces() { return PluginManager::Instance().GetSupportedInterfaces(); }