This checkin also disables the Waterfall3D plotting. It wasn't working anyway, but was also causing its own segfault upon deletion. Once it's working and deleting nicely, it will be re-enabled.
WaterfallDisplayPlot::~WaterfallDisplayPlot()
{
delete _waterfallData;
WaterfallDisplayPlot::~WaterfallDisplayPlot()
{
delete _waterfallData;
qtgui_sink_c::~qtgui_sink_c()
{
qtgui_sink_c::~qtgui_sink_c()
{
delete [] d_residbuf;
delete d_fft;
}
delete [] d_residbuf;
delete d_fft;
}
qtgui_sink_f::~qtgui_sink_f()
{
qtgui_sink_f::~qtgui_sink_f()
{
delete [] d_residbuf;
delete d_fft;
}
delete [] d_residbuf;
delete d_fft;
}
_waterfallDisplayPlot = new WaterfallDisplayPlot(WaterfallPlotDisplayFrame);
if((QGLFormat::hasOpenGL()) && (_useOpenGL)) {
_waterfallDisplayPlot = new WaterfallDisplayPlot(WaterfallPlotDisplayFrame);
if((QGLFormat::hasOpenGL()) && (_useOpenGL)) {
- _waterfall3DDisplayPlot = new Waterfall3DDisplayPlot(Waterfall3DPlotDisplayFrame);
+ //_waterfall3DDisplayPlot = new Waterfall3DDisplayPlot(Waterfall3DPlotDisplayFrame);
}
_timeDomainDisplayPlot = new TimeDomainDisplayPlot(TimeDomainDisplayFrame);
}
_timeDomainDisplayPlot = new TimeDomainDisplayPlot(TimeDomainDisplayFrame);
// Qt deletes children when parent is deleted
// Don't worry about deleting Display Plots - they are deleted when parents are deleted
// 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;
delete[] _realFFTDataPoints;
delete[] _averagedValues;
}
if((QGLFormat::hasOpenGL()) && (_useOpenGL)) {
if( _openGLWaterfall3DFlag == 1 && (tabindex == d_plot_waterfall3d)) {
}
if((QGLFormat::hasOpenGL()) && (_useOpenGL)) {
if( _openGLWaterfall3DFlag == 1 && (tabindex == d_plot_waterfall3d)) {
_waterfall3DDisplayPlot->PlotNewData(_realFFTDataPoints, numFFTDataPoints,
d_update_time, dataTimestamp,
spectrumUpdateEvent->getDroppedFFTFrames());
_waterfall3DDisplayPlot->PlotNewData(_realFFTDataPoints, numFFTDataPoints,
d_update_time, dataTimestamp,
spectrumUpdateEvent->getDroppedFFTFrames());
if((QGLFormat::hasOpenGL()) && (_useOpenGL)) {
s.setWidth(Waterfall3DPlotDisplayFrame->width());
s.setHeight(Waterfall3DPlotDisplayFrame->height());
if((QGLFormat::hasOpenGL()) && (_useOpenGL)) {
s.setWidth(Waterfall3DPlotDisplayFrame->width());
s.setHeight(Waterfall3DPlotDisplayFrame->height());
- emit _waterfall3DDisplayPlot->resizeSlot(&s);
+ //emit _waterfall3DDisplayPlot->resizeSlot(&s);
}
s.setWidth(ConstellationDisplayFrame->width());
}
s.setWidth(ConstellationDisplayFrame->width());
waterfall3DMaximumIntensityChangedCB(Waterfall3DMaximumIntensityWheel->value());
// Check for Hardware Acceleration of the OpenGL
waterfall3DMaximumIntensityChangedCB(Waterfall3DMaximumIntensityWheel->value());
// Check for Hardware Acceleration of the OpenGL
if(!_waterfall3DDisplayPlot->format().directRendering()){
// Only ask this once while the program is running...
if(_openGLWaterfall3DFlag == -1){
if(!_waterfall3DDisplayPlot->format().directRendering()){
// Only ask this once while the program is running...
if(_openGLWaterfall3DFlag == -1){
else{
_openGLWaterfall3DFlag = 1;
}
else{
_openGLWaterfall3DFlag = 1;
}
}
if(_openGLWaterfall3DFlag != 1){
}
if(_openGLWaterfall3DFlag != 1){
UseRFFrequenciesCheckBox->isChecked(),
units, strunits[iunit]);
if((QGLFormat::hasOpenGL()) && (_useOpenGL)) {
UseRFFrequenciesCheckBox->isChecked(),
units, strunits[iunit]);
if((QGLFormat::hasOpenGL()) && (_useOpenGL)) {
_waterfall3DDisplayPlot->SetFrequencyRange(_startFrequency,
_stopFrequency,
_centerFrequency,
UseRFFrequenciesCheckBox->isChecked(),
units, strunits[iunit]);
_waterfall3DDisplayPlot->SetFrequencyRange(_startFrequency,
_stopFrequency,
_centerFrequency,
UseRFFrequenciesCheckBox->isChecked(),
units, strunits[iunit]);
}
_timeDomainDisplayPlot->SetSampleRate(_stopFrequency - _startFrequency,
units, strtime[iunit]);
}
_timeDomainDisplayPlot->SetSampleRate(_stopFrequency - _startFrequency,
units, strtime[iunit]);
_waterfallDisplayPlot->Reset();
if((QGLFormat::hasOpenGL()) && (_useOpenGL)) {
_waterfallDisplayPlot->Reset();
if((QGLFormat::hasOpenGL()) && (_useOpenGL)) {
- _waterfall3DDisplayPlot->Reset();
+ //_waterfall3DDisplayPlot->Reset();
else{
Waterfall3DMaximumIntensityWheel->setValue(Waterfall3DMinimumIntensityWheel->value());
}
else{
Waterfall3DMaximumIntensityWheel->setValue(Waterfall3DMinimumIntensityWheel->value());
}
_waterfall3DDisplayPlot->SetIntensityRange(Waterfall3DMinimumIntensityWheel->value(),
Waterfall3DMaximumIntensityWheel->value());
_waterfall3DDisplayPlot->SetIntensityRange(Waterfall3DMinimumIntensityWheel->value(),
Waterfall3DMaximumIntensityWheel->value());
else{
Waterfall3DMinimumIntensityWheel->setValue(Waterfall3DMaximumIntensityWheel->value());
}
else{
Waterfall3DMinimumIntensityWheel->setValue(Waterfall3DMaximumIntensityWheel->value());
}
_waterfall3DDisplayPlot->SetIntensityRange(Waterfall3DMinimumIntensityWheel->value(),
Waterfall3DMaximumIntensityWheel->value());
_waterfall3DDisplayPlot->SetIntensityRange(Waterfall3DMinimumIntensityWheel->value(),
Waterfall3DMaximumIntensityWheel->value());
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);
}
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);
}
_waterfall3DDisplayPlot->SetIntensityColorMapType(newType, lowIntensityColor,
highIntensityColor);
_waterfall3DDisplayPlot->SetIntensityColorMapType(newType, lowIntensityColor,
highIntensityColor);
SpectrumDisplayForm::ToggleTabWaterfall3D(const bool state)
{
if(state == true) {
SpectrumDisplayForm::ToggleTabWaterfall3D(const bool state)
{
if(state == true) {
if((QGLFormat::hasOpenGL()) && (_useOpenGL)) {
if(d_plot_waterfall3d == -1) {
SpectrumTypeTab->addTab(Waterfall3DPage, "3D Waterfall Display");
d_plot_waterfall3d = SpectrumTypeTab->count()-1;
}
}
if((QGLFormat::hasOpenGL()) && (_useOpenGL)) {
if(d_plot_waterfall3d == -1) {
SpectrumTypeTab->addTab(Waterfall3DPage, "3D Waterfall Display");
d_plot_waterfall3d = SpectrumTypeTab->count()-1;
}
}
+ */
+ SpectrumTypeTab->removeTab(SpectrumTypeTab->indexOf(Waterfall3DPage));
+ d_plot_waterfall3d = -1;
+ fprintf(stderr, "\nWARNING: The Waterfall3D plot has been disabled until we get it working.\n\n");
}
else {
SpectrumTypeTab->removeTab(SpectrumTypeTab->indexOf(Waterfall3DPage));
}
else {
SpectrumTypeTab->removeTab(SpectrumTypeTab->indexOf(Waterfall3DPage));