kopia lustrzana https://github.com/f4exb/sdrangel
MIMO: moved signal notification messageto general DSP commands
rodzic
5f44c61895
commit
014f62d558
|
@ -458,7 +458,7 @@ bool TestMI::applySettings(const TestMISettings& settings, bool force)
|
|||
int sampleRate = settings.m_streams[istream].m_sampleRate/(1<<settings.m_streams[istream].m_log2Decim);
|
||||
DSPSignalNotification *notif = new DSPSignalNotification(sampleRate, settings.m_streams[istream].m_centerFrequency);
|
||||
m_fileSinks[istream]->handleMessage(*notif); // forward to file sink
|
||||
DSPDeviceMIMOEngine::SignalNotification *engineNotif = new DSPDeviceMIMOEngine::SignalNotification(
|
||||
DSPMIMOSignalNotification *engineNotif = new DSPMIMOSignalNotification(
|
||||
sampleRate, settings.m_streams[istream].m_centerFrequency, true, istream);
|
||||
m_deviceAPI->getDeviceEngineInputMessageQueue()->push(engineNotif);
|
||||
}
|
||||
|
|
|
@ -551,15 +551,15 @@ void TestMIGui::handleInputMessages()
|
|||
|
||||
while ((message = m_inputMessageQueue.pop()) != 0)
|
||||
{
|
||||
if (DSPDeviceMIMOEngine::SignalNotification::match(*message))
|
||||
if (DSPMIMOSignalNotification::match(*message))
|
||||
{
|
||||
DSPDeviceMIMOEngine::SignalNotification* notif = (DSPDeviceMIMOEngine::SignalNotification*) message;
|
||||
DSPMIMOSignalNotification* notif = (DSPMIMOSignalNotification*) message;
|
||||
int istream = notif->getIndex();
|
||||
bool sourceOrSink = notif->getSourceOrSink();
|
||||
m_deviceSampleRates[istream] = notif->getSampleRate();
|
||||
m_deviceCenterFrequencies[istream] = notif->getCenterFrequency();
|
||||
// Do not consider multiple sources at this time
|
||||
qDebug("TestMIGui::handleInputMessages: DSPDeviceMIMOEngine::SignalNotification: %s stream: %d SampleRate:%d, CenterFrequency:%llu",
|
||||
qDebug("TestMIGui::handleInputMessages: DSPMIMOSignalNotification: %s stream: %d SampleRate:%d, CenterFrequency:%llu",
|
||||
sourceOrSink ? "source" : "sink",
|
||||
istream,
|
||||
notif->getSampleRate(),
|
||||
|
|
|
@ -45,5 +45,6 @@ MESSAGE_CLASS_DEFINITION(DSPConfigureCorrection, Message)
|
|||
MESSAGE_CLASS_DEFINITION(DSPEngineReport, Message)
|
||||
MESSAGE_CLASS_DEFINITION(DSPConfigureScopeVis, Message)
|
||||
MESSAGE_CLASS_DEFINITION(DSPSignalNotification, Message)
|
||||
MESSAGE_CLASS_DEFINITION(DSPMIMOSignalNotification, Message)
|
||||
MESSAGE_CLASS_DEFINITION(DSPConfigureChannelizer, Message)
|
||||
MESSAGE_CLASS_DEFINITION(DSPConfigureAudio, Message)
|
||||
|
|
|
@ -333,6 +333,27 @@ private:
|
|||
qint64 m_centerFrequency;
|
||||
};
|
||||
|
||||
class SDRBASE_API DSPMIMOSignalNotification : public Message {
|
||||
MESSAGE_CLASS_DECLARATION
|
||||
public:
|
||||
DSPMIMOSignalNotification(int samplerate, qint64 centerFrequency, bool sourceOrSink, unsigned int index) :
|
||||
Message(),
|
||||
m_sampleRate(samplerate),
|
||||
m_centerFrequency(centerFrequency),
|
||||
m_sourceOrSink(sourceOrSink),
|
||||
m_index(index)
|
||||
{ }
|
||||
int getSampleRate() const { return m_sampleRate; }
|
||||
qint64 getCenterFrequency() const { return m_centerFrequency; }
|
||||
bool getSourceOrSink() const { return m_sourceOrSink; }
|
||||
unsigned int getIndex() const { return m_index; }
|
||||
private:
|
||||
int m_sampleRate;
|
||||
qint64 m_centerFrequency;
|
||||
bool m_sourceOrSink;
|
||||
unsigned int m_index;
|
||||
};
|
||||
|
||||
class SDRBASE_API DSPConfigureChannelizer : public Message {
|
||||
MESSAGE_CLASS_DECLARATION
|
||||
|
||||
|
|
|
@ -41,7 +41,6 @@ MESSAGE_CLASS_DEFINITION(DSPDeviceMIMOEngine::RemoveSpectrumSink, Message)
|
|||
MESSAGE_CLASS_DEFINITION(DSPDeviceMIMOEngine::GetErrorMessage, Message)
|
||||
MESSAGE_CLASS_DEFINITION(DSPDeviceMIMOEngine::GetMIMODeviceDescription, Message)
|
||||
MESSAGE_CLASS_DEFINITION(DSPDeviceMIMOEngine::ConfigureCorrection, Message)
|
||||
MESSAGE_CLASS_DEFINITION(DSPDeviceMIMOEngine::SignalNotification, Message)
|
||||
MESSAGE_CLASS_DEFINITION(DSPDeviceMIMOEngine::SetSpectrumSinkInput, Message)
|
||||
|
||||
DSPDeviceMIMOEngine::DSPDeviceMIMOEngine(uint32_t uid, QObject* parent) :
|
||||
|
@ -544,7 +543,7 @@ DSPDeviceMIMOEngine::State DSPDeviceMIMOEngine::gotoInit()
|
|||
// MessageQueue *guiMessageQueue = m_deviceSampleMIMO->getMessageQueueToGUI();
|
||||
|
||||
// if (guiMessageQueue) {
|
||||
// SignalNotification* rep = new SignalNotification(sourceStreamSampleRate, sourceCenterFrequency, true, isource); // make a copy for the MIMO GUI
|
||||
// DSPMIMOSignalNotification* rep = new DSPMIMOSignalNotification(sourceStreamSampleRate, sourceCenterFrequency, true, isource); // make a copy for the MIMO GUI
|
||||
// guiMessageQueue->push(rep);
|
||||
// }
|
||||
}
|
||||
|
@ -937,9 +936,9 @@ void DSPDeviceMIMOEngine::handleInputMessages()
|
|||
|
||||
delete message;
|
||||
}
|
||||
else if (SignalNotification::match(*message))
|
||||
else if (DSPMIMOSignalNotification::match(*message))
|
||||
{
|
||||
SignalNotification *notif = (SignalNotification *) message;
|
||||
DSPMIMOSignalNotification *notif = (DSPMIMOSignalNotification *) message;
|
||||
|
||||
// update DSP values
|
||||
|
||||
|
@ -948,7 +947,7 @@ void DSPDeviceMIMOEngine::handleInputMessages()
|
|||
int sampleRate = notif->getSampleRate();
|
||||
qint64 centerFrequency = notif->getCenterFrequency();
|
||||
|
||||
qDebug() << "DeviceMIMOEngine::handleInputMessages: SignalNotification:"
|
||||
qDebug() << "DeviceMIMOEngine::handleInputMessages: DSPMIMOSignalNotification:"
|
||||
<< " sourceElseSink: " << sourceElseSink
|
||||
<< " istream: " << istream
|
||||
<< " sampleRate: " << sampleRate
|
||||
|
@ -982,10 +981,10 @@ void DSPDeviceMIMOEngine::handleInputMessages()
|
|||
|
||||
// forward changes to MIMO GUI input queue
|
||||
MessageQueue *guiMessageQueue = m_deviceSampleMIMO->getMessageQueueToGUI();
|
||||
qDebug("DeviceMIMOEngine::handleInputMessages: SignalNotification: guiMessageQueue: %p", guiMessageQueue);
|
||||
qDebug("DeviceMIMOEngine::handleInputMessages: DSPMIMOSignalNotification: guiMessageQueue: %p", guiMessageQueue);
|
||||
|
||||
if (guiMessageQueue) {
|
||||
SignalNotification* rep = new SignalNotification(*notif); // make a copy for the MIMO GUI
|
||||
DSPMIMOSignalNotification* rep = new DSPMIMOSignalNotification(*notif); // make a copy for the MIMO GUI
|
||||
guiMessageQueue->push(rep);
|
||||
}
|
||||
|
||||
|
@ -1018,7 +1017,7 @@ void DSPDeviceMIMOEngine::handleInputMessages()
|
|||
qDebug("DSPDeviceMIMOEngine::handleInputMessages: DSPSignalNotification: guiMessageQueue: %p", guiMessageQueue);
|
||||
|
||||
if (guiMessageQueue) {
|
||||
SignalNotification* rep = new SignalNotification(*notif); // make a copy for the source GUI
|
||||
DSPMIMOSignalNotification* rep = new DSPMIMOSignalNotification(*notif); // make a copy for the source GUI
|
||||
guiMessageQueue->push(rep);
|
||||
}
|
||||
|
||||
|
|
|
@ -217,27 +217,6 @@ public:
|
|||
unsigned int m_index;
|
||||
};
|
||||
|
||||
class SignalNotification : public Message {
|
||||
MESSAGE_CLASS_DECLARATION
|
||||
public:
|
||||
SignalNotification(int samplerate, qint64 centerFrequency, bool sourceOrSink, unsigned int index) :
|
||||
Message(),
|
||||
m_sampleRate(samplerate),
|
||||
m_centerFrequency(centerFrequency),
|
||||
m_sourceOrSink(sourceOrSink),
|
||||
m_index(index)
|
||||
{ }
|
||||
int getSampleRate() const { return m_sampleRate; }
|
||||
qint64 getCenterFrequency() const { return m_centerFrequency; }
|
||||
bool getSourceOrSink() const { return m_sourceOrSink; }
|
||||
unsigned int getIndex() const { return m_index; }
|
||||
private:
|
||||
int m_sampleRate;
|
||||
qint64 m_centerFrequency;
|
||||
bool m_sourceOrSink;
|
||||
unsigned int m_index;
|
||||
};
|
||||
|
||||
class SetSpectrumSinkInput : public Message {
|
||||
MESSAGE_CLASS_DECLARATION
|
||||
public:
|
||||
|
|
Ładowanie…
Reference in New Issue