1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
#pragma once #include <memory> class ICamera; class IProtocol { public: explicit IProtocol(std::shared_ptr<ICamera> camera); virtual ~IProtocol() = default; public: virtual bool start() = 0; virtual void stop() = 0; protected: std::shared_ptr<ICamera> m_camera; };