diff options
author | Tom Rondeau | 2011-03-27 12:55:16 -0400 |
---|---|---|
committer | Tom Rondeau | 2011-03-27 12:55:16 -0400 |
commit | befadabc2f18b483c71250adfd7dbf42f66b16f0 (patch) | |
tree | f3d1af1fff8ffe70db416631c2b68068cdc30856 /gr-qtgui/src/lib/spectrumdisplayform.cc | |
parent | dd97932abfd35e60e9374f202aa6c69afcfb35ca (diff) | |
download | gnuradio-befadabc2f18b483c71250adfd7dbf42f66b16f0.tar.gz gnuradio-befadabc2f18b483c71250adfd7dbf42f66b16f0.tar.bz2 gnuradio-befadabc2f18b483c71250adfd7dbf42f66b16f0.zip |
gr-qtgui: restructuring qtgui directory to new layout.
Diffstat (limited to 'gr-qtgui/src/lib/spectrumdisplayform.cc')
-rw-r--r-- | gr-qtgui/src/lib/spectrumdisplayform.cc | 691 |
1 files changed, 0 insertions, 691 deletions
diff --git a/gr-qtgui/src/lib/spectrumdisplayform.cc b/gr-qtgui/src/lib/spectrumdisplayform.cc deleted file mode 100644 index e0509a294..000000000 --- a/gr-qtgui/src/lib/spectrumdisplayform.cc +++ /dev/null @@ -1,691 +0,0 @@ -#include <cmath> -#include <QColorDialog> -#include <QMessageBox> -#include <spectrumdisplayform.h> - -int SpectrumDisplayForm::_openGLWaterfall3DFlag = -1; - -SpectrumDisplayForm::SpectrumDisplayForm(bool useOpenGL, QWidget* parent) - : QWidget(parent) -{ - setupUi(this); - - _useOpenGL = useOpenGL; - _systemSpecifiedFlag = false; - _intValidator = new QIntValidator(this); - _intValidator->setBottom(0); - _frequencyDisplayPlot = new FrequencyDisplayPlot(FrequencyPlotDisplayFrame); - _waterfallDisplayPlot = new WaterfallDisplayPlot(WaterfallPlotDisplayFrame); - - _timeDomainDisplayPlot = new TimeDomainDisplayPlot(TimeDomainDisplayFrame); - _constellationDisplayPlot = new ConstellationDisplayPlot(ConstellationDisplayFrame); - _numRealDataPoints = 1024; - _realFFTDataPoints = new double[_numRealDataPoints]; - _averagedValues = new double[_numRealDataPoints]; - _historyVector = new std::vector<double*>; - - AvgLineEdit->setRange(0, 500); // Set range of Average box value from 0 to 500 - MinHoldCheckBox_toggled( false ); - MaxHoldCheckBox_toggled( false ); - - WaterfallMaximumIntensityWheel->setRange(-200, 0); - WaterfallMaximumIntensityWheel->setTickCnt(50); - WaterfallMinimumIntensityWheel->setRange(-200, 0); - WaterfallMinimumIntensityWheel->setTickCnt(50); - WaterfallMinimumIntensityWheel->setValue(-200); - - _peakFrequency = 0; - _peakAmplitude = -HUGE_VAL; - - _noiseFloorAmplitude = -HUGE_VAL; - - connect(_waterfallDisplayPlot, SIGNAL(UpdatedLowerIntensityLevel(const double)), - _frequencyDisplayPlot, SLOT(SetLowerIntensityLevel(const double))); - connect(_waterfallDisplayPlot, SIGNAL(UpdatedUpperIntensityLevel(const double)), - _frequencyDisplayPlot, SLOT(SetUpperIntensityLevel(const double))); - - _frequencyDisplayPlot->SetLowerIntensityLevel(-200); - _frequencyDisplayPlot->SetUpperIntensityLevel(-200); - - // Load up the acceptable FFT sizes... - FFTSizeComboBox->clear(); - for(long fftSize = SpectrumGUIClass::MIN_FFT_SIZE; fftSize <= SpectrumGUIClass::MAX_FFT_SIZE; fftSize *= 2){ - FFTSizeComboBox->insertItem(FFTSizeComboBox->count(), QString("%1").arg(fftSize)); - } - Reset(); - - ToggleTabFrequency(false); - ToggleTabWaterfall(false); - ToggleTabTime(false); - ToggleTabConstellation(false); - - // Create a timer to update plots at the specified rate - displayTimer = new QTimer(this); - connect(displayTimer, SIGNAL(timeout()), this, SLOT(UpdateGuiTimer())); -} - -SpectrumDisplayForm::~SpectrumDisplayForm() -{ - // Qt deletes children when parent is deleted - - // Don't worry about deleting Display Plots - they are deleted when parents are deleted - delete _intValidator; - - delete[] _realFFTDataPoints; - delete[] _averagedValues; - - for(unsigned int count = 0; count < _historyVector->size(); count++){ - delete[] _historyVector->operator[](count); - } - - delete _historyVector; - - displayTimer->stop(); - delete displayTimer; -} - -void -SpectrumDisplayForm::setSystem( SpectrumGUIClass * newSystem, - const uint64_t numFFTDataPoints, - const uint64_t numTimeDomainDataPoints ) -{ - ResizeBuffers(numFFTDataPoints, numTimeDomainDataPoints); - - if(newSystem != NULL){ - _system = newSystem; - _systemSpecifiedFlag = true; - } - else{ - _systemSpecifiedFlag = false; - } -} - -void -SpectrumDisplayForm::newFrequencyData( const SpectrumUpdateEvent* spectrumUpdateEvent) -{ - //_lastSpectrumEvent = (SpectrumUpdateEvent)(*spectrumUpdateEvent); - const std::complex<float>* complexDataPoints = spectrumUpdateEvent->getFFTPoints(); - const uint64_t numFFTDataPoints = spectrumUpdateEvent->getNumFFTDataPoints(); - const double* realTimeDomainDataPoints = spectrumUpdateEvent->getRealTimeDomainPoints(); - const double* imagTimeDomainDataPoints = spectrumUpdateEvent->getImagTimeDomainPoints(); - const uint64_t numTimeDomainDataPoints = spectrumUpdateEvent->getNumTimeDomainDataPoints(); - const timespec dataTimestamp = spectrumUpdateEvent->getDataTimestamp(); - const bool repeatDataFlag = spectrumUpdateEvent->getRepeatDataFlag(); - const bool lastOfMultipleUpdatesFlag = spectrumUpdateEvent->getLastOfMultipleUpdateFlag(); - const timespec generatedTimestamp = spectrumUpdateEvent->getEventGeneratedTimestamp(); - - // REMEMBER: The dataTimestamp is NOT valid when the repeat data flag is true... - ResizeBuffers(numFFTDataPoints, numTimeDomainDataPoints); - - // Calculate the Magnitude of the complex point - const std::complex<float>* complexDataPointsPtr = complexDataPoints+numFFTDataPoints/2; - double* realFFTDataPointsPtr = _realFFTDataPoints; - - double sumMean = 0.0; - double localPeakAmplitude = -HUGE_VAL; - double localPeakFrequency = 0.0; - const double fftBinSize = (_stopFrequency-_startFrequency) / - static_cast<double>(numFFTDataPoints); - - // Run this twice to perform the fftshift operation on the data here as well - std::complex<float> scaleFactor = std::complex<float>((float)numFFTDataPoints); - for(uint64_t point = 0; point < numFFTDataPoints/2; point++){ - std::complex<float> pt = (*complexDataPointsPtr) / scaleFactor; - *realFFTDataPointsPtr = 10.0*log10((pt.real() * pt.real() + pt.imag()*pt.imag()) + 1e-20); - - if(*realFFTDataPointsPtr > localPeakAmplitude) { - localPeakFrequency = static_cast<float>(point) * fftBinSize; - localPeakAmplitude = *realFFTDataPointsPtr; - } - sumMean += *realFFTDataPointsPtr; - - complexDataPointsPtr++; - realFFTDataPointsPtr++; - } - - // This loop takes the first half of the input data and puts it in the - // second half of the plotted data - complexDataPointsPtr = complexDataPoints; - for(uint64_t point = 0; point < numFFTDataPoints/2; point++){ - std::complex<float> pt = (*complexDataPointsPtr) / scaleFactor; - *realFFTDataPointsPtr = 10.0*log10((pt.real() * pt.real() + pt.imag()*pt.imag()) + 1e-20); - - if(*realFFTDataPointsPtr > localPeakAmplitude) { - localPeakFrequency = static_cast<float>(point) * fftBinSize; - localPeakAmplitude = *realFFTDataPointsPtr; - } - sumMean += *realFFTDataPointsPtr; - - complexDataPointsPtr++; - realFFTDataPointsPtr++; - } - - // Don't update the averaging history if this is repeated data - if(!repeatDataFlag){ - _AverageHistory(_realFFTDataPoints); - - // Only use the local info if we are not repeating data - _peakAmplitude = localPeakAmplitude; - _peakFrequency = localPeakFrequency; - - // calculate the spectral mean - // +20 because for the comparison below we only want to throw out bins - // that are significantly higher (and would, thus, affect the mean more) - const double meanAmplitude = (sumMean / numFFTDataPoints) + 20.0; - - // now throw out any bins higher than the mean - sumMean = 0.0; - uint64_t newNumDataPoints = numFFTDataPoints; - for(uint64_t number = 0; number < numFFTDataPoints; number++){ - if (_realFFTDataPoints[number] <= meanAmplitude) - sumMean += _realFFTDataPoints[number]; - else - newNumDataPoints--; - } - - if (newNumDataPoints == 0) // in the odd case that all - _noiseFloorAmplitude = meanAmplitude; // amplitudes are equal! - else - _noiseFloorAmplitude = sumMean / newNumDataPoints; - } - - if(lastOfMultipleUpdatesFlag){ - int tabindex = SpectrumTypeTab->currentIndex(); - if(tabindex == d_plot_fft) { - _frequencyDisplayPlot->PlotNewData(_averagedValues, numFFTDataPoints, - _noiseFloorAmplitude, _peakFrequency, - _peakAmplitude, d_update_time); - } - if(tabindex == d_plot_time) { - _timeDomainDisplayPlot->PlotNewData(realTimeDomainDataPoints, - imagTimeDomainDataPoints, - numTimeDomainDataPoints, - d_update_time); - } - if(tabindex == d_plot_constellation) { - _constellationDisplayPlot->PlotNewData(realTimeDomainDataPoints, - imagTimeDomainDataPoints, - numTimeDomainDataPoints, - d_update_time); - } - - // Don't update the repeated data for the waterfall - if(!repeatDataFlag){ - if(tabindex == d_plot_waterfall) { - _waterfallDisplayPlot->PlotNewData(_realFFTDataPoints, numFFTDataPoints, - d_update_time, dataTimestamp, - spectrumUpdateEvent->getDroppedFFTFrames()); - } - } - - - // Tell the system the GUI has been updated - if(_systemSpecifiedFlag){ - _system->SetLastGUIUpdateTime(generatedTimestamp); - _system->DecrementPendingGUIUpdateEvents(); - } - } -} - -void -SpectrumDisplayForm::resizeEvent( QResizeEvent *e ) -{ - QSize s; - s.setWidth(FrequencyPlotDisplayFrame->width()); - s.setHeight(FrequencyPlotDisplayFrame->height()); - emit _frequencyDisplayPlot->resizeSlot(&s); - - s.setWidth(TimeDomainDisplayFrame->width()); - s.setHeight(TimeDomainDisplayFrame->height()); - emit _timeDomainDisplayPlot->resizeSlot(&s); - - s.setWidth(WaterfallPlotDisplayFrame->width()); - s.setHeight(WaterfallPlotDisplayFrame->height()); - emit _waterfallDisplayPlot->resizeSlot(&s); - - s.setWidth(ConstellationDisplayFrame->width()); - s.setHeight(ConstellationDisplayFrame->height()); - emit _constellationDisplayPlot->resizeSlot(&s); -} - -void -SpectrumDisplayForm::customEvent( QEvent * e) -{ - if(e->type() == QEvent::User+3){ - if(_systemSpecifiedFlag){ - WindowComboBox->setCurrentIndex(_system->GetWindowType()); - FFTSizeComboBox->setCurrentIndex(_system->GetFFTSizeIndex()); - //FFTSizeComboBox->setCurrentIndex(1); - } - - waterfallMinimumIntensityChangedCB(WaterfallMinimumIntensityWheel->value()); - waterfallMaximumIntensityChangedCB(WaterfallMaximumIntensityWheel->value()); - - // Clear any previous display - Reset(); - } - else if(e->type() == 10005){ - SpectrumUpdateEvent* spectrumUpdateEvent = (SpectrumUpdateEvent*)e; - newFrequencyData(spectrumUpdateEvent); - } - else if(e->type() == 10008){ - setWindowTitle(((SpectrumWindowCaptionEvent*)e)->getLabel()); - } - else if(e->type() == 10009){ - Reset(); - if(_systemSpecifiedFlag){ - _system->ResetPendingGUIUpdateEvents(); - } - } - else if(e->type() == 10010){ - _startFrequency = ((SpectrumFrequencyRangeEvent*)e)->GetStartFrequency(); - _stopFrequency = ((SpectrumFrequencyRangeEvent*)e)->GetStopFrequency(); - _centerFrequency = ((SpectrumFrequencyRangeEvent*)e)->GetCenterFrequency(); - - UseRFFrequenciesCB(UseRFFrequenciesCheckBox->isChecked()); - } -} - -void -SpectrumDisplayForm::UpdateGuiTimer() -{ - // This is called by the displayTimer and redraws the canvases of - // all of the plots. - _frequencyDisplayPlot->canvas()->update(); - _waterfallDisplayPlot->canvas()->update(); - _timeDomainDisplayPlot->canvas()->update(); - _constellationDisplayPlot->canvas()->update(); -} - - -void -SpectrumDisplayForm::AvgLineEdit_valueChanged( int value ) -{ - SetAverageCount(value); -} - - -void -SpectrumDisplayForm::MaxHoldCheckBox_toggled( bool newState ) -{ - MaxHoldResetBtn->setEnabled(newState); - _frequencyDisplayPlot->SetMaxFFTVisible(newState); - MaxHoldResetBtn_clicked(); -} - - -void -SpectrumDisplayForm::MinHoldCheckBox_toggled( bool newState ) -{ - MinHoldResetBtn->setEnabled(newState); - _frequencyDisplayPlot->SetMinFFTVisible(newState); - MinHoldResetBtn_clicked(); -} - - -void -SpectrumDisplayForm::MinHoldResetBtn_clicked() -{ - _frequencyDisplayPlot->ClearMinData(); - _frequencyDisplayPlot->replot(); -} - - -void -SpectrumDisplayForm::MaxHoldResetBtn_clicked() -{ - _frequencyDisplayPlot->ClearMaxData(); - _frequencyDisplayPlot->replot(); -} - - -void -SpectrumDisplayForm::TabChanged(int index) -{ - // This might be dangerous to call this with NULL - resizeEvent(NULL); -} - -void -SpectrumDisplayForm::SetFrequencyRange(const double newCenterFrequency, - const double newStartFrequency, - const double newStopFrequency) -{ - double fdiff; - if(UseRFFrequenciesCheckBox->isChecked()) { - fdiff = newCenterFrequency; - } - else { - fdiff = std::max(fabs(newStartFrequency), fabs(newStopFrequency)); - } - - if(fdiff > 0) { - std::string strunits[4] = {"Hz", "kHz", "MHz", "GHz"}; - std::string strtime[4] = {"sec", "ms", "us", "ns"}; - double units10 = floor(log10(fdiff)); - double units3 = std::max(floor(units10 / 3.0), 0.0); - double units = pow(10, (units10-fmod(units10, 3.0))); - int iunit = static_cast<int>(units3); - - _startFrequency = newStartFrequency; - _stopFrequency = newStopFrequency; - _centerFrequency = newCenterFrequency; - - _frequencyDisplayPlot->SetFrequencyRange(_startFrequency, - _stopFrequency, - _centerFrequency, - UseRFFrequenciesCheckBox->isChecked(), - units, strunits[iunit]); - _waterfallDisplayPlot->SetFrequencyRange(_startFrequency, - _stopFrequency, - _centerFrequency, - UseRFFrequenciesCheckBox->isChecked(), - units, strunits[iunit]); - _timeDomainDisplayPlot->SetSampleRate(_stopFrequency - _startFrequency, - units, strtime[iunit]); - } -} - -int -SpectrumDisplayForm::GetAverageCount() -{ - return _historyVector->size(); -} - -void -SpectrumDisplayForm::SetAverageCount(const int newCount) -{ - if(newCount > -1){ - if(newCount != static_cast<int>(_historyVector->size())){ - std::vector<double*>::iterator pos; - while(newCount < static_cast<int>(_historyVector->size())){ - pos = _historyVector->begin(); - delete[] (*pos); - _historyVector->erase(pos); - } - - while(newCount > static_cast<int>(_historyVector->size())){ - _historyVector->push_back(new double[_numRealDataPoints]); - } - AverageDataReset(); - } - } -} - -void -SpectrumDisplayForm::_AverageHistory(const double* newBuffer) -{ - if(_numRealDataPoints > 0){ - if(_historyVector->size() > 0){ - memcpy(_historyVector->operator[](_historyEntry), newBuffer, - _numRealDataPoints*sizeof(double)); - - // Increment the next location to store data - _historyEntryCount++; - if(_historyEntryCount > static_cast<int>(_historyVector->size())){ - _historyEntryCount = _historyVector->size(); - } - _historyEntry = (++_historyEntry)%_historyVector->size(); - - // Total up and then average the values - double sum; - for(uint64_t location = 0; location < _numRealDataPoints; location++){ - sum = 0; - for(int number = 0; number < _historyEntryCount; number++){ - sum += _historyVector->operator[](number)[location]; - } - _averagedValues[location] = sum/static_cast<double>(_historyEntryCount); - } - } - else{ - memcpy(_averagedValues, newBuffer, _numRealDataPoints*sizeof(double)); - } - } -} - -void -SpectrumDisplayForm::ResizeBuffers( const uint64_t numFFTDataPoints, - const uint64_t /*numTimeDomainDataPoints*/ ) -{ - // Convert from Complex to Real for certain Displays - if(_numRealDataPoints != numFFTDataPoints){ - _numRealDataPoints = numFFTDataPoints; - delete[] _realFFTDataPoints; - delete[] _averagedValues; - - _realFFTDataPoints = new double[_numRealDataPoints]; - _averagedValues = new double[_numRealDataPoints]; - memset(_realFFTDataPoints, 0x0, _numRealDataPoints*sizeof(double)); - - const int historySize = _historyVector->size(); - SetAverageCount(0); // Clear the existing history - SetAverageCount(historySize); - - Reset(); - } -} - -void -SpectrumDisplayForm::Reset() -{ - AverageDataReset(); - - _waterfallDisplayPlot->Reset(); -} - - -void -SpectrumDisplayForm::AverageDataReset() -{ - _historyEntry = 0; - _historyEntryCount = 0; - - memset(_averagedValues, 0x0, _numRealDataPoints*sizeof(double)); - - MaxHoldResetBtn_clicked(); - MinHoldResetBtn_clicked(); -} - - -void -SpectrumDisplayForm::closeEvent( QCloseEvent *e ) -{ - if(_systemSpecifiedFlag){ - _system->SetWindowOpenFlag(false); - } - - qApp->processEvents(); - - QWidget::closeEvent(e); -} - - -void -SpectrumDisplayForm::WindowTypeChanged( int newItem ) -{ - if(_systemSpecifiedFlag){ - _system->SetWindowType(newItem); - } -} - - -void -SpectrumDisplayForm::UseRFFrequenciesCB( bool useRFFlag ) -{ - SetFrequencyRange(_centerFrequency, _startFrequency, _stopFrequency); -} - - -void -SpectrumDisplayForm::waterfallMaximumIntensityChangedCB( double newValue ) -{ - if(newValue > WaterfallMinimumIntensityWheel->value()){ - WaterfallMaximumIntensityLabel->setText(QString("%1 dB").arg(newValue, 0, 'f', 0)); - } - else{ - WaterfallMaximumIntensityWheel->setValue(WaterfallMinimumIntensityWheel->value()); - } - - _waterfallDisplayPlot->SetIntensityRange(WaterfallMinimumIntensityWheel->value(), - WaterfallMaximumIntensityWheel->value()); -} - - -void -SpectrumDisplayForm::waterfallMinimumIntensityChangedCB( double newValue ) -{ - if(newValue < WaterfallMaximumIntensityWheel->value()){ - WaterfallMinimumIntensityLabel->setText(QString("%1 dB").arg(newValue, 0, 'f', 0)); - } - else{ - WaterfallMinimumIntensityWheel->setValue(WaterfallMaximumIntensityWheel->value()); - } - - _waterfallDisplayPlot->SetIntensityRange(WaterfallMinimumIntensityWheel->value(), - WaterfallMaximumIntensityWheel->value()); -} - -void -SpectrumDisplayForm::FFTComboBoxSelectedCB( const QString &fftSizeString ) -{ - if(_systemSpecifiedFlag){ - _system->SetFFTSize(fftSizeString.toLong()); - } -} - - -void -SpectrumDisplayForm::WaterfallAutoScaleBtnCB() -{ - double minimumIntensity = _noiseFloorAmplitude - 5; - if(minimumIntensity < WaterfallMinimumIntensityWheel->minValue()){ - minimumIntensity = WaterfallMinimumIntensityWheel->minValue(); - } - WaterfallMinimumIntensityWheel->setValue(minimumIntensity); - double maximumIntensity = _peakAmplitude + 10; - if(maximumIntensity > WaterfallMaximumIntensityWheel->maxValue()){ - maximumIntensity = WaterfallMaximumIntensityWheel->maxValue(); - } - WaterfallMaximumIntensityWheel->setValue(maximumIntensity); - waterfallMaximumIntensityChangedCB(maximumIntensity); -} - -void -SpectrumDisplayForm::WaterfallIntensityColorTypeChanged( int newType ) -{ - QColor lowIntensityColor; - QColor highIntensityColor; - if(newType == WaterfallDisplayPlot::INTENSITY_COLOR_MAP_TYPE_USER_DEFINED){ - // Select the Low Intensity Color - lowIntensityColor = _waterfallDisplayPlot->GetUserDefinedLowIntensityColor(); - if(!lowIntensityColor.isValid()){ - lowIntensityColor = Qt::black; - } - QMessageBox::information(this, "Low Intensity Color Selection", "In the next window, select the low intensity color for the waterfall display", QMessageBox::Ok); - lowIntensityColor = QColorDialog::getColor(lowIntensityColor, this); - - // Select the High Intensity Color - highIntensityColor = _waterfallDisplayPlot->GetUserDefinedHighIntensityColor(); - if(!highIntensityColor.isValid()){ - highIntensityColor = Qt::white; - } - QMessageBox::information(this, "High Intensity Color Selection", "In the next window, select the high intensity color for the waterfall display", QMessageBox::Ok); - highIntensityColor = QColorDialog::getColor(highIntensityColor, this); - } - - _waterfallDisplayPlot->SetIntensityColorMapType(newType, lowIntensityColor, highIntensityColor); -} - -void -SpectrumDisplayForm::ToggleTabFrequency(const bool state) -{ - if(state == true) { - if(d_plot_fft == -1) { - SpectrumTypeTab->addTab(FrequencyPage, "Frequency Display"); - d_plot_fft = SpectrumTypeTab->count()-1; - } - } - else { - SpectrumTypeTab->removeTab(SpectrumTypeTab->indexOf(FrequencyPage)); - d_plot_fft = -1; - } -} - -void -SpectrumDisplayForm::ToggleTabWaterfall(const bool state) -{ - if(state == true) { - if(d_plot_waterfall == -1) { - SpectrumTypeTab->addTab(WaterfallPage, "Waterfall Display"); - d_plot_waterfall = SpectrumTypeTab->count()-1; - } - } - else { - SpectrumTypeTab->removeTab(SpectrumTypeTab->indexOf(WaterfallPage)); - d_plot_waterfall = -1; - } -} - -void -SpectrumDisplayForm::ToggleTabTime(const bool state) -{ - if(state == true) { - if(d_plot_time == -1) { - SpectrumTypeTab->addTab(TimeDomainPage, "Time Domain Display"); - d_plot_time = SpectrumTypeTab->count()-1; - } - } - else { - SpectrumTypeTab->removeTab(SpectrumTypeTab->indexOf(TimeDomainPage)); - d_plot_time = -1; - } -} - -void -SpectrumDisplayForm::ToggleTabConstellation(const bool state) -{ - if(state == true) { - if(d_plot_constellation == -1) { - SpectrumTypeTab->addTab(ConstellationPage, "Constellation Display"); - d_plot_constellation = SpectrumTypeTab->count()-1; - } - } - else { - SpectrumTypeTab->removeTab(SpectrumTypeTab->indexOf(ConstellationPage)); - d_plot_constellation = -1; - } -} - - -void -SpectrumDisplayForm::SetTimeDomainAxis(double min, double max) -{ - _timeDomainDisplayPlot->set_yaxis(min, max); -} - -void -SpectrumDisplayForm::SetConstellationAxis(double xmin, double xmax, - double ymin, double ymax) -{ - _constellationDisplayPlot->set_axis(xmin, xmax, ymin, ymax); -} - -void -SpectrumDisplayForm::SetConstellationPenSize(int size) -{ - _constellationDisplayPlot->set_pen_size( size ); -} - -void -SpectrumDisplayForm::SetFrequencyAxis(double min, double max) -{ - _frequencyDisplayPlot->set_yaxis(min, max); -} - -void -SpectrumDisplayForm::SetUpdateTime(double t) -{ - d_update_time = t; - // QTimer class takes millisecond input - displayTimer->start(d_update_time*1000); -} |