45 lines
1.3 KiB
C
Raw Normal View History

#ifndef CONFIGMANAGER_H
#define CONFIGMANAGER_H
#include "IVrConfig.h" // 必须在 BaseConfigManager.h 之前包含
#include "BaseConfigManager.h"
/**
* @brief TunnelChannel
*
* BaseConfigManager TunnelChannel
*/
class ConfigManager : public BaseConfigManager
{
public:
ConfigManager() = default;
~ConfigManager() = default;
// 重写 Initialize 以禁用共享内存监控TunnelChannelApp 不需要)
bool Initialize(const std::string& configFilePath = "") override;
// 实现 LoadConfigFromFile 以适配 TunnelChannel 的 IVrConfig API
bool LoadConfigFromFile(const std::string& filePath) override;
// 获取海康相机配置列表
std::vector<HikCameraConfig> GetHikCameraList() const;
// 获取当前配置(便捷方法,直接返回 ConfigResult
ConfigResult GetCurrentConfig() const {
return GetConfigResult();
}
// 设置配置变化通知回调
void SetConfigChangeNotify(IVrConfigChangeNotify* notify) {
if (m_pVrConfig) {
m_pVrConfig->SetConfigChangeNotify(notify);
}
}
protected:
// 重写默认配置初始化,提供 TunnelChannel 特定的默认配置
bool _InitializeDefaultConfig() override;
};
#endif // CONFIGMANAGER_H