#pragma once #include #include #include #include namespace scwx { namespace qt { namespace request { class NexradFileRequestImpl; class NexradFileRequest : public QObject { Q_OBJECT public: explicit NexradFileRequest(); ~NexradFileRequest(); std::shared_ptr nexrad_file() const; std::string radar_id() const; std::string site_id() const; std::chrono::system_clock::time_point time() const; void set_nexrad_file(std::shared_ptr nexradFile); void set_radar_id(const std::string& radarId); void set_site_id(const std::string& siteId); void set_time(std::chrono::system_clock::time_point time); private: std::unique_ptr p; signals: void RequestComplete(std::shared_ptr request); }; } // namespace request } // namespace qt } // namespace scwx