24 lines
762 B
C++
24 lines
762 B
C++
#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<std::string> DataMonitorFactory::GetRegisteredInterfaces()
|
|
{
|
|
return PluginManager::Instance().GetSupportedInterfaces();
|
|
} |