mirror of
https://github.com/f4exb/sdrangel.git
synced 2026-06-02 22:14:45 -04:00
Merge branch 'master' of https://github.com/f4exb/sdrangel into osx
This commit is contained in:
@@ -13,6 +13,7 @@ TARGET = inputsdrdaemonsource
|
||||
|
||||
CONFIG(MINGW32):LIBCM256CCSRC = "C:\softs\cm256cc"
|
||||
CONFIG(MINGW64):LIBCM256CCSRC = "C:\softs\cm256cc"
|
||||
CONFIG(MSVC):LIBCM256CCSRC = "C:\softs\cm256cc"
|
||||
CONFIG(macx):LIBCM256CCSRC = "../../../../deps/cm256cc"
|
||||
|
||||
INCLUDEPATH += $$PWD
|
||||
@@ -36,6 +37,7 @@ CONFIG(Debug):build_subdir = debug
|
||||
|
||||
CONFIG(MINGW32):INCLUDEPATH += "C:\softs\boost_1_66_0"
|
||||
CONFIG(MINGW64):INCLUDEPATH += "C:\softs\boost_1_66_0"
|
||||
CONFIG(MSVC):INCLUDEPATH += "C:\softs\boost_1_66_0"
|
||||
CONFIG(macx):INCLUDEPATH += "../../../boost_1_64_0"
|
||||
|
||||
SOURCES += sdrdaemonsourcebuffer.cpp\
|
||||
|
||||
@@ -45,6 +45,7 @@ public:
|
||||
// samples timestamp
|
||||
uint32_t getTVOutSec() const { return m_tvOut_sec; }
|
||||
uint32_t getTVOutUsec() const { return m_tvOut_usec; }
|
||||
uint64_t getTVOutMSec() const { return (m_tvOut_sec * 1000LL) + (m_tvOut_usec/ 1000LL); }
|
||||
|
||||
// stats
|
||||
|
||||
|
||||
@@ -71,8 +71,7 @@ SDRdaemonSourceGui::SDRdaemonSourceGui(DeviceUISet *deviceUISet, QWidget* parent
|
||||
m_paletteGreenText.setColor(QPalette::WindowText, Qt::green);
|
||||
m_paletteWhiteText.setColor(QPalette::WindowText, Qt::white);
|
||||
|
||||
m_startingTimeStamp.tv_sec = 0;
|
||||
m_startingTimeStamp.tv_usec = 0;
|
||||
m_startingTimeStampms = 0;
|
||||
ui->setupUi(this);
|
||||
|
||||
ui->centerFrequency->setColorMapper(ColorMapper(ColorMapper::GrayGold));
|
||||
@@ -163,8 +162,9 @@ qint64 SDRdaemonSourceGui::getCenterFrequency() const
|
||||
return m_streamCenterFrequency;
|
||||
}
|
||||
|
||||
void SDRdaemonSourceGui::setCenterFrequency(qint64 centerFrequency __attribute__((unused)))
|
||||
void SDRdaemonSourceGui::setCenterFrequency(qint64 centerFrequency)
|
||||
{
|
||||
(void) centerFrequency;
|
||||
}
|
||||
|
||||
bool SDRdaemonSourceGui::handleMessage(const Message& message)
|
||||
@@ -186,20 +186,17 @@ bool SDRdaemonSourceGui::handleMessage(const Message& message)
|
||||
}
|
||||
else if (SDRdaemonSourceInput::MsgReportSDRdaemonSourceStreamData::match(message))
|
||||
{
|
||||
m_startingTimeStamp.tv_sec = ((SDRdaemonSourceInput::MsgReportSDRdaemonSourceStreamData&)message).get_tv_sec();
|
||||
m_startingTimeStamp.tv_usec = ((SDRdaemonSourceInput::MsgReportSDRdaemonSourceStreamData&)message).get_tv_usec();
|
||||
m_startingTimeStampms = ((SDRdaemonSourceInput::MsgReportSDRdaemonSourceStreamData&)message).get_tv_msec();
|
||||
|
||||
qDebug() << "SDRdaemonSourceGui::handleMessage: SDRdaemonSourceInput::MsgReportSDRdaemonSourceStreamData: "
|
||||
<< " : " << m_startingTimeStamp.tv_sec
|
||||
<< " : " << m_startingTimeStamp.tv_usec;
|
||||
<< " : " << m_startingTimeStampms << " ms";
|
||||
|
||||
updateWithStreamTime();
|
||||
return true;
|
||||
}
|
||||
else if (SDRdaemonSourceInput::MsgReportSDRdaemonSourceStreamTiming::match(message))
|
||||
{
|
||||
m_startingTimeStamp.tv_sec = ((SDRdaemonSourceInput::MsgReportSDRdaemonSourceStreamTiming&)message).get_tv_sec();
|
||||
m_startingTimeStamp.tv_usec = ((SDRdaemonSourceInput::MsgReportSDRdaemonSourceStreamTiming&)message).get_tv_usec();
|
||||
m_startingTimeStampms = ((SDRdaemonSourceInput::MsgReportSDRdaemonSourceStreamTiming&)message).get_tv_msec();
|
||||
m_framesDecodingStatus = ((SDRdaemonSourceInput::MsgReportSDRdaemonSourceStreamTiming&)message).getFramesDecodingStatus();
|
||||
m_allBlocksReceived = ((SDRdaemonSourceInput::MsgReportSDRdaemonSourceStreamTiming&)message).allBlocksReceived();
|
||||
m_bufferLengthInSecs = ((SDRdaemonSourceInput::MsgReportSDRdaemonSourceStreamTiming&)message).getBufferLengthInSecs();
|
||||
@@ -308,8 +305,9 @@ void SDRdaemonSourceGui::sendSettings()
|
||||
m_updateTimer.start(100);
|
||||
}
|
||||
|
||||
void SDRdaemonSourceGui::on_apiApplyButton_clicked(bool checked __attribute__((unused)))
|
||||
void SDRdaemonSourceGui::on_apiApplyButton_clicked(bool checked)
|
||||
{
|
||||
(void) checked;
|
||||
m_settings.m_apiAddress = ui->apiAddress->text();
|
||||
|
||||
bool ctlOk;
|
||||
@@ -326,8 +324,9 @@ void SDRdaemonSourceGui::on_apiApplyButton_clicked(bool checked __attribute__((u
|
||||
m_networkManager->get(m_networkRequest);
|
||||
}
|
||||
|
||||
void SDRdaemonSourceGui::on_dataApplyButton_clicked(bool checked __attribute__((unused)))
|
||||
void SDRdaemonSourceGui::on_dataApplyButton_clicked(bool checked)
|
||||
{
|
||||
(void) checked;
|
||||
m_settings.m_dataAddress = ui->dataAddress->text();
|
||||
|
||||
bool dataOk;
|
||||
@@ -427,8 +426,9 @@ void SDRdaemonSourceGui::on_record_toggled(bool checked)
|
||||
m_sampleSource->getInputMessageQueue()->push(message);
|
||||
}
|
||||
|
||||
void SDRdaemonSourceGui::on_eventCountsReset_clicked(bool checked __attribute__((unused)))
|
||||
void SDRdaemonSourceGui::on_eventCountsReset_clicked(bool checked)
|
||||
{
|
||||
(void) checked;
|
||||
m_countUnrecoverable = 0;
|
||||
m_countRecovered = 0;
|
||||
m_eventsTime.start();
|
||||
@@ -460,8 +460,7 @@ void SDRdaemonSourceGui::updateWithAcquisition()
|
||||
void SDRdaemonSourceGui::updateWithStreamTime()
|
||||
{
|
||||
bool updateEventCounts = false;
|
||||
quint64 startingTimeStampMsec = ((quint64) m_startingTimeStamp.tv_sec * 1000LL) + ((quint64) m_startingTimeStamp.tv_usec / 1000LL);
|
||||
QDateTime dt = QDateTime::fromMSecsSinceEpoch(startingTimeStampMsec);
|
||||
QDateTime dt = QDateTime::fromMSecsSinceEpoch(m_startingTimeStampms);
|
||||
QString s_date = dt.toString("yyyy-MM-dd HH:mm:ss.zzz");
|
||||
ui->absTimeText->setText(s_date);
|
||||
|
||||
|
||||
@@ -17,8 +17,6 @@
|
||||
#ifndef INCLUDE_SDRDAEMONSOURCEGUI_H
|
||||
#define INCLUDE_SDRDAEMONSOURCEGUI_H
|
||||
|
||||
#include <sys/time.h>
|
||||
|
||||
#include <QTimer>
|
||||
#include <QWidget>
|
||||
#include <QNetworkRequest>
|
||||
@@ -72,7 +70,7 @@ private:
|
||||
|
||||
// int m_sampleRate;
|
||||
// quint64 m_centerFrequency;
|
||||
struct timeval m_startingTimeStamp;
|
||||
uint64_t m_startingTimeStampms;
|
||||
int m_framesDecodingStatus;
|
||||
bool m_allBlocksReceived;
|
||||
float m_bufferLengthInSecs;
|
||||
|
||||
@@ -16,7 +16,6 @@
|
||||
|
||||
#include <string.h>
|
||||
#include <errno.h>
|
||||
#include <sys/time.h>
|
||||
#include <QDebug>
|
||||
|
||||
#include "SWGDeviceSettings.h"
|
||||
@@ -134,8 +133,9 @@ quint64 SDRdaemonSourceInput::getCenterFrequency() const
|
||||
return m_SDRdaemonUDPHandler->getCenterFrequency();
|
||||
}
|
||||
|
||||
void SDRdaemonSourceInput::setCenterFrequency(qint64 centerFrequency __attribute__((unused)))
|
||||
void SDRdaemonSourceInput::setCenterFrequency(qint64 centerFrequency)
|
||||
{
|
||||
(void) centerFrequency;
|
||||
}
|
||||
|
||||
std::time_t SDRdaemonSourceInput::getStartingTimeStamp() const
|
||||
@@ -241,8 +241,9 @@ void SDRdaemonSourceInput::applySettings(const SDRdaemonSourceSettings& settings
|
||||
|
||||
int SDRdaemonSourceInput::webapiRunGet(
|
||||
SWGSDRangel::SWGDeviceState& response,
|
||||
QString& errorMessage __attribute__((unused)))
|
||||
QString& errorMessage)
|
||||
{
|
||||
(void) errorMessage;
|
||||
m_deviceAPI->getDeviceEngineStateStr(*response.getState());
|
||||
return 200;
|
||||
}
|
||||
@@ -250,8 +251,9 @@ int SDRdaemonSourceInput::webapiRunGet(
|
||||
int SDRdaemonSourceInput::webapiRun(
|
||||
bool run,
|
||||
SWGSDRangel::SWGDeviceState& response,
|
||||
QString& errorMessage __attribute__((unused)))
|
||||
QString& errorMessage)
|
||||
{
|
||||
(void) errorMessage;
|
||||
m_deviceAPI->getDeviceEngineStateStr(*response.getState());
|
||||
MsgStartStop *message = MsgStartStop::create(run);
|
||||
m_inputMessageQueue.push(message);
|
||||
@@ -267,8 +269,9 @@ int SDRdaemonSourceInput::webapiRun(
|
||||
|
||||
int SDRdaemonSourceInput::webapiSettingsGet(
|
||||
SWGSDRangel::SWGDeviceSettings& response,
|
||||
QString& errorMessage __attribute__((unused)))
|
||||
QString& errorMessage)
|
||||
{
|
||||
(void) errorMessage;
|
||||
response.setSdrDaemonSourceSettings(new SWGSDRangel::SWGSDRdaemonSourceSettings());
|
||||
response.getSdrDaemonSourceSettings()->init();
|
||||
webapiFormatDeviceSettings(response, m_settings);
|
||||
@@ -279,8 +282,9 @@ int SDRdaemonSourceInput::webapiSettingsPutPatch(
|
||||
bool force,
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response, // query + response
|
||||
QString& errorMessage __attribute__((unused)))
|
||||
QString& errorMessage)
|
||||
{
|
||||
(void) errorMessage;
|
||||
SDRdaemonSourceSettings settings = m_settings;
|
||||
|
||||
if (deviceSettingsKeys.contains("apiAddress")) {
|
||||
@@ -336,8 +340,9 @@ void SDRdaemonSourceInput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSett
|
||||
|
||||
int SDRdaemonSourceInput::webapiReportGet(
|
||||
SWGSDRangel::SWGDeviceReport& response,
|
||||
QString& errorMessage __attribute__((unused)))
|
||||
QString& errorMessage)
|
||||
{
|
||||
(void) errorMessage;
|
||||
response.setSdrDaemonSourceReport(new SWGSDRangel::SWGSDRdaemonSourceReport());
|
||||
response.getSdrDaemonSourceReport()->init();
|
||||
webapiFormatDeviceReport(response);
|
||||
@@ -350,8 +355,7 @@ void SDRdaemonSourceInput::webapiFormatDeviceReport(SWGSDRangel::SWGDeviceReport
|
||||
response.getSdrDaemonSourceReport()->setSampleRate(m_SDRdaemonUDPHandler->getSampleRate());
|
||||
response.getSdrDaemonSourceReport()->setBufferRwBalance(m_SDRdaemonUDPHandler->getBufferGauge());
|
||||
|
||||
quint64 startingTimeStampMsec = ((quint64) m_SDRdaemonUDPHandler->getTVSec() * 1000LL) + ((quint64) m_SDRdaemonUDPHandler->getTVuSec() / 1000LL);
|
||||
QDateTime dt = QDateTime::fromMSecsSinceEpoch(startingTimeStampMsec);
|
||||
QDateTime dt = QDateTime::fromMSecsSinceEpoch(m_SDRdaemonUDPHandler->getTVmSec());
|
||||
response.getSdrDaemonSourceReport()->setDaemonTimestamp(new QString(dt.toString("yyyy-MM-dd HH:mm:ss.zzz")));
|
||||
|
||||
response.getSdrDaemonSourceReport()->setMinNbBlocks(m_SDRdaemonUDPHandler->getMinNbBlocks());
|
||||
|
||||
@@ -99,26 +99,23 @@ public:
|
||||
public:
|
||||
int getSampleRate() const { return m_sampleRate; }
|
||||
quint64 getCenterFrequency() const { return m_centerFrequency; }
|
||||
uint32_t get_tv_sec() const { return m_tv_sec; }
|
||||
uint32_t get_tv_usec() const { return m_tv_usec; }
|
||||
uint32_t get_tv_msec() const { return m_tv_msec; }
|
||||
|
||||
static MsgReportSDRdaemonSourceStreamData* create(int sampleRate, quint64 centerFrequency, uint32_t tv_sec, uint32_t tv_usec)
|
||||
static MsgReportSDRdaemonSourceStreamData* create(int sampleRate, quint64 centerFrequency, uint64_t tv_msec)
|
||||
{
|
||||
return new MsgReportSDRdaemonSourceStreamData(sampleRate, centerFrequency, tv_sec, tv_usec);
|
||||
return new MsgReportSDRdaemonSourceStreamData(sampleRate, centerFrequency, tv_msec);
|
||||
}
|
||||
|
||||
protected:
|
||||
int m_sampleRate;
|
||||
quint64 m_centerFrequency;
|
||||
uint32_t m_tv_sec;
|
||||
uint32_t m_tv_usec;
|
||||
uint64_t m_tv_msec;
|
||||
|
||||
MsgReportSDRdaemonSourceStreamData(int sampleRate, quint64 centerFrequency, uint32_t tv_sec, uint32_t tv_usec) :
|
||||
MsgReportSDRdaemonSourceStreamData(int sampleRate, quint64 centerFrequency, uint64_t tv_msec) :
|
||||
Message(),
|
||||
m_sampleRate(sampleRate),
|
||||
m_centerFrequency(centerFrequency),
|
||||
m_tv_sec(tv_sec),
|
||||
m_tv_usec(tv_usec)
|
||||
m_tv_msec(tv_msec)
|
||||
{ }
|
||||
};
|
||||
|
||||
@@ -126,8 +123,7 @@ public:
|
||||
MESSAGE_CLASS_DECLARATION
|
||||
|
||||
public:
|
||||
uint32_t get_tv_sec() const { return m_tv_sec; }
|
||||
uint32_t get_tv_usec() const { return m_tv_usec; }
|
||||
uint64_t get_tv_msec() const { return m_tv_msec; }
|
||||
int getFramesDecodingStatus() const { return m_framesDecodingStatus; }
|
||||
bool allBlocksReceived() const { return m_allBlocksReceived; }
|
||||
float getBufferLengthInSecs() const { return m_bufferLenSec; }
|
||||
@@ -143,8 +139,7 @@ public:
|
||||
int getSampleBits() const { return m_sampleBits; }
|
||||
int getSampleBytes() const { return m_sampleBytes; }
|
||||
|
||||
static MsgReportSDRdaemonSourceStreamTiming* create(uint32_t tv_sec,
|
||||
uint32_t tv_usec,
|
||||
static MsgReportSDRdaemonSourceStreamTiming* create(uint64_t tv_msec,
|
||||
float bufferLenSec,
|
||||
int32_t bufferGauge,
|
||||
int framesDecodingStatus,
|
||||
@@ -160,8 +155,7 @@ public:
|
||||
int sampleBits,
|
||||
int sampleBytes)
|
||||
{
|
||||
return new MsgReportSDRdaemonSourceStreamTiming(tv_sec,
|
||||
tv_usec,
|
||||
return new MsgReportSDRdaemonSourceStreamTiming(tv_msec,
|
||||
bufferLenSec,
|
||||
bufferGauge,
|
||||
framesDecodingStatus,
|
||||
@@ -179,8 +173,7 @@ public:
|
||||
}
|
||||
|
||||
protected:
|
||||
uint32_t m_tv_sec;
|
||||
uint32_t m_tv_usec;
|
||||
uint64_t m_tv_msec;
|
||||
int m_framesDecodingStatus;
|
||||
bool m_allBlocksReceived;
|
||||
float m_bufferLenSec;
|
||||
@@ -196,8 +189,7 @@ public:
|
||||
int m_sampleBits;
|
||||
int m_sampleBytes;
|
||||
|
||||
MsgReportSDRdaemonSourceStreamTiming(uint32_t tv_sec,
|
||||
uint32_t tv_usec,
|
||||
MsgReportSDRdaemonSourceStreamTiming(uint64_t tv_msec,
|
||||
float bufferLenSec,
|
||||
int32_t bufferGauge,
|
||||
int framesDecodingStatus,
|
||||
@@ -213,8 +205,7 @@ public:
|
||||
int sampleBits,
|
||||
int sampleBytes) :
|
||||
Message(),
|
||||
m_tv_sec(tv_sec),
|
||||
m_tv_usec(tv_usec),
|
||||
m_tv_msec(tv_msec),
|
||||
m_framesDecodingStatus(framesDecodingStatus),
|
||||
m_allBlocksReceived(allBlocksReceived),
|
||||
m_bufferLenSec(bufferLenSec),
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
#include <QUdpSocket>
|
||||
#include <QDebug>
|
||||
#include <QTimer>
|
||||
#include <unistd.h>
|
||||
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/dspengine.h"
|
||||
@@ -42,8 +41,7 @@ SDRdaemonSourceUDPHandler::SDRdaemonSourceUDPHandler(SampleSinkFifo *sampleFifo,
|
||||
m_sampleFifo(sampleFifo),
|
||||
m_samplerate(0),
|
||||
m_centerFrequency(0),
|
||||
m_tv_sec(0),
|
||||
m_tv_usec(0),
|
||||
m_tv_msec(0),
|
||||
m_outputMessageQueueToGUI(0),
|
||||
m_tickCount(0),
|
||||
m_samplesCount(0),
|
||||
@@ -180,8 +178,7 @@ void SDRdaemonSourceUDPHandler::processData()
|
||||
const SDRDaemonMetaDataFEC& metaData = m_sdrDaemonBuffer.getCurrentMeta();
|
||||
bool change = false;
|
||||
|
||||
m_tv_sec = m_sdrDaemonBuffer.getTVOutSec();
|
||||
m_tv_usec = m_sdrDaemonBuffer.getTVOutUsec();
|
||||
m_tv_msec = m_sdrDaemonBuffer.getTVOutMSec();
|
||||
|
||||
if (m_centerFrequency != metaData.m_centerFrequency)
|
||||
{
|
||||
@@ -207,8 +204,7 @@ void SDRdaemonSourceUDPHandler::processData()
|
||||
SDRdaemonSourceInput::MsgReportSDRdaemonSourceStreamData *report = SDRdaemonSourceInput::MsgReportSDRdaemonSourceStreamData::create(
|
||||
m_samplerate,
|
||||
m_centerFrequency * 1000, // Frequency in Hz for the GUI
|
||||
m_tv_sec,
|
||||
m_tv_usec);
|
||||
m_tv_msec);
|
||||
|
||||
m_outputMessageQueueToGUI->push(report);
|
||||
}
|
||||
@@ -266,13 +262,7 @@ void SDRdaemonSourceUDPHandler::tick()
|
||||
const SDRDaemonMetaDataFEC& metaData = m_sdrDaemonBuffer.getCurrentMeta();
|
||||
m_readLength = m_readLengthSamples * (metaData.m_sampleBytes & 0xF) * 2;
|
||||
|
||||
if (SDR_RX_SAMP_SZ == metaData.m_sampleBits) // same sample size
|
||||
{
|
||||
// read samples directly feeding the SampleFifo (no callback)
|
||||
m_sampleFifo->write(reinterpret_cast<quint8*>(m_sdrDaemonBuffer.readData(m_readLength)), m_readLength);
|
||||
m_samplesCount += m_readLengthSamples;
|
||||
}
|
||||
else if (metaData.m_sampleBits == 16) // 16 -> 24 bits
|
||||
if ((metaData.m_sampleBits == 16) && (SDR_RX_SAMP_SZ == 24)) // 16 -> 24 bits
|
||||
{
|
||||
if (m_readLengthSamples > m_converterBufferNbSamples)
|
||||
{
|
||||
@@ -292,7 +282,7 @@ void SDRdaemonSourceUDPHandler::tick()
|
||||
|
||||
m_sampleFifo->write(reinterpret_cast<quint8*>(m_converterBuffer), m_readLengthSamples*sizeof(Sample));
|
||||
}
|
||||
else if (metaData.m_sampleBits == 24) // 24 -> 16 bits
|
||||
else if ((metaData.m_sampleBits == 24) && (SDR_RX_SAMP_SZ == 16)) // 24 -> 16 bits
|
||||
{
|
||||
if (m_readLengthSamples > m_converterBufferNbSamples)
|
||||
{
|
||||
@@ -311,7 +301,13 @@ void SDRdaemonSourceUDPHandler::tick()
|
||||
|
||||
m_sampleFifo->write(reinterpret_cast<quint8*>(m_converterBuffer), m_readLengthSamples*sizeof(Sample));
|
||||
}
|
||||
else
|
||||
else if ((metaData.m_sampleBits == 16) || (metaData.m_sampleBits == 24)) // same sample size and valid size
|
||||
{
|
||||
// read samples directly feeding the SampleFifo (no callback)
|
||||
m_sampleFifo->write(reinterpret_cast<quint8*>(m_sdrDaemonBuffer.readData(m_readLength)), m_readLength);
|
||||
m_samplesCount += m_readLengthSamples;
|
||||
}
|
||||
else // invalid size
|
||||
{
|
||||
qWarning("SDRdaemonSourceUDPHandler::tick: unexpected sample size in stream: %d bits", (int) metaData.m_sampleBits);
|
||||
}
|
||||
@@ -344,8 +340,7 @@ void SDRdaemonSourceUDPHandler::tick()
|
||||
}
|
||||
|
||||
SDRdaemonSourceInput::MsgReportSDRdaemonSourceStreamTiming *report = SDRdaemonSourceInput::MsgReportSDRdaemonSourceStreamTiming::create(
|
||||
m_tv_sec,
|
||||
m_tv_usec,
|
||||
m_tv_msec,
|
||||
m_sdrDaemonBuffer.getBufferLengthInSecs(),
|
||||
m_sdrDaemonBuffer.getBufferGauge(),
|
||||
framesDecodingStatus,
|
||||
|
||||
@@ -48,8 +48,7 @@ public:
|
||||
int getSampleRate() const { return m_samplerate; }
|
||||
int getCenterFrequency() const { return m_centerFrequency * 1000; }
|
||||
int getBufferGauge() const { return m_sdrDaemonBuffer.getBufferGauge(); }
|
||||
uint32_t getTVSec() const { return m_tv_sec; }
|
||||
uint32_t getTVuSec() const { return m_tv_usec; }
|
||||
uint64_t getTVmSec() const { return m_tv_msec; }
|
||||
int getMinNbBlocks() { return m_sdrDaemonBuffer.getMinNbBlocks(); }
|
||||
int getMaxNbRecovery() { return m_sdrDaemonBuffer.getMaxNbRecovery(); }
|
||||
public slots:
|
||||
@@ -72,8 +71,7 @@ private:
|
||||
SampleSinkFifo *m_sampleFifo;
|
||||
uint32_t m_samplerate;
|
||||
uint32_t m_centerFrequency;
|
||||
uint32_t m_tv_sec;
|
||||
uint32_t m_tv_usec;
|
||||
uint64_t m_tv_msec;
|
||||
MessageQueue *m_outputMessageQueueToGUI;
|
||||
uint32_t m_tickCount;
|
||||
std::size_t m_samplesCount;
|
||||
|
||||
Reference in New Issue
Block a user