summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gr-qtgui/lib/FrequencyDisplayPlot.cc2
-rw-r--r--gr-qtgui/lib/TimeRasterDisplayPlot.cc7
-rw-r--r--gr-qtgui/lib/TimeRasterDisplayPlot.h1
-rw-r--r--gr-qtgui/lib/constellationdisplayform.cc5
-rw-r--r--gr-qtgui/lib/constellationdisplayform.h1
-rw-r--r--gr-qtgui/lib/displayform.cc6
-rw-r--r--gr-qtgui/lib/displayform.h3
-rw-r--r--gr-qtgui/lib/freqdisplayform.cc9
-rw-r--r--gr-qtgui/lib/freqdisplayform.h2
-rw-r--r--gr-qtgui/lib/timedisplayform.cc6
-rw-r--r--gr-qtgui/lib/timedisplayform.h1
-rw-r--r--gr-qtgui/lib/timerasterdisplayform.cc6
-rw-r--r--gr-qtgui/lib/timerasterdisplayform.h2
-rw-r--r--gr-qtgui/lib/waterfalldisplayform.cc10
-rw-r--r--gr-qtgui/lib/waterfalldisplayform.h3
15 files changed, 62 insertions, 2 deletions
diff --git a/gr-qtgui/lib/FrequencyDisplayPlot.cc b/gr-qtgui/lib/FrequencyDisplayPlot.cc
index a04a9886d4..e279155544 100644
--- a/gr-qtgui/lib/FrequencyDisplayPlot.cc
+++ b/gr-qtgui/lib/FrequencyDisplayPlot.cc
@@ -393,7 +393,7 @@ FrequencyDisplayPlot::plotNewData(const double* dataPoints,
plotNewData(vecDataPoints, numDataPoints, noiseFloorAmplitude,
peakFrequency, peakAmplitude, timeInterval);
}
-
+
void
FrequencyDisplayPlot::clearMaxData()
{
diff --git a/gr-qtgui/lib/TimeRasterDisplayPlot.cc b/gr-qtgui/lib/TimeRasterDisplayPlot.cc
index 84ec31f6ef..c6e037386c 100644
--- a/gr-qtgui/lib/TimeRasterDisplayPlot.cc
+++ b/gr-qtgui/lib/TimeRasterDisplayPlot.cc
@@ -287,6 +287,13 @@ TimeRasterDisplayPlot::setAlpha(int which, int alpha)
d_raster[which]->setAlpha(alpha);
}
+void
+TimeRasterDisplayPlot::setSampleRate(double samprate)
+{
+ d_samp_rate = samprate;
+ reset();
+}
+
double
TimeRasterDisplayPlot::numRows() const
{
diff --git a/gr-qtgui/lib/TimeRasterDisplayPlot.h b/gr-qtgui/lib/TimeRasterDisplayPlot.h
index 3e0ac1cfdb..fca9672b91 100644
--- a/gr-qtgui/lib/TimeRasterDisplayPlot.h
+++ b/gr-qtgui/lib/TimeRasterDisplayPlot.h
@@ -54,6 +54,7 @@ public:
void setNumRows(double rows);
void setNumCols(double cols);
void setAlpha(int which, int alpha);
+ void setSampleRate(double samprate);
double numRows() const;
double numCols() const;
diff --git a/gr-qtgui/lib/constellationdisplayform.cc b/gr-qtgui/lib/constellationdisplayform.cc
index df9054116d..9fa22cb306 100644
--- a/gr-qtgui/lib/constellationdisplayform.cc
+++ b/gr-qtgui/lib/constellationdisplayform.cc
@@ -138,3 +138,8 @@ ConstellationDisplayForm::autoScale(bool en)
getPlot()->setAutoScale(_autoscale_state);
getPlot()->replot();
}
+
+void
+ConstellationDisplayForm::setSampleRate(const QString &samprate)
+{
+}
diff --git a/gr-qtgui/lib/constellationdisplayform.h b/gr-qtgui/lib/constellationdisplayform.h
index b8180e09df..f9f8dab175 100644
--- a/gr-qtgui/lib/constellationdisplayform.h
+++ b/gr-qtgui/lib/constellationdisplayform.h
@@ -46,6 +46,7 @@ public slots:
void customEvent(QEvent * e);
void setNPoints(const int);
+ void setSampleRate(const QString &samprate);
void setYaxis(double min, double max);
void setXaxis(double min, double max);
void autoScale();
diff --git a/gr-qtgui/lib/displayform.cc b/gr-qtgui/lib/displayform.cc
index 444fa95858..e4a70c209a 100644
--- a/gr-qtgui/lib/displayform.cc
+++ b/gr-qtgui/lib/displayform.cc
@@ -98,6 +98,12 @@ DisplayForm::DisplayForm(int nplots, QWidget* parent)
_menu->addMenu(_lines_menu[i]);
}
+ _samp_rate_act = new PopupMenu("Sample Rate", this);
+ _samp_rate_act->setStatusTip(tr("Set Sample Rate"));
+ connect(_samp_rate_act, SIGNAL(whichTrigger(QString)),
+ this, SLOT(setSampleRate(QString)));
+ _menu->addAction(_samp_rate_act);
+
_autoscale_act = new QAction("Auto Scale On", this);
_autoscale_act->setStatusTip(tr("Autoscale Plot"));
connect(_autoscale_act, SIGNAL(triggered()), this, SLOT(autoScale()));
diff --git a/gr-qtgui/lib/displayform.h b/gr-qtgui/lib/displayform.h
index bd64407863..14f385796b 100644
--- a/gr-qtgui/lib/displayform.h
+++ b/gr-qtgui/lib/displayform.h
@@ -71,6 +71,8 @@ public slots:
QwtSymbol::Style lineMarker(int which);
int markerAlpha(int which);
+ virtual void setSampleRate(const QString &rate) = 0;
+
void setStop(bool on);
void setStop();
@@ -117,6 +119,7 @@ protected:
QList<LineMarkerMenu*> _line_marker_menu;
QList<MarkerAlphaMenu*> _marker_alpha_menu;
+ PopupMenu *_samp_rate_act;
QAction *_save_act;
QTimer *d_displayTimer;
diff --git a/gr-qtgui/lib/freqdisplayform.cc b/gr-qtgui/lib/freqdisplayform.cc
index 694c280635..9015b79618 100644
--- a/gr-qtgui/lib/freqdisplayform.cc
+++ b/gr-qtgui/lib/freqdisplayform.cc
@@ -111,6 +111,12 @@ FreqDisplayForm::getFFTWindowType() const
}
void
+FreqDisplayForm::setSampleRate(const QString &samprate)
+{
+ setFrequencyRange(_center_freq, samprate.toDouble());
+}
+
+void
FreqDisplayForm::setFFTSize(const int newsize)
{
_fftsize = newsize;
@@ -141,6 +147,9 @@ FreqDisplayForm::setFrequencyRange(const double centerfreq,
double units = pow(10, (units10-fmod(units10, 3.0)));
int iunit = static_cast<int>(units3);
+ _center_freq = centerfreq;
+ _samp_rate = bandwidth;
+
getPlot()->setFrequencyRange(centerfreq, bandwidth,
units, strunits[iunit]);
}
diff --git a/gr-qtgui/lib/freqdisplayform.h b/gr-qtgui/lib/freqdisplayform.h
index 0ec820718c..f635fb5f33 100644
--- a/gr-qtgui/lib/freqdisplayform.h
+++ b/gr-qtgui/lib/freqdisplayform.h
@@ -48,6 +48,7 @@ class FreqDisplayForm : public DisplayForm
public slots:
void customEvent(QEvent *e);
+ void setSampleRate(const QString &samprate);
void setFFTSize(const int);
void setFFTAverage(const float);
void setFFTWindowType(const gr::filter::firdes::win_type);
@@ -65,6 +66,7 @@ private:
uint64_t _numRealDataPoints;
QIntValidator* _intValidator;
+ double _samp_rate, _center_freq;
int _fftsize;
float _fftavg;
gr::filter::firdes::win_type _fftwintype;
diff --git a/gr-qtgui/lib/timedisplayform.cc b/gr-qtgui/lib/timedisplayform.cc
index 3e641639ff..8fe149a61a 100644
--- a/gr-qtgui/lib/timedisplayform.cc
+++ b/gr-qtgui/lib/timedisplayform.cc
@@ -89,6 +89,12 @@ TimeDisplayForm::customEvent(QEvent * e)
}
void
+TimeDisplayForm::setSampleRate(const QString &samprate)
+{
+ setSampleRate(samprate.toDouble());
+}
+
+void
TimeDisplayForm::setSampleRate(const double samprate)
{
if(samprate > 0) {
diff --git a/gr-qtgui/lib/timedisplayform.h b/gr-qtgui/lib/timedisplayform.h
index 8617f52958..8c5682cde2 100644
--- a/gr-qtgui/lib/timedisplayform.h
+++ b/gr-qtgui/lib/timedisplayform.h
@@ -46,6 +46,7 @@ public slots:
void customEvent(QEvent * e);
void setSampleRate(const double samprate);
+ void setSampleRate(const QString &samprate);
void setYaxis(double min, double max);
void setNPoints(const int);
void setStem(bool trig=false);
diff --git a/gr-qtgui/lib/timerasterdisplayform.cc b/gr-qtgui/lib/timerasterdisplayform.cc
index 1fbad090ca..1993350326 100644
--- a/gr-qtgui/lib/timerasterdisplayform.cc
+++ b/gr-qtgui/lib/timerasterdisplayform.cc
@@ -173,6 +173,12 @@ TimeRasterDisplayForm::setNumCols(QString cols)
}
void
+TimeRasterDisplayForm::setSampleRate(const QString &rate)
+{
+ getPlot()->setSampleRate(rate.toDouble());
+}
+
+void
TimeRasterDisplayForm::setColorMap(int which,
const int newType,
const QColor lowColor,
diff --git a/gr-qtgui/lib/timerasterdisplayform.h b/gr-qtgui/lib/timerasterdisplayform.h
index e136f5faf8..e28183ffcb 100644
--- a/gr-qtgui/lib/timerasterdisplayform.h
+++ b/gr-qtgui/lib/timerasterdisplayform.h
@@ -58,6 +58,8 @@ public slots:
void setNumRows(QString rows);
void setNumCols(QString cols);
+ void setSampleRate(const QString &rate);
+
void setIntensityRange(const double minIntensity,
const double maxIntensity);
diff --git a/gr-qtgui/lib/waterfalldisplayform.cc b/gr-qtgui/lib/waterfalldisplayform.cc
index d45af04248..d8160d0d85 100644
--- a/gr-qtgui/lib/waterfalldisplayform.cc
+++ b/gr-qtgui/lib/waterfalldisplayform.cc
@@ -37,6 +37,9 @@ WaterfallDisplayForm::WaterfallDisplayForm(int nplots, QWidget* parent)
_layout->addWidget(_displayPlot, 0, 0);
setLayout(_layout);
+ _center_freq = 0;
+ _samp_rate = 0;
+
_numRealDataPoints = 1024;
_fftsize = 1024;
_fftavg = 1.0;
@@ -178,6 +181,12 @@ WaterfallDisplayForm::getMaxIntensity(int which)
}
void
+WaterfallDisplayForm::setSampleRate(const QString &samprate)
+{
+ setFrequencyRange(_center_freq, samprate.toDouble());
+}
+
+void
WaterfallDisplayForm::setFFTSize(const int newsize)
{
_fftsize = newsize;
@@ -205,6 +214,7 @@ WaterfallDisplayForm::setFrequencyRange(const double centerfreq,
double units = pow(10, (units10-fmod(units10, 3.0)));
int iunit = static_cast<int>(units3);
+ _center_freq = centerfreq;
_samp_rate = bandwidth;
_time_per_slice = (1.0/bandwidth)*_fftsize;
diff --git a/gr-qtgui/lib/waterfalldisplayform.h b/gr-qtgui/lib/waterfalldisplayform.h
index a6add831fd..aba64bda57 100644
--- a/gr-qtgui/lib/waterfalldisplayform.h
+++ b/gr-qtgui/lib/waterfalldisplayform.h
@@ -55,6 +55,7 @@ class WaterfallDisplayForm : public DisplayForm
public slots:
void customEvent(QEvent *e);
+ void setSampleRate(const QString &samprate);
void setFFTSize(const int);
void setFFTAverage(const float);
void setFFTWindowType(const gr::filter::firdes::win_type);
@@ -81,7 +82,7 @@ private:
uint64_t _numRealDataPoints;
QIntValidator* _intValidator;
- double _samp_rate;
+ double _samp_rate, _center_freq;
double _time_per_slice;
int _fftsize;
float _fftavg;