| 
									
										
										
										
											2018-02-08 21:28:33 -05:00
										 |  |  | // -*- Mode: C++ -*-
 | 
					
						
							|  |  |  | #ifndef WIDEGRAPH_H
 | 
					
						
							|  |  |  | #define WIDEGRAPH_H
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #include <QDialog>
 | 
					
						
							|  |  |  | #include <QScopedPointer>
 | 
					
						
							|  |  |  | #include <QDir>
 | 
					
						
							|  |  |  | #include <QHash>
 | 
					
						
							|  |  |  | #include <QVariant>
 | 
					
						
							|  |  |  | #include "WFPalette.hpp"
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define MAX_SCREENSIZE 2048
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | namespace Ui { | 
					
						
							|  |  |  |   class WideGraph; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class QSettings; | 
					
						
							|  |  |  | class Configuration; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class WideGraph : public QDialog | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   Q_OBJECT | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | public: | 
					
						
							|  |  |  |   explicit WideGraph(QSettings *, QWidget *parent = 0); | 
					
						
							|  |  |  |   ~WideGraph (); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   void   dataSink2(float s[], float df3, int ihsym, int ndiskdata); | 
					
						
							|  |  |  |   void   setRxFreq(int n); | 
					
						
							|  |  |  |   int    rxFreq(); | 
					
						
							| 
									
										
										
										
											2018-09-11 13:35:29 -04:00
										 |  |  |   int    centerFreq(); | 
					
						
							| 
									
										
										
										
											2018-02-08 21:28:33 -05:00
										 |  |  |   int    nStartFreq(); | 
					
						
							|  |  |  |   int    Fmin(); | 
					
						
							|  |  |  |   int    Fmax(); | 
					
						
							| 
									
										
										
										
											2019-12-16 21:28:45 -05:00
										 |  |  |   int    filterMinimum(); | 
					
						
							|  |  |  |   int    filterMaximum(); | 
					
						
							| 
									
										
										
										
											2019-12-16 13:59:10 -05:00
										 |  |  |   bool   filterEnabled(); | 
					
						
							| 
									
										
										
										
											2019-12-26 15:11:32 -05:00
										 |  |  |   void   setFilterCenter(int n); | 
					
						
							| 
									
										
										
										
											2019-12-16 21:28:45 -05:00
										 |  |  |   void   setFilter(int a, int b); | 
					
						
							|  |  |  |   void   setFilterMinimumBandwidth(int width); | 
					
						
							| 
									
										
										
										
											2019-12-16 13:42:44 -05:00
										 |  |  |   void   setFilterEnabled(bool enabled); | 
					
						
							| 
									
										
										
										
											2019-12-19 10:06:37 -05:00
										 |  |  |   void   setFilterOpacityPercent(int n); | 
					
						
							| 
									
										
										
										
											2018-02-08 21:28:33 -05:00
										 |  |  |   int    fSpan(); | 
					
						
							|  |  |  |   void   saveSettings(); | 
					
						
							|  |  |  |   void   setFsample(int n); | 
					
						
							|  |  |  |   void   setPeriod(int ntrperiod, int nsps); | 
					
						
							|  |  |  |   void   setTxFreq(int n); | 
					
						
							|  |  |  |   void   setMode(QString mode); | 
					
						
							|  |  |  |   void   setSubMode(int n); | 
					
						
							|  |  |  |   void   setModeTx(QString modeTx); | 
					
						
							|  |  |  |   bool   flatten(); | 
					
						
							|  |  |  |   bool   useRef(); | 
					
						
							|  |  |  |   void   setTol(int n); | 
					
						
							|  |  |  |   int    smoothYellow(); | 
					
						
							|  |  |  |   void   setRxBand (QString const& band); | 
					
						
							|  |  |  |   void   setWSPRtransmitted(); | 
					
						
							|  |  |  |   void   drawRed(int ia, int ib); | 
					
						
							|  |  |  |   void   setVHF(bool bVHF); | 
					
						
							|  |  |  |   void   setRedFile(QString fRed); | 
					
						
							| 
									
										
										
										
											2018-11-04 22:37:14 -05:00
										 |  |  |   void   setTurbo(bool turbo); | 
					
						
							| 
									
										
										
										
											2018-02-08 21:28:33 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  | signals: | 
					
						
							|  |  |  |   void freezeDecode2(int n); | 
					
						
							|  |  |  |   void f11f12(int n); | 
					
						
							|  |  |  |   void setXIT2(int n); | 
					
						
							|  |  |  |   void setFreq3(int rxFreq, int txFreq); | 
					
						
							| 
									
										
										
										
											2018-09-09 17:18:07 -04:00
										 |  |  |   void qsy(int hzDelta); | 
					
						
							| 
									
										
										
										
											2018-02-08 21:28:33 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  | public slots: | 
					
						
							|  |  |  |   void wideFreezeDecode(int n); | 
					
						
							|  |  |  |   void setFreq2(int rxFreq, int txFreq); | 
					
						
							|  |  |  |   void setDialFreq(double d); | 
					
						
							| 
									
										
										
										
											2018-09-01 18:26:10 -04:00
										 |  |  |   void setControlsVisible(bool visible); | 
					
						
							|  |  |  |   bool controlsVisible(); | 
					
						
							| 
									
										
										
										
											2019-12-17 10:39:18 -05:00
										 |  |  |   void setDrift(int n); | 
					
						
							| 
									
										
										
										
											2019-12-17 12:43:19 -05:00
										 |  |  |   void setQSYEnabled(bool enabled); | 
					
						
							| 
									
										
										
										
											2018-02-08 21:28:33 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  | protected: | 
					
						
							|  |  |  |   void keyPressEvent (QKeyEvent *e) override; | 
					
						
							|  |  |  |   void closeEvent (QCloseEvent *) override; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | private slots: | 
					
						
							| 
									
										
										
										
											2018-09-09 17:18:07 -04:00
										 |  |  |   void on_qsyPushButton_clicked(); | 
					
						
							| 
									
										
										
										
											2018-08-07 09:31:18 -04:00
										 |  |  |   void on_offsetSpinBox_valueChanged(int n); | 
					
						
							| 
									
										
										
										
											2018-02-08 21:28:33 -05:00
										 |  |  |   void on_waterfallAvgSpinBox_valueChanged(int arg1); | 
					
						
							|  |  |  |   void on_bppSpinBox_valueChanged(int arg1); | 
					
						
							|  |  |  |   void on_spec2dComboBox_currentIndexChanged(const QString &arg1); | 
					
						
							|  |  |  |   void on_fStartSpinBox_valueChanged(int n); | 
					
						
							|  |  |  |   void on_paletteComboBox_activated(const QString &palette); | 
					
						
							|  |  |  |   void on_cbFlatten_toggled(bool b); | 
					
						
							|  |  |  |   void on_cbRef_toggled(bool b); | 
					
						
							|  |  |  |   void on_cbControls_toggled(bool b); | 
					
						
							|  |  |  |   void on_adjust_palette_push_button_clicked (bool); | 
					
						
							|  |  |  |   void on_gainSlider_valueChanged(int value); | 
					
						
							|  |  |  |   void on_zeroSlider_valueChanged(int value); | 
					
						
							|  |  |  |   void on_gain2dSlider_valueChanged(int value); | 
					
						
							|  |  |  |   void on_zero2dSlider_valueChanged(int value); | 
					
						
							|  |  |  |   void on_smoSpinBox_valueChanged(int n);   | 
					
						
							|  |  |  |   void on_sbPercent2dPlot_valueChanged(int n); | 
					
						
							| 
									
										
										
										
											2019-12-16 21:28:45 -05:00
										 |  |  |   void on_filterMinSpinBox_valueChanged(int n); | 
					
						
							| 
									
										
										
										
											2019-12-23 08:18:14 -05:00
										 |  |  |   void on_filterCenterSpinBox_valueChanged(int n); | 
					
						
							| 
									
										
										
										
											2019-12-23 12:31:14 -05:00
										 |  |  |   void on_filterWidthSpinBox_valueChanged(int n); | 
					
						
							| 
									
										
										
										
											2019-12-27 14:22:58 -05:00
										 |  |  |   void on_filterCenterSyncButton_clicked(); | 
					
						
							| 
									
										
										
										
											2019-12-16 13:42:44 -05:00
										 |  |  |   void on_filterCheckBox_toggled(bool b); | 
					
						
							| 
									
										
										
										
											2019-12-19 10:06:37 -05:00
										 |  |  |   void on_filterOpacitySpinBox_valueChanged(int n); | 
					
						
							| 
									
										
										
										
											2018-02-08 21:28:33 -05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-12-17 10:39:18 -05:00
										 |  |  |   void on_driftSpinBox_valueChanged(int n); | 
					
						
							|  |  |  |   void on_driftSyncButton_clicked(); | 
					
						
							|  |  |  |   void on_driftSyncEndButton_clicked(); | 
					
						
							|  |  |  |   void on_driftSyncMinuteButton_clicked(); | 
					
						
							|  |  |  |   void on_driftSyncResetButton_clicked(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-02-08 21:28:33 -05:00
										 |  |  | private: | 
					
						
							| 
									
										
										
										
											2018-03-05 14:49:51 -05:00
										 |  |  |   void readPalette (); | 
					
						
							|  |  |  |   void setRxRange (); | 
					
						
							|  |  |  |   void replot(); | 
					
						
							| 
									
										
										
										
											2018-02-08 21:28:33 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  |   QScopedPointer<Ui::WideGraph> ui; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   QSettings * m_settings; | 
					
						
							|  |  |  |   QDir m_palettes_path; | 
					
						
							|  |  |  |   WFPalette m_userPalette; | 
					
						
							| 
									
										
										
										
											2018-03-05 14:49:51 -05:00
										 |  |  |   QHash<QString, QVariant> m_fMinPerBand; | 
					
						
							| 
									
										
										
										
											2018-02-08 21:28:33 -05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-12-16 13:42:44 -05:00
										 |  |  |   bool m_filterEnabled; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-12-16 21:28:45 -05:00
										 |  |  |   qint32 m_filterMinWidth; | 
					
						
							|  |  |  |   qint32 m_filterMinimum; | 
					
						
							|  |  |  |   qint32 m_filterMaximum; | 
					
						
							| 
									
										
										
										
											2019-12-23 08:18:14 -05:00
										 |  |  |   qint32 m_filterCenter; | 
					
						
							| 
									
										
										
										
											2018-02-08 21:28:33 -05:00
										 |  |  |   qint32 m_waterfallAvg; | 
					
						
							|  |  |  |   qint32 m_TRperiod; | 
					
						
							|  |  |  |   qint32 m_nsps; | 
					
						
							|  |  |  |   qint32 m_ntr0; | 
					
						
							|  |  |  |   qint32 m_fMax; | 
					
						
							|  |  |  |   qint32 m_nSubMode; | 
					
						
							|  |  |  |   qint32 m_nsmo; | 
					
						
							| 
									
										
										
										
											2018-03-05 14:49:51 -05:00
										 |  |  |   qint32 m_Percent2DScreen; | 
					
						
							|  |  |  |   qint32 m_jz=MAX_SCREENSIZE; | 
					
						
							|  |  |  |   qint32 m_n; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-02-08 21:28:33 -05:00
										 |  |  |   bool   m_bFlatten; | 
					
						
							|  |  |  |   bool   m_bRef; | 
					
						
							|  |  |  |   bool   m_bHaveTransmitted;    //Set true at end of a WSPR transmission
 | 
					
						
							| 
									
										
										
										
											2018-03-05 14:49:51 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  |   QString m_rxBand; | 
					
						
							| 
									
										
										
										
											2018-02-08 21:28:33 -05:00
										 |  |  |   QString m_mode; | 
					
						
							|  |  |  |   QString m_modeTx; | 
					
						
							| 
									
										
										
										
											2018-03-05 14:49:51 -05:00
										 |  |  |   QString m_waterfallPalette;   | 
					
						
							| 
									
										
										
										
											2018-02-08 21:28:33 -05:00
										 |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif // WIDEGRAPH_H
 |