mirror of
https://github.com/f4exb/sdrangel.git
synced 2025-05-30 22:02:26 -04:00
Save scope sink pointer for when baseband is recreated.
This commit is contained in:
parent
8337e2c7b2
commit
27f35feee8
@ -59,7 +59,8 @@ DSDDemod::DSDDemod(DeviceAPI *deviceAPI) :
|
|||||||
ChannelAPI(m_channelIdURI, ChannelAPI::StreamSingleSink),
|
ChannelAPI(m_channelIdURI, ChannelAPI::StreamSingleSink),
|
||||||
m_deviceAPI(deviceAPI),
|
m_deviceAPI(deviceAPI),
|
||||||
m_running(false),
|
m_running(false),
|
||||||
m_basebandSampleRate(0)
|
m_basebandSampleRate(0),
|
||||||
|
m_scopeXYSink(nullptr)
|
||||||
{
|
{
|
||||||
qDebug("DSDDemod::DSDDemod");
|
qDebug("DSDDemod::DSDDemod");
|
||||||
setObjectName(m_channelId);
|
setObjectName(m_channelId);
|
||||||
@ -175,6 +176,7 @@ void DSDDemod::start()
|
|||||||
if (m_basebandSampleRate != 0) {
|
if (m_basebandSampleRate != 0) {
|
||||||
m_basebandSink->setBasebandSampleRate(m_basebandSampleRate);
|
m_basebandSink->setBasebandSampleRate(m_basebandSampleRate);
|
||||||
}
|
}
|
||||||
|
m_basebandSink->setScopeXYSink(m_scopeXYSink);
|
||||||
|
|
||||||
m_thread->start();
|
m_thread->start();
|
||||||
|
|
||||||
@ -198,6 +200,14 @@ void DSDDemod::stop()
|
|||||||
m_thread->wait();
|
m_thread->wait();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DSDDemod::setScopeXYSink(BasebandSampleSink* sampleSink)
|
||||||
|
{
|
||||||
|
m_scopeXYSink = sampleSink;
|
||||||
|
if (m_running) {
|
||||||
|
m_basebandSink->setScopeXYSink(sampleSink);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
bool DSDDemod::handleMessage(const Message& cmd)
|
bool DSDDemod::handleMessage(const Message& cmd)
|
||||||
{
|
{
|
||||||
qDebug() << "DSDDemod::handleMessage";
|
qDebug() << "DSDDemod::handleMessage";
|
||||||
|
@ -155,7 +155,7 @@ public:
|
|||||||
SWGSDRangel::SWGChannelSettings& response);
|
SWGSDRangel::SWGChannelSettings& response);
|
||||||
|
|
||||||
uint32_t getNumberOfDeviceStreams() const;
|
uint32_t getNumberOfDeviceStreams() const;
|
||||||
void setScopeXYSink(BasebandSampleSink* sampleSink) { if (m_running) { m_basebandSink->setScopeXYSink(sampleSink); } }
|
void setScopeXYSink(BasebandSampleSink* sampleSink);
|
||||||
void configureMyPosition(float myLatitude, float myLongitude) { if (m_running) { m_basebandSink->configureMyPosition(myLatitude, myLongitude); } }
|
void configureMyPosition(float myLatitude, float myLongitude) { if (m_running) { m_basebandSink->configureMyPosition(myLatitude, myLongitude); } }
|
||||||
double getMagSq() { return m_running ? m_basebandSink->getMagSq() : 0.0; }
|
double getMagSq() { return m_running ? m_basebandSink->getMagSq() : 0.0; }
|
||||||
bool getSquelchOpen() const { return m_running && m_basebandSink->getSquelchOpen(); }
|
bool getSquelchOpen() const { return m_running && m_basebandSink->getSquelchOpen(); }
|
||||||
@ -186,7 +186,7 @@ private:
|
|||||||
DSDDemodSettings m_settings;
|
DSDDemodSettings m_settings;
|
||||||
int m_basebandSampleRate; //!< stored from device message used when starting baseband sink
|
int m_basebandSampleRate; //!< stored from device message used when starting baseband sink
|
||||||
QHash<Feature*, DSDDemodSettings::AvailableAMBEFeature> m_availableAMBEFeatures;
|
QHash<Feature*, DSDDemodSettings::AvailableAMBEFeature> m_availableAMBEFeatures;
|
||||||
|
BasebandSampleSink *m_scopeXYSink;
|
||||||
QNetworkAccessManager *m_networkManager;
|
QNetworkAccessManager *m_networkManager;
|
||||||
QNetworkRequest m_networkRequest;
|
QNetworkRequest m_networkRequest;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user