// // Created by Matthew on 2025/3/4. // #ifndef MICROPHOTO_VENDORCTRL_H #define MICROPHOTO_VENDORCTRL_H #include #include class VendorCtrl { public: VendorCtrl(const std::string& ip, const std::string& userName, const std::string& password, uint8_t channel); virtual ~VendorCtrl() = 0; virtual bool SetOsd() = 0; virtual void EnableOsd(bool enable) = 0; virtual std::string GetStreamingUrl(uint8_t channel) = 0; virtual bool UpdateTime(time_t ts) = 0; virtual bool TakePhoto(std::vector& img) = 0; protected: std::string CvtJSONToString(const Json::Value& data); protected: std::string m_ip; std::string m_userName; std::string m_password; uint8_t m_channel; }; #endif //MICROPHOTO_VENDORCTRL_H