#pragma once #include #include namespace scwx::network { /** * @brief NTP Client */ class NtpClient { public: explicit NtpClient(); ~NtpClient(); NtpClient(const NtpClient&) = delete; NtpClient& operator=(const NtpClient&) = delete; NtpClient(NtpClient&&) noexcept; NtpClient& operator=(NtpClient&&) noexcept; void Open(std::string_view host, std::string_view service); void Poll(); private: class Impl; std::unique_ptr p; }; } // namespace scwx::network