mirror of
https://github.com/f4exb/sdrangel.git
synced 2025-05-24 11:12:27 -04:00
GLScope redesign: removed SpectrumScopeComboVis
This commit is contained in:
parent
eb811c1e56
commit
ccb7633154
@ -62,7 +62,7 @@ public:
|
|||||||
virtual void destroy() { delete this; }
|
virtual void destroy() { delete this; }
|
||||||
SpectrumVis *getSpectrumVis() { return &m_spectrumVis; }
|
SpectrumVis *getSpectrumVis() { return &m_spectrumVis; }
|
||||||
ScopeVis *getScopeVis() { return &m_scopeVis; }
|
ScopeVis *getScopeVis() { return &m_scopeVis; }
|
||||||
void setSampleSink(BasebandSampleSink *sink) { m_basebandSink->setSampleSink(sink); }
|
void setScopeVis(ScopeVis *scopeVis) { m_basebandSink->setScopeVis(scopeVis); }
|
||||||
|
|
||||||
int getChannelSampleRate() const { return m_basebandSink->getChannelSampleRate(); }
|
int getChannelSampleRate() const { return m_basebandSink->getChannelSampleRate(); }
|
||||||
int getDecimation() const { return 1<<m_settings.m_log2Decim; }
|
int getDecimation() const { return 1<<m_settings.m_log2Decim; }
|
||||||
|
@ -67,7 +67,7 @@ public:
|
|||||||
int getChannelSampleRate() const;
|
int getChannelSampleRate() const;
|
||||||
double getMagSq() { return m_sink.getMagSq(); }
|
double getMagSq() { return m_sink.getMagSq(); }
|
||||||
double getMagSqAvg() const { return (double) m_sink.getMagSqAvg(); }
|
double getMagSqAvg() const { return (double) m_sink.getMagSqAvg(); }
|
||||||
void setSampleSink(BasebandSampleSink* sampleSink) { m_sink.setSampleSink(sampleSink); }
|
void setScopeVis(ScopeVis *scopeVis) { m_sink.setScopeVis(scopeVis); }
|
||||||
bool isPllLocked() const { return m_sink.isPllLocked(); }
|
bool isPllLocked() const { return m_sink.isPllLocked(); }
|
||||||
Real getPllFrequency() const { return m_sink.getPllFrequency(); }
|
Real getPllFrequency() const { return m_sink.getPllFrequency(); }
|
||||||
Real getPllDeltaPhase() const { return m_sink.getPllDeltaPhase(); }
|
Real getPllDeltaPhase() const { return m_sink.getPllDeltaPhase(); }
|
||||||
|
@ -19,7 +19,6 @@
|
|||||||
#include <QMainWindow>
|
#include <QMainWindow>
|
||||||
|
|
||||||
#include "device/deviceuiset.h"
|
#include "device/deviceuiset.h"
|
||||||
#include "dsp/spectrumscopecombovis.h"
|
|
||||||
#include "dsp/spectrumvis.h"
|
#include "dsp/spectrumvis.h"
|
||||||
#include "dsp/dspengine.h"
|
#include "dsp/dspengine.h"
|
||||||
#include "dsp/dspcommands.h"
|
#include "dsp/dspcommands.h"
|
||||||
@ -475,9 +474,9 @@ ChannelAnalyzerGUI::ChannelAnalyzerGUI(PluginAPI* pluginAPI, DeviceUISet *device
|
|||||||
m_spectrumVis->setGLSpectrum(ui->glSpectrum);
|
m_spectrumVis->setGLSpectrum(ui->glSpectrum);
|
||||||
m_scopeVis = m_channelAnalyzer->getScopeVis();
|
m_scopeVis = m_channelAnalyzer->getScopeVis();
|
||||||
m_scopeVis->setGLScope(ui->glScope);
|
m_scopeVis->setGLScope(ui->glScope);
|
||||||
m_spectrumScopeComboVis = new SpectrumScopeComboVis(m_spectrumVis, m_scopeVis);
|
|
||||||
m_basebandSampleRate = m_channelAnalyzer->getChannelSampleRate();
|
m_basebandSampleRate = m_channelAnalyzer->getChannelSampleRate();
|
||||||
m_channelAnalyzer->setSampleSink(m_spectrumScopeComboVis);
|
m_scopeVis->setSpectrumVis(m_spectrumVis);
|
||||||
|
m_channelAnalyzer->setScopeVis(m_scopeVis);
|
||||||
m_channelAnalyzer->setMessageQueueToGUI(getInputMessageQueue());
|
m_channelAnalyzer->setMessageQueueToGUI(getInputMessageQueue());
|
||||||
|
|
||||||
ui->deltaFrequencyLabel->setText(QString("%1f").arg(QChar(0x94, 0x03)));
|
ui->deltaFrequencyLabel->setText(QString("%1f").arg(QChar(0x94, 0x03)));
|
||||||
@ -529,7 +528,6 @@ ChannelAnalyzerGUI::~ChannelAnalyzerGUI()
|
|||||||
qDebug("ChannelAnalyzerGUI::~ChannelAnalyzerGUI");
|
qDebug("ChannelAnalyzerGUI::~ChannelAnalyzerGUI");
|
||||||
ui->glScope->disconnectTimer();
|
ui->glScope->disconnectTimer();
|
||||||
delete ui;
|
delete ui;
|
||||||
delete m_spectrumScopeComboVis;
|
|
||||||
qDebug("ChannelAnalyzerGUI::~ChannelAnalyzerGUI: done");
|
qDebug("ChannelAnalyzerGUI::~ChannelAnalyzerGUI: done");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -30,7 +30,6 @@ class PluginAPI;
|
|||||||
class DeviceUISet;
|
class DeviceUISet;
|
||||||
class BasebandSampleSink;
|
class BasebandSampleSink;
|
||||||
class ChannelAnalyzer;
|
class ChannelAnalyzer;
|
||||||
class SpectrumScopeComboVis;
|
|
||||||
class SpectrumVis;
|
class SpectrumVis;
|
||||||
class ScopeVis;
|
class ScopeVis;
|
||||||
|
|
||||||
@ -65,7 +64,6 @@ private:
|
|||||||
MovingAverageUtil<double, double, 40> m_channelPowerAvg;
|
MovingAverageUtil<double, double, 40> m_channelPowerAvg;
|
||||||
|
|
||||||
ChannelAnalyzer* m_channelAnalyzer;
|
ChannelAnalyzer* m_channelAnalyzer;
|
||||||
SpectrumScopeComboVis* m_spectrumScopeComboVis;
|
|
||||||
SpectrumVis* m_spectrumVis;
|
SpectrumVis* m_spectrumVis;
|
||||||
ScopeVis* m_scopeVis;
|
ScopeVis* m_scopeVis;
|
||||||
MessageQueue m_inputMessageQueue;
|
MessageQueue m_inputMessageQueue;
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
#include "dsp/basebandsamplesink.h"
|
#include "dsp/scopevis.h"
|
||||||
|
|
||||||
const unsigned int ChannelAnalyzerSink::m_ssbFftLen = 1024;
|
const unsigned int ChannelAnalyzerSink::m_ssbFftLen = 1024;
|
||||||
const unsigned int ChannelAnalyzerSink::m_corrFFTLen = 4*m_ssbFftLen;
|
const unsigned int ChannelAnalyzerSink::m_corrFFTLen = 4*m_ssbFftLen;
|
||||||
@ -31,7 +31,7 @@ ChannelAnalyzerSink::ChannelAnalyzerSink() :
|
|||||||
m_channelFrequencyOffset(0),
|
m_channelFrequencyOffset(0),
|
||||||
m_sinkSampleRate(48000),
|
m_sinkSampleRate(48000),
|
||||||
m_costasLoop(0.002, 2),
|
m_costasLoop(0.002, 2),
|
||||||
m_sampleSink(nullptr)
|
m_scopeVis(nullptr)
|
||||||
{
|
{
|
||||||
m_usb = true;
|
m_usb = true;
|
||||||
m_magsq = 0;
|
m_magsq = 0;
|
||||||
@ -90,8 +90,11 @@ void ChannelAnalyzerSink::feed(const SampleVector::const_iterator& begin, const
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_sampleSink) {
|
if (m_scopeVis)
|
||||||
m_sampleSink->feed(m_sampleBuffer.begin(), m_sampleBuffer.end(), m_settings.m_ssb); // m_ssb = positive only
|
{
|
||||||
|
std::vector<SampleVector::const_iterator> vbegin;
|
||||||
|
vbegin.push_back(m_sampleBuffer.begin());
|
||||||
|
m_scopeVis->feed(vbegin, m_sampleBuffer.end() - m_sampleBuffer.begin());
|
||||||
}
|
}
|
||||||
|
|
||||||
m_sampleBuffer.clear();
|
m_sampleBuffer.clear();
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
|
|
||||||
#include "chanalyzersettings.h"
|
#include "chanalyzersettings.h"
|
||||||
|
|
||||||
class BasebandSampleSink;
|
class ScopeVis;
|
||||||
|
|
||||||
class ChannelAnalyzerSink : public ChannelSampleSink {
|
class ChannelAnalyzerSink : public ChannelSampleSink {
|
||||||
public:
|
public:
|
||||||
@ -51,7 +51,7 @@ public:
|
|||||||
Real getPllFrequency() const;
|
Real getPllFrequency() const;
|
||||||
Real getPllDeltaPhase() const;
|
Real getPllDeltaPhase() const;
|
||||||
Real getPllPhase() const;
|
Real getPllPhase() const;
|
||||||
void setSampleSink(BasebandSampleSink* sampleSink) { m_sampleSink = sampleSink; }
|
void setScopeVis(ScopeVis* scopeVis) { m_scopeVis = scopeVis; }
|
||||||
|
|
||||||
static const unsigned int m_corrFFTLen;
|
static const unsigned int m_corrFFTLen;
|
||||||
static const unsigned int m_ssbFftLen;
|
static const unsigned int m_ssbFftLen;
|
||||||
@ -82,7 +82,7 @@ private:
|
|||||||
SampleVector m_sampleBuffer;
|
SampleVector m_sampleBuffer;
|
||||||
MovingAverageUtil<double, double, 480> m_channelPowerAvg;
|
MovingAverageUtil<double, double, 480> m_channelPowerAvg;
|
||||||
|
|
||||||
BasebandSampleSink* m_sampleSink;
|
ScopeVis* m_scopeVis;
|
||||||
|
|
||||||
void setFilters(int sampleRate, float bandwidth, float lowCutoff);
|
void setFilters(int sampleRate, float bandwidth, float lowCutoff);
|
||||||
void processOneSample(Complex& c, fftfilt::cmplx *sideband);
|
void processOneSample(Complex& c, fftfilt::cmplx *sideband);
|
||||||
|
@ -54,6 +54,7 @@ DemodAnalyzer::DemodAnalyzer(WebAPIAdapterInterface *webAPIAdapterInterface) :
|
|||||||
qDebug("DemodAnalyzer::DemodAnalyzer: webAPIAdapterInterface: %p", webAPIAdapterInterface);
|
qDebug("DemodAnalyzer::DemodAnalyzer: webAPIAdapterInterface: %p", webAPIAdapterInterface);
|
||||||
setObjectName(m_featureId);
|
setObjectName(m_featureId);
|
||||||
m_worker = new DemodAnalyzerWorker();
|
m_worker = new DemodAnalyzerWorker();
|
||||||
|
m_worker->setScopeVis(&m_scopeVis);
|
||||||
m_state = StIdle;
|
m_state = StIdle;
|
||||||
m_errorMessage = "DemodAnalyzer error";
|
m_errorMessage = "DemodAnalyzer error";
|
||||||
m_networkManager = new QNetworkAccessManager();
|
m_networkManager = new QNetworkAccessManager();
|
||||||
@ -108,11 +109,6 @@ void DemodAnalyzer::stop()
|
|||||||
m_thread.wait();
|
m_thread.wait();
|
||||||
}
|
}
|
||||||
|
|
||||||
void DemodAnalyzer::setSampleSink(BasebandSampleSink *sink)
|
|
||||||
{
|
|
||||||
m_worker->setSampleSink(sink);
|
|
||||||
}
|
|
||||||
|
|
||||||
double DemodAnalyzer::getMagSqAvg() const
|
double DemodAnalyzer::getMagSqAvg() const
|
||||||
{
|
{
|
||||||
return m_worker->getMagSqAvg();
|
return m_worker->getMagSqAvg();
|
||||||
|
@ -158,7 +158,6 @@ public:
|
|||||||
virtual void destroy() { delete this; }
|
virtual void destroy() { delete this; }
|
||||||
SpectrumVis *getSpectrumVis() { return &m_spectrumVis; }
|
SpectrumVis *getSpectrumVis() { return &m_spectrumVis; }
|
||||||
ScopeVis *getScopeVis() { return &m_scopeVis; }
|
ScopeVis *getScopeVis() { return &m_scopeVis; }
|
||||||
void setSampleSink(BasebandSampleSink *sink);
|
|
||||||
double getMagSqAvg() const;
|
double getMagSqAvg() const;
|
||||||
virtual bool handleMessage(const Message& cmd);
|
virtual bool handleMessage(const Message& cmd);
|
||||||
|
|
||||||
|
@ -18,7 +18,6 @@
|
|||||||
#include <QMessageBox>
|
#include <QMessageBox>
|
||||||
|
|
||||||
#include "feature/featureuiset.h"
|
#include "feature/featureuiset.h"
|
||||||
#include "dsp/spectrumscopecombovis.h"
|
|
||||||
#include "dsp/spectrumvis.h"
|
#include "dsp/spectrumvis.h"
|
||||||
#include "gui/basicfeaturesettingsdialog.h"
|
#include "gui/basicfeaturesettingsdialog.h"
|
||||||
#include "gui/glspectrum.h"
|
#include "gui/glspectrum.h"
|
||||||
@ -146,8 +145,7 @@ DemodAnalyzerGUI::DemodAnalyzerGUI(PluginAPI* pluginAPI, FeatureUISet *featureUI
|
|||||||
m_scopeVis->setGLScope(ui->glScope);
|
m_scopeVis->setGLScope(ui->glScope);
|
||||||
m_spectrumVis = m_demodAnalyzer->getSpectrumVis();
|
m_spectrumVis = m_demodAnalyzer->getSpectrumVis();
|
||||||
m_spectrumVis->setGLSpectrum(ui->glSpectrum);
|
m_spectrumVis->setGLSpectrum(ui->glSpectrum);
|
||||||
m_spectrumScopeComboVis = new SpectrumScopeComboVis(m_spectrumVis, m_scopeVis);
|
m_scopeVis->setSpectrumVis(m_spectrumVis);
|
||||||
m_demodAnalyzer->setSampleSink(m_spectrumScopeComboVis);
|
|
||||||
|
|
||||||
m_featureUISet->addRollupWidget(this);
|
m_featureUISet->addRollupWidget(this);
|
||||||
|
|
||||||
@ -180,7 +178,6 @@ DemodAnalyzerGUI::DemodAnalyzerGUI(PluginAPI* pluginAPI, FeatureUISet *featureUI
|
|||||||
DemodAnalyzerGUI::~DemodAnalyzerGUI()
|
DemodAnalyzerGUI::~DemodAnalyzerGUI()
|
||||||
{
|
{
|
||||||
delete ui;
|
delete ui;
|
||||||
delete m_spectrumScopeComboVis;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void DemodAnalyzerGUI::blockApplySettings(bool block)
|
void DemodAnalyzerGUI::blockApplySettings(bool block)
|
||||||
|
@ -30,7 +30,6 @@ class PluginAPI;
|
|||||||
class FeatureUISet;
|
class FeatureUISet;
|
||||||
class DemodAnalyzer;
|
class DemodAnalyzer;
|
||||||
class Feature;
|
class Feature;
|
||||||
class SpectrumScopeComboVis;
|
|
||||||
class SpectrumVis;
|
class SpectrumVis;
|
||||||
class ScopeVis;
|
class ScopeVis;
|
||||||
|
|
||||||
@ -58,7 +57,6 @@ private:
|
|||||||
bool m_doApplySettings;
|
bool m_doApplySettings;
|
||||||
|
|
||||||
DemodAnalyzer* m_demodAnalyzer;
|
DemodAnalyzer* m_demodAnalyzer;
|
||||||
SpectrumScopeComboVis* m_spectrumScopeComboVis;
|
|
||||||
SpectrumVis* m_spectrumVis;
|
SpectrumVis* m_spectrumVis;
|
||||||
ScopeVis* m_scopeVis;
|
ScopeVis* m_scopeVis;
|
||||||
MessageQueue m_inputMessageQueue;
|
MessageQueue m_inputMessageQueue;
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
|
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
|
|
||||||
#include "dsp/basebandsamplesink.h"
|
#include "dsp/scopevis.h"
|
||||||
#include "dsp/datafifo.h"
|
#include "dsp/datafifo.h"
|
||||||
|
|
||||||
#include "demodanalyzerworker.h"
|
#include "demodanalyzerworker.h"
|
||||||
@ -95,8 +95,11 @@ void DemodAnalyzerWorker::feedPart(const QByteArray::const_iterator& begin, cons
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_sampleSink) {
|
if (m_scopeVis)
|
||||||
m_sampleSink->feed(m_sampleBuffer.begin(), m_sampleBuffer.begin() + countSamples/(1<<m_settings.m_log2Decim), false);
|
{
|
||||||
|
std::vector<SampleVector::const_iterator> vbegin;
|
||||||
|
vbegin.push_back(m_sampleBuffer.begin());
|
||||||
|
m_scopeVis->feed(vbegin, countSamples/(1<<m_settings.m_log2Decim));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -33,6 +33,7 @@
|
|||||||
#include "demodanalyzersettings.h"
|
#include "demodanalyzersettings.h"
|
||||||
|
|
||||||
class BasebandSampleSink;
|
class BasebandSampleSink;
|
||||||
|
class ScopeVis;
|
||||||
class ChannelAPI;
|
class ChannelAPI;
|
||||||
class Feature;
|
class Feature;
|
||||||
class DataFifo;
|
class DataFifo;
|
||||||
@ -99,7 +100,7 @@ public:
|
|||||||
|
|
||||||
double getMagSq() const { return m_magsq; }
|
double getMagSq() const { return m_magsq; }
|
||||||
double getMagSqAvg() const { return (double) m_channelPowerAvg; }
|
double getMagSqAvg() const { return (double) m_channelPowerAvg; }
|
||||||
void setSampleSink(BasebandSampleSink* sampleSink) { m_sampleSink = sampleSink; }
|
void setScopeVis(ScopeVis* scopeVis) { m_scopeVis = scopeVis; }
|
||||||
|
|
||||||
static const unsigned int m_corrFFTLen;
|
static const unsigned int m_corrFFTLen;
|
||||||
static const unsigned int m_ssbFftLen;
|
static const unsigned int m_ssbFftLen;
|
||||||
@ -117,7 +118,7 @@ private:
|
|||||||
Decimators<qint32, qint16, SDR_RX_SAMP_SZ, 16, true> m_decimators;
|
Decimators<qint32, qint16, SDR_RX_SAMP_SZ, 16, true> m_decimators;
|
||||||
int m_sampleBufferSize;
|
int m_sampleBufferSize;
|
||||||
MovingAverageUtil<double, double, 480> m_channelPowerAvg;
|
MovingAverageUtil<double, double, 480> m_channelPowerAvg;
|
||||||
BasebandSampleSink* m_sampleSink;
|
ScopeVis* m_scopeVis;
|
||||||
bool m_running;
|
bool m_running;
|
||||||
QMutex m_mutex;
|
QMutex m_mutex;
|
||||||
|
|
||||||
|
@ -21,6 +21,7 @@
|
|||||||
#include <QMutexLocker>
|
#include <QMutexLocker>
|
||||||
|
|
||||||
#include "scopevis.h"
|
#include "scopevis.h"
|
||||||
|
#include "spectrumvis.h"
|
||||||
#include "dsp/dspcommands.h"
|
#include "dsp/dspcommands.h"
|
||||||
#include "dsp/glscopeinterface.h"
|
#include "dsp/glscopeinterface.h"
|
||||||
|
|
||||||
@ -41,6 +42,7 @@ MESSAGE_CLASS_DEFINITION(ScopeVis::MsgScopeVisNGMemoryTrace, Message)
|
|||||||
|
|
||||||
ScopeVis::ScopeVis() :
|
ScopeVis::ScopeVis() :
|
||||||
m_glScope(nullptr),
|
m_glScope(nullptr),
|
||||||
|
m_spectrumVis(nullptr),
|
||||||
m_messageQueueToGUI(nullptr),
|
m_messageQueueToGUI(nullptr),
|
||||||
m_preTriggerDelay(0),
|
m_preTriggerDelay(0),
|
||||||
m_livePreTriggerDelay(0),
|
m_livePreTriggerDelay(0),
|
||||||
@ -524,6 +526,10 @@ int ScopeVis::processTraces(const SampleVector::const_iterator& cbegin, int ilen
|
|||||||
uint32_t length = m_traceSize / m_timeBase;
|
uint32_t length = m_traceSize / m_timeBase;
|
||||||
int remainder = ilength;
|
int remainder = ilength;
|
||||||
|
|
||||||
|
if (m_spectrumVis) {
|
||||||
|
m_spectrumVis->feed(cbegin, cbegin + ilength, false);
|
||||||
|
}
|
||||||
|
|
||||||
while ((remainder > 0) && (m_nbSamples > 0))
|
while ((remainder > 0) && (m_nbSamples > 0))
|
||||||
{
|
{
|
||||||
std::vector<TraceControl*>::iterator itCtl = m_traces.m_tracesControl.begin();
|
std::vector<TraceControl*>::iterator itCtl = m_traces.m_tracesControl.begin();
|
||||||
|
@ -40,6 +40,7 @@
|
|||||||
|
|
||||||
|
|
||||||
class GLScopeInterface;
|
class GLScopeInterface;
|
||||||
|
class SpectrumVis;
|
||||||
|
|
||||||
class SDRBASE_API ScopeVis : public QObject {
|
class SDRBASE_API ScopeVis : public QObject {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
@ -48,6 +49,7 @@ public:
|
|||||||
virtual ~ScopeVis();
|
virtual ~ScopeVis();
|
||||||
|
|
||||||
void setGLScope(GLScopeInterface* glScope);
|
void setGLScope(GLScopeInterface* glScope);
|
||||||
|
void setSpectrumVis(SpectrumVis *spectrumVis) { m_spectrumVis = spectrumVis; }
|
||||||
void setMessageQueueToGUI(MessageQueue* messageQueue) { m_messageQueueToGUI = messageQueue; }
|
void setMessageQueueToGUI(MessageQueue* messageQueue) { m_messageQueueToGUI = messageQueue; }
|
||||||
MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } //!< Get the queue for asynchronous inbound communication
|
MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } //!< Get the queue for asynchronous inbound communication
|
||||||
|
|
||||||
@ -1040,6 +1042,7 @@ private:
|
|||||||
};
|
};
|
||||||
|
|
||||||
GLScopeInterface* m_glScope;
|
GLScopeInterface* m_glScope;
|
||||||
|
SpectrumVis *m_spectrumVis;
|
||||||
MessageQueue m_inputMessageQueue;
|
MessageQueue m_inputMessageQueue;
|
||||||
MessageQueue *m_messageQueueToGUI;
|
MessageQueue *m_messageQueueToGUI;
|
||||||
uint32_t m_preTriggerDelay; //!< Pre-trigger delay in number of samples
|
uint32_t m_preTriggerDelay; //!< Pre-trigger delay in number of samples
|
||||||
|
@ -69,7 +69,6 @@ set(sdrgui_SOURCES
|
|||||||
gui/wrappingdatetimeedit.cpp
|
gui/wrappingdatetimeedit.cpp
|
||||||
|
|
||||||
dsp/scopevisxy.cpp
|
dsp/scopevisxy.cpp
|
||||||
dsp/spectrumscopecombovis.cpp
|
|
||||||
|
|
||||||
device/deviceuiset.cpp
|
device/deviceuiset.cpp
|
||||||
|
|
||||||
@ -157,7 +156,6 @@ set(sdrgui_HEADERS
|
|||||||
gui/wrappingdatetimeedit.h
|
gui/wrappingdatetimeedit.h
|
||||||
|
|
||||||
dsp/scopevisxy.h
|
dsp/scopevisxy.h
|
||||||
dsp/spectrumscopecombovis.h
|
|
||||||
|
|
||||||
device/deviceuiset.h
|
device/deviceuiset.h
|
||||||
|
|
||||||
|
@ -1,52 +0,0 @@
|
|||||||
#include "dsp/spectrumscopecombovis.h"
|
|
||||||
#include "dsp/dspcommands.h"
|
|
||||||
#include "dsp/scopevis.h"
|
|
||||||
#include "util/messagequeue.h"
|
|
||||||
|
|
||||||
SpectrumScopeComboVis::SpectrumScopeComboVis(SpectrumVis* spectrumVis, ScopeVis* scopeVis) :
|
|
||||||
m_spectrumVis(spectrumVis),
|
|
||||||
m_scopeVis(scopeVis)
|
|
||||||
{
|
|
||||||
setObjectName("SpectrumScopeComboVis");
|
|
||||||
}
|
|
||||||
|
|
||||||
SpectrumScopeComboVis::~SpectrumScopeComboVis()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
void SpectrumScopeComboVis::feed(const SampleVector::const_iterator& begin, const SampleVector::const_iterator& end, bool positiveOnly)
|
|
||||||
{
|
|
||||||
(void) positiveOnly;
|
|
||||||
std::vector<SampleVector::const_iterator> vbegin;
|
|
||||||
vbegin.push_back(begin);
|
|
||||||
m_scopeVis->feed(vbegin, end - begin);
|
|
||||||
//SampleVector::const_iterator triggerPoint = m_scopeVis->getTriggerPoint();
|
|
||||||
//m_spectrumVis->feedTriggered(triggerPoint, end, positiveOnly);
|
|
||||||
int triggerPointLocation = m_scopeVis->getTriggerLocation();
|
|
||||||
|
|
||||||
if (m_scopeVis->getFreeRun()) {
|
|
||||||
m_spectrumVis->feed(begin, end, positiveOnly);
|
|
||||||
} else if ((triggerPointLocation >= 0) && (triggerPointLocation <= end - begin)) {
|
|
||||||
m_spectrumVis->feedTriggered(end - triggerPointLocation, end, positiveOnly);
|
|
||||||
} else {
|
|
||||||
m_spectrumVis->feedTriggered(begin, end, positiveOnly);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void SpectrumScopeComboVis::start()
|
|
||||||
{
|
|
||||||
m_spectrumVis->start();
|
|
||||||
}
|
|
||||||
|
|
||||||
void SpectrumScopeComboVis::stop()
|
|
||||||
{
|
|
||||||
m_spectrumVis->stop();
|
|
||||||
}
|
|
||||||
|
|
||||||
bool SpectrumScopeComboVis::handleMessage(const Message& message)
|
|
||||||
{
|
|
||||||
bool spectDone = m_spectrumVis->handleMessage(message);
|
|
||||||
bool scopeDone = m_scopeVis->handleMessage(message);
|
|
||||||
|
|
||||||
return (spectDone || scopeDone);
|
|
||||||
}
|
|
@ -1,28 +0,0 @@
|
|||||||
#ifndef INCLUDE_SPECTRUMSCOPENGCOMBOVIS_H
|
|
||||||
#define INCLUDE_SPECTRUMSCOPENGCOMBOVIS_H
|
|
||||||
|
|
||||||
#include <dsp/basebandsamplesink.h>
|
|
||||||
#include "dsp/spectrumvis.h"
|
|
||||||
#include "export.h"
|
|
||||||
|
|
||||||
class Message;
|
|
||||||
class ScopeVis;
|
|
||||||
|
|
||||||
class SDRGUI_API SpectrumScopeComboVis : public BasebandSampleSink {
|
|
||||||
public:
|
|
||||||
|
|
||||||
SpectrumScopeComboVis(SpectrumVis* spectrumVis, ScopeVis* scopeVis);
|
|
||||||
virtual ~SpectrumScopeComboVis();
|
|
||||||
|
|
||||||
using BasebandSampleSink::feed;
|
|
||||||
virtual void feed(const SampleVector::const_iterator& begin, const SampleVector::const_iterator& end, bool positiveOnly);
|
|
||||||
virtual void start();
|
|
||||||
virtual void stop();
|
|
||||||
virtual bool handleMessage(const Message& message);
|
|
||||||
|
|
||||||
private:
|
|
||||||
SpectrumVis* m_spectrumVis;
|
|
||||||
ScopeVis* m_scopeVis;
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif // INCLUDE_SPECTRUMSCOPENGCOMBOVIS_H
|
|
Loading…
x
Reference in New Issue
Block a user