#pragma once class ICamera; class IProtocol { public: explicit IProtocol(ICamera *camera); virtual ~IProtocol() = default; protected: ICamera *m_camera{nullptr}; };