1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2026-06-04 23:14:47 -04:00

Channel API rework: make it inherit from QObject and removed QObject inheritance from DSP interfaces. Fixes #1147

This commit is contained in:
f4exb
2022-02-13 00:57:33 +01:00
parent 41061de50b
commit 634b25ac1e
66 changed files with 274 additions and 324 deletions
+25 -2
View File
@@ -66,6 +66,7 @@ SpectrumVis::SpectrumVis(Real scalef) :
m_mutex(QMutex::Recursive)
{
setObjectName("SpectrumVis");
connect(&m_inputMessageQueue, SIGNAL(messageEnqueued()), this, SLOT(handleInputMessages()));
applySettings(m_settings, true);
}
@@ -78,13 +79,13 @@ SpectrumVis::~SpectrumVis()
void SpectrumVis::setScalef(Real scalef)
{
MsgConfigureScalingFactor* cmd = new MsgConfigureScalingFactor(scalef);
getInputMessageQueue()->push(cmd);
m_inputMessageQueue.push(cmd);
}
void SpectrumVis::configureWSSpectrum(const QString& address, uint16_t port)
{
MsgConfigureWSpectrum* cmd = new MsgConfigureWSpectrum(address, port);
getInputMessageQueue()->push(cmd);
m_inputMessageQueue.push(cmd);
}
void SpectrumVis::feedTriggered(const SampleVector::const_iterator& triggerPoint, const SampleVector::const_iterator& end, bool positiveOnly)
@@ -764,6 +765,28 @@ void SpectrumVis::stop()
}
}
void SpectrumVis::pushMessage(Message *msg)
{
m_inputMessageQueue.push(msg);
}
QString SpectrumVis::getSinkName()
{
return objectName();
}
void SpectrumVis::handleInputMessages()
{
Message* message;
while ((message = m_inputMessageQueue.pop()) != 0)
{
if (handleMessage(*message)) {
delete message;
}
}
}
bool SpectrumVis::handleMessage(const Message& message)
{
if (DSPSignalNotification::match(message))