#pragma once class HikCamera { public: // 获取单例实例 static HikCamera &getInstance() { static HikCamera instance; return instance; } // 初始化相机 void init(); // 去初始化相机 void deinit(); // 开始图像采集 void startGrabbing(); // 停止图像采集 void stopGrabbing(); // 设置曝光时间 void setExposure(double exposure); // 设置增益 void setGain(double gain); // 注册图像回调函数 void registerImageCallback(); // 禁用拷贝和移动 HikCamera(const HikCamera &) = delete; HikCamera(HikCamera &&) = delete; HikCamera &operator=(const HikCamera &) = delete; HikCamera &operator=(HikCamera &&) = delete; private: // 私有构造函数 HikCamera() = default; // 私有析构函数 ~HikCamera() = default; // 相机句柄 void *m_handler = nullptr; };