1 #ifndef PSK_REPORTER_HPP_ 2 #define PSK_REPORTER_HPP_ 3 4 #include <QObject> 5 #include "Radio.hpp" 6 #include "pimpl_h.hpp" 7 8 class QString; 9 class Configuration; 10 11 class PSKReporter final 12 : public QObject 13 { 14 Q_OBJECT 15 16 public: 17 explicit PSKReporter (Configuration const *, QString const& program_info); 18 ~PSKReporter (); 19 20 void reconnect (); 21 22 void setLocalStation (QString const& call, QString const& grid, QString const& antenna); 23 24 // 25 // Returns false if PSK Reporter connection is not available 26 // 27 bool addRemoteStation (QString const& call, QString const& grid, Radio::Frequency freq, QString const& mode, int snr); 28 29 // 30 // Flush any pending spots to PSK Reporter 31 // 32 void sendReport (bool last = false); 33 34 Q_SIGNAL void errorOccurred (QString const& reason); 35 36 private: 37 class impl; 38 pimpl<impl> m_; 39 }; 40 41 #endif 42