mirror of
https://github.com/f4exb/sdrangel.git
synced 2024-11-21 15:51:47 -05:00
Merge pull request #1013 from srcejon/apt_worker_fixes
APT demod fixes.
This commit is contained in:
commit
669ab13d20
@ -72,6 +72,8 @@ APTDemod::APTDemod(DeviceAPI *deviceAPI) :
|
||||
|
||||
m_networkManager = new QNetworkAccessManager();
|
||||
connect(m_networkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(networkManagerFinished(QNetworkReply*)));
|
||||
|
||||
startImageWorker();
|
||||
}
|
||||
|
||||
APTDemod::~APTDemod()
|
||||
@ -109,7 +111,6 @@ void APTDemod::feed(const SampleVector::const_iterator& begin, const SampleVecto
|
||||
void APTDemod::start()
|
||||
{
|
||||
startBasebandSink();
|
||||
startImageWorker();
|
||||
}
|
||||
|
||||
void APTDemod::startBasebandSink()
|
||||
@ -141,7 +142,6 @@ void APTDemod::startImageWorker()
|
||||
|
||||
void APTDemod::stop()
|
||||
{
|
||||
stopImageWorker();
|
||||
stopBasebandSink();
|
||||
}
|
||||
|
||||
@ -594,7 +594,7 @@ int APTDemod::webapiActionsPost(
|
||||
m_basebandSink->getInputMessageQueue()->push(APTDemod::MsgResetDecoder::create());
|
||||
|
||||
// Save satellite name
|
||||
m_satelliteName = *satelliteName;
|
||||
m_imageWorker->getInputMessageQueue()->push(APTDemodImageWorker::MsgSetSatelliteName::create(*satelliteName));
|
||||
|
||||
// Enable decoder and set direction of pass
|
||||
APTDemodSettings settings = m_settings;
|
||||
|
@ -250,8 +250,6 @@ private:
|
||||
QNetworkAccessManager *m_networkManager;
|
||||
QNetworkRequest m_networkRequest;
|
||||
|
||||
QString m_satelliteName;
|
||||
|
||||
void applySettings(const APTDemodSettings& settings, bool force = false);
|
||||
void webapiReverseSendSettings(QList<QString>& channelSettingsKeys, const APTDemodSettings& settings, bool force);
|
||||
void webapiFormatChannelSettings(
|
||||
|
@ -26,6 +26,7 @@
|
||||
|
||||
MESSAGE_CLASS_DEFINITION(APTDemodImageWorker::MsgConfigureAPTDemodImageWorker, Message)
|
||||
MESSAGE_CLASS_DEFINITION(APTDemodImageWorker::MsgSaveImageToDisk, Message)
|
||||
MESSAGE_CLASS_DEFINITION(APTDemodImageWorker::MsgSetSatelliteName, Message)
|
||||
|
||||
APTDemodImageWorker::APTDemodImageWorker() :
|
||||
m_messageQueueToGUI(nullptr),
|
||||
@ -99,6 +100,12 @@ bool APTDemodImageWorker::handleMessage(const Message& cmd)
|
||||
saveImageToDisk();
|
||||
return true;
|
||||
}
|
||||
else if (MsgSetSatelliteName::match(cmd))
|
||||
{
|
||||
MsgSetSatelliteName& msg = (MsgSetSatelliteName&) cmd;
|
||||
m_satelliteName = msg.getSatelliteName();
|
||||
return true;
|
||||
}
|
||||
else if (APTDemod::MsgPixels::match(cmd))
|
||||
{
|
||||
QMutexLocker mutexLocker(&m_mutex);
|
||||
@ -336,7 +343,7 @@ void APTDemodImageWorker::saveImageToDisk()
|
||||
{
|
||||
QString filename;
|
||||
QDateTime datetime = QDateTime::currentDateTime();
|
||||
filename = QString("apt_%1_%2.png").arg(m_satelliteName).arg(datetime.toString("yyyyMMdd_hhmm"));
|
||||
filename = QString("apt_%1_%2.png").arg(m_satelliteName.replace(" ", "_")).arg(datetime.toString("yyyyMMdd_hhmm"));
|
||||
|
||||
if (!m_settings.m_autoSavePath.isEmpty())
|
||||
{
|
||||
|
@ -74,6 +74,27 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
class MsgSetSatelliteName : public Message {
|
||||
MESSAGE_CLASS_DECLARATION
|
||||
|
||||
public:
|
||||
QString getSatelliteName() const { return m_satelliteName; }
|
||||
|
||||
static MsgSetSatelliteName* create(const QString &satelliteName)
|
||||
{
|
||||
return new MsgSetSatelliteName(satelliteName);
|
||||
}
|
||||
|
||||
private:
|
||||
QString m_satelliteName;
|
||||
|
||||
MsgSetSatelliteName(const QString &satelliteName) :
|
||||
Message(),
|
||||
m_satelliteName(satelliteName)
|
||||
{
|
||||
}
|
||||
};
|
||||
|
||||
APTDemodImageWorker();
|
||||
~APTDemodImageWorker();
|
||||
void reset();
|
||||
|
Loading…
Reference in New Issue
Block a user