mirror of
https://github.com/f4exb/sdrangel.git
synced 2024-11-25 01:18:38 -05:00
Remote Output: improve report API
This commit is contained in:
parent
54866a1a1e
commit
9097e2f6d4
@ -187,7 +187,7 @@ public:
|
|||||||
|
|
||||||
virtual void getIdentifier(QString& id) { id = objectName(); }
|
virtual void getIdentifier(QString& id) { id = objectName(); }
|
||||||
virtual void getTitle(QString& title) { title = m_settings.m_title; }
|
virtual void getTitle(QString& title) { title = m_settings.m_title; }
|
||||||
virtual qint64 getCenterFrequency() const { return 0; }
|
virtual qint64 getCenterFrequency() const { return m_frequencyOffset; }
|
||||||
|
|
||||||
virtual int getNbSinkStreams() const { return 0; }
|
virtual int getNbSinkStreams() const { return 0; }
|
||||||
virtual int getNbSourceStreams() const { return 1; }
|
virtual int getNbSourceStreams() const { return 1; }
|
||||||
|
@ -29,6 +29,7 @@
|
|||||||
#include "SWGRemoteOutputReport.h"
|
#include "SWGRemoteOutputReport.h"
|
||||||
|
|
||||||
#include "util/simpleserializer.h"
|
#include "util/simpleserializer.h"
|
||||||
|
#include "util/timeutil.h"
|
||||||
#include "dsp/dspcommands.h"
|
#include "dsp/dspcommands.h"
|
||||||
#include "dsp/dspengine.h"
|
#include "dsp/dspengine.h"
|
||||||
|
|
||||||
@ -41,7 +42,6 @@ MESSAGE_CLASS_DEFINITION(RemoteOutput::MsgConfigureRemoteOutput, Message)
|
|||||||
MESSAGE_CLASS_DEFINITION(RemoteOutput::MsgConfigureRemoteOutputWork, Message)
|
MESSAGE_CLASS_DEFINITION(RemoteOutput::MsgConfigureRemoteOutputWork, Message)
|
||||||
MESSAGE_CLASS_DEFINITION(RemoteOutput::MsgStartStop, Message)
|
MESSAGE_CLASS_DEFINITION(RemoteOutput::MsgStartStop, Message)
|
||||||
MESSAGE_CLASS_DEFINITION(RemoteOutput::MsgConfigureRemoteOutputChunkCorrection, Message)
|
MESSAGE_CLASS_DEFINITION(RemoteOutput::MsgConfigureRemoteOutputChunkCorrection, Message)
|
||||||
MESSAGE_CLASS_DEFINITION(RemoteOutput::MsgConfigureRemoteOutputSampleRate, Message)
|
|
||||||
MESSAGE_CLASS_DEFINITION(RemoteOutput::MsgReportRemoteData, Message)
|
MESSAGE_CLASS_DEFINITION(RemoteOutput::MsgReportRemoteData, Message)
|
||||||
MESSAGE_CLASS_DEFINITION(RemoteOutput::MsgReportRemoteFixedData, Message)
|
MESSAGE_CLASS_DEFINITION(RemoteOutput::MsgReportRemoteFixedData, Message)
|
||||||
MESSAGE_CLASS_DEFINITION(RemoteOutput::MsgRequestFixedData, Message)
|
MESSAGE_CLASS_DEFINITION(RemoteOutput::MsgRequestFixedData, Message)
|
||||||
@ -57,7 +57,11 @@ RemoteOutput::RemoteOutput(DeviceAPI *deviceAPI) :
|
|||||||
m_masterTimer(deviceAPI->getMasterTimer()),
|
m_masterTimer(deviceAPI->getMasterTimer()),
|
||||||
m_tickCount(0),
|
m_tickCount(0),
|
||||||
m_greaterTickCount(0),
|
m_greaterTickCount(0),
|
||||||
m_tickMultiplier(1)
|
m_tickMultiplier(1),
|
||||||
|
m_queueLength(0),
|
||||||
|
m_queueSize(0),
|
||||||
|
m_recoverableCount(0),
|
||||||
|
m_unrecoverableCount(0)
|
||||||
{
|
{
|
||||||
m_deviceAPI->setNbSinkStreams(1);
|
m_deviceAPI->setNbSinkStreams(1);
|
||||||
m_networkManager = new QNetworkAccessManager();
|
m_networkManager = new QNetworkAccessManager();
|
||||||
@ -466,10 +470,16 @@ void RemoteOutput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& re
|
|||||||
|
|
||||||
void RemoteOutput::webapiFormatDeviceReport(SWGSDRangel::SWGDeviceReport& response)
|
void RemoteOutput::webapiFormatDeviceReport(SWGSDRangel::SWGDeviceReport& response)
|
||||||
{
|
{
|
||||||
|
uint64_t nowus = TimeUtil::nowus();
|
||||||
|
response.getRemoteOutputReport()->setTvSec(nowus / 1000000U);
|
||||||
|
response.getRemoteOutputReport()->setTvUSec(nowus % 1000000U);
|
||||||
response.getRemoteOutputReport()->setCenterFrequency(m_centerFrequency);
|
response.getRemoteOutputReport()->setCenterFrequency(m_centerFrequency);
|
||||||
response.getRemoteOutputReport()->setSampleRate(m_sampleRate);
|
response.getRemoteOutputReport()->setSampleRate(m_sampleRate);
|
||||||
response.getRemoteOutputReport()->setBufferRwBalance(m_sampleSourceFifo.getRWBalance());
|
response.getRemoteOutputReport()->setQueueSize(m_queueSize);
|
||||||
|
response.getRemoteOutputReport()->setQueueLength(m_queueLength);
|
||||||
response.getRemoteOutputReport()->setSampleCount(m_remoteOutputWorker ? (int) m_remoteOutputWorker->getSamplesCount() : 0);
|
response.getRemoteOutputReport()->setSampleCount(m_remoteOutputWorker ? (int) m_remoteOutputWorker->getSamplesCount() : 0);
|
||||||
|
response.getRemoteOutputReport()->setCorrectableErrorsCount(m_recoverableCount);
|
||||||
|
response.getRemoteOutputReport()->setUncorrectableErrorsCount(m_unrecoverableCount);
|
||||||
}
|
}
|
||||||
|
|
||||||
void RemoteOutput::tick()
|
void RemoteOutput::tick()
|
||||||
@ -552,20 +562,20 @@ void RemoteOutput::analyzeApiReply(const QJsonObject& jsonObject, const QString&
|
|||||||
msgRemoteData.m_centerFrequency = m_centerFrequency;
|
msgRemoteData.m_centerFrequency = m_centerFrequency;
|
||||||
msgRemoteData.m_sampleRate = m_sampleRate;
|
msgRemoteData.m_sampleRate = m_sampleRate;
|
||||||
|
|
||||||
int queueSize = report["queueSize"].toInt();
|
m_queueSize = report["queueSize"].toInt();
|
||||||
queueSize = queueSize == 0 ? 20 : queueSize;
|
m_queueSize = m_queueSize == 0 ? 20 : m_queueSize;
|
||||||
msgRemoteData.m_queueSize = queueSize;
|
msgRemoteData.m_queueSize = m_queueSize;
|
||||||
int queueLength = report["queueLength"].toInt();
|
m_queueLength = report["queueLength"].toInt();
|
||||||
msgRemoteData.m_queueLength = queueLength;
|
msgRemoteData.m_queueLength = m_queueLength;
|
||||||
uint64_t remoteTimestampUs = report["tvSec"].toInt()*1000000ULL + report["tvUSec"].toInt();
|
uint64_t remoteTimestampUs = report["tvSec"].toInt()*1000000ULL + report["tvUSec"].toInt();
|
||||||
msgRemoteData.m_timestampUs = remoteTimestampUs;
|
msgRemoteData.m_timestampUs = remoteTimestampUs;
|
||||||
int intRemoteSampleCount = report["samplesCount"].toInt();
|
int intRemoteSampleCount = report["samplesCount"].toInt();
|
||||||
uint32_t remoteSampleCount = intRemoteSampleCount < 0 ? 0 : intRemoteSampleCount;
|
uint32_t remoteSampleCount = intRemoteSampleCount < 0 ? 0 : intRemoteSampleCount;
|
||||||
msgRemoteData.m_sampleCount = remoteSampleCount;
|
msgRemoteData.m_sampleCount = remoteSampleCount;
|
||||||
int unrecoverableCount = report["uncorrectableErrorsCount"].toInt();
|
m_unrecoverableCount = report["uncorrectableErrorsCount"].toInt();
|
||||||
msgRemoteData.m_unrecoverableCount = unrecoverableCount;
|
msgRemoteData.m_unrecoverableCount = m_unrecoverableCount;
|
||||||
int recoverableCount = report["correctableErrorsCount"].toInt();
|
m_recoverableCount = report["correctableErrorsCount"].toInt();
|
||||||
msgRemoteData.m_recoverableCount = recoverableCount;
|
msgRemoteData.m_recoverableCount = m_recoverableCount;
|
||||||
|
|
||||||
if (m_guiMessageQueue)
|
if (m_guiMessageQueue)
|
||||||
{
|
{
|
||||||
@ -579,7 +589,7 @@ void RemoteOutput::analyzeApiReply(const QJsonObject& jsonObject, const QString&
|
|||||||
|
|
||||||
if (++m_greaterTickCount == m_tickMultiplier)
|
if (++m_greaterTickCount == m_tickMultiplier)
|
||||||
{
|
{
|
||||||
queueLengthCompensation(m_sampleRate, queueLength, queueSize);
|
queueLengthCompensation(m_sampleRate, m_queueLength, m_queueSize);
|
||||||
m_greaterTickCount = 0;
|
m_greaterTickCount = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -123,25 +123,6 @@ public:
|
|||||||
{ }
|
{ }
|
||||||
};
|
};
|
||||||
|
|
||||||
class MsgConfigureRemoteOutputSampleRate : public Message {
|
|
||||||
MESSAGE_CLASS_DECLARATION
|
|
||||||
|
|
||||||
public:
|
|
||||||
int getSampleRate() const { return m_sampleRate; }
|
|
||||||
|
|
||||||
static MsgConfigureRemoteOutputSampleRate* create(int sampleRate) {
|
|
||||||
return new MsgConfigureRemoteOutputSampleRate(sampleRate);
|
|
||||||
}
|
|
||||||
|
|
||||||
private:
|
|
||||||
int m_sampleRate;
|
|
||||||
|
|
||||||
MsgConfigureRemoteOutputSampleRate(int sampleRate) :
|
|
||||||
Message(),
|
|
||||||
m_sampleRate(sampleRate)
|
|
||||||
{ }
|
|
||||||
};
|
|
||||||
|
|
||||||
class MsgReportRemoteData : public Message {
|
class MsgReportRemoteData : public Message {
|
||||||
MESSAGE_CLASS_DECLARATION
|
MESSAGE_CLASS_DECLARATION
|
||||||
|
|
||||||
@ -284,6 +265,10 @@ private:
|
|||||||
uint32_t m_tickCount; // for 50 ms timer
|
uint32_t m_tickCount; // for 50 ms timer
|
||||||
uint32_t m_greaterTickCount; // for 1 s derived timer
|
uint32_t m_greaterTickCount; // for 1 s derived timer
|
||||||
uint32_t m_tickMultiplier; // for greater tick count
|
uint32_t m_tickMultiplier; // for greater tick count
|
||||||
|
int m_queueLength;
|
||||||
|
int m_queueSize;
|
||||||
|
int m_recoverableCount;
|
||||||
|
int m_unrecoverableCount;
|
||||||
|
|
||||||
QNetworkAccessManager *m_networkManager;
|
QNetworkAccessManager *m_networkManager;
|
||||||
QNetworkRequest m_networkRequest;
|
QNetworkRequest m_networkRequest;
|
||||||
|
@ -9827,14 +9827,33 @@ margin-bottom: 20px;
|
|||||||
"sampleRate" : {
|
"sampleRate" : {
|
||||||
"type" : "integer"
|
"type" : "integer"
|
||||||
},
|
},
|
||||||
"bufferRWBalance" : {
|
"queueLength" : {
|
||||||
"type" : "number",
|
"type" : "integer",
|
||||||
"format" : "float",
|
"description" : "Data read/write queue length in number of data frames"
|
||||||
"description" : "ratio off the mid buffer (positive read leads)"
|
},
|
||||||
|
"queueSize" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "Data read/write queue size in number of data frames"
|
||||||
},
|
},
|
||||||
"sampleCount" : {
|
"sampleCount" : {
|
||||||
"type" : "integer",
|
"type" : "integer",
|
||||||
"description" : "count of samples that have been sent"
|
"description" : "count of samples that have been sent"
|
||||||
|
},
|
||||||
|
"correctableErrorsCount" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "Absolute number of correctable errors"
|
||||||
|
},
|
||||||
|
"uncorrectableErrorsCount" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "Absolute number of uncorrectable errors"
|
||||||
|
},
|
||||||
|
"tvSec" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "Counts timestamp seconds"
|
||||||
|
},
|
||||||
|
"tvUSec" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "Counts timestamp microseconds"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"description" : "RemoteOutput"
|
"description" : "RemoteOutput"
|
||||||
@ -51603,7 +51622,7 @@ except ApiException as e:
|
|||||||
</div>
|
</div>
|
||||||
<div id="generator">
|
<div id="generator">
|
||||||
<div class="content">
|
<div class="content">
|
||||||
Generated 2021-12-12T22:32:39.234+01:00
|
Generated 2021-12-15T21:39:08.842+01:00
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -35,10 +35,24 @@ RemoteOutputReport:
|
|||||||
format: int64
|
format: int64
|
||||||
sampleRate:
|
sampleRate:
|
||||||
type: integer
|
type: integer
|
||||||
bufferRWBalance:
|
queueLength:
|
||||||
description: ratio off the mid buffer (positive read leads)
|
description: "Data read/write queue length in number of data frames"
|
||||||
type: number
|
type: integer
|
||||||
format: float
|
queueSize:
|
||||||
|
description: "Data read/write queue size in number of data frames"
|
||||||
|
type: integer
|
||||||
sampleCount:
|
sampleCount:
|
||||||
description: count of samples that have been sent
|
description: count of samples that have been sent
|
||||||
type: integer
|
type: integer
|
||||||
|
correctableErrorsCount:
|
||||||
|
description: "Absolute number of correctable errors"
|
||||||
|
type: integer
|
||||||
|
uncorrectableErrorsCount:
|
||||||
|
description: "Absolute number of uncorrectable errors"
|
||||||
|
type: integer
|
||||||
|
tvSec:
|
||||||
|
description: "Counts timestamp seconds"
|
||||||
|
type: integer
|
||||||
|
tvUSec:
|
||||||
|
description: "Counts timestamp microseconds"
|
||||||
|
type: integer
|
||||||
|
@ -35,10 +35,24 @@ RemoteOutputReport:
|
|||||||
format: int64
|
format: int64
|
||||||
sampleRate:
|
sampleRate:
|
||||||
type: integer
|
type: integer
|
||||||
bufferRWBalance:
|
queueLength:
|
||||||
description: ratio off the mid buffer (positive read leads)
|
description: "Data read/write queue length in number of data frames"
|
||||||
type: number
|
type: integer
|
||||||
format: float
|
queueSize:
|
||||||
|
description: "Data read/write queue size in number of data frames"
|
||||||
|
type: integer
|
||||||
sampleCount:
|
sampleCount:
|
||||||
description: count of samples that have been sent
|
description: count of samples that have been sent
|
||||||
type: integer
|
type: integer
|
||||||
|
correctableErrorsCount:
|
||||||
|
description: "Absolute number of correctable errors"
|
||||||
|
type: integer
|
||||||
|
uncorrectableErrorsCount:
|
||||||
|
description: "Absolute number of uncorrectable errors"
|
||||||
|
type: integer
|
||||||
|
tvSec:
|
||||||
|
description: "Counts timestamp seconds"
|
||||||
|
type: integer
|
||||||
|
tvUSec:
|
||||||
|
description: "Counts timestamp microseconds"
|
||||||
|
type: integer
|
||||||
|
@ -9827,14 +9827,33 @@ margin-bottom: 20px;
|
|||||||
"sampleRate" : {
|
"sampleRate" : {
|
||||||
"type" : "integer"
|
"type" : "integer"
|
||||||
},
|
},
|
||||||
"bufferRWBalance" : {
|
"queueLength" : {
|
||||||
"type" : "number",
|
"type" : "integer",
|
||||||
"format" : "float",
|
"description" : "Data read/write queue length in number of data frames"
|
||||||
"description" : "ratio off the mid buffer (positive read leads)"
|
},
|
||||||
|
"queueSize" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "Data read/write queue size in number of data frames"
|
||||||
},
|
},
|
||||||
"sampleCount" : {
|
"sampleCount" : {
|
||||||
"type" : "integer",
|
"type" : "integer",
|
||||||
"description" : "count of samples that have been sent"
|
"description" : "count of samples that have been sent"
|
||||||
|
},
|
||||||
|
"correctableErrorsCount" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "Absolute number of correctable errors"
|
||||||
|
},
|
||||||
|
"uncorrectableErrorsCount" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "Absolute number of uncorrectable errors"
|
||||||
|
},
|
||||||
|
"tvSec" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "Counts timestamp seconds"
|
||||||
|
},
|
||||||
|
"tvUSec" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "Counts timestamp microseconds"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"description" : "RemoteOutput"
|
"description" : "RemoteOutput"
|
||||||
@ -51603,7 +51622,7 @@ except ApiException as e:
|
|||||||
</div>
|
</div>
|
||||||
<div id="generator">
|
<div id="generator">
|
||||||
<div class="content">
|
<div class="content">
|
||||||
Generated 2021-12-12T22:32:39.234+01:00
|
Generated 2021-12-15T21:39:08.842+01:00
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -32,10 +32,20 @@ SWGRemoteOutputReport::SWGRemoteOutputReport() {
|
|||||||
m_center_frequency_isSet = false;
|
m_center_frequency_isSet = false;
|
||||||
sample_rate = 0;
|
sample_rate = 0;
|
||||||
m_sample_rate_isSet = false;
|
m_sample_rate_isSet = false;
|
||||||
buffer_rw_balance = 0.0f;
|
queue_length = 0;
|
||||||
m_buffer_rw_balance_isSet = false;
|
m_queue_length_isSet = false;
|
||||||
|
queue_size = 0;
|
||||||
|
m_queue_size_isSet = false;
|
||||||
sample_count = 0;
|
sample_count = 0;
|
||||||
m_sample_count_isSet = false;
|
m_sample_count_isSet = false;
|
||||||
|
correctable_errors_count = 0;
|
||||||
|
m_correctable_errors_count_isSet = false;
|
||||||
|
uncorrectable_errors_count = 0;
|
||||||
|
m_uncorrectable_errors_count_isSet = false;
|
||||||
|
tv_sec = 0;
|
||||||
|
m_tv_sec_isSet = false;
|
||||||
|
tv_u_sec = 0;
|
||||||
|
m_tv_u_sec_isSet = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
SWGRemoteOutputReport::~SWGRemoteOutputReport() {
|
SWGRemoteOutputReport::~SWGRemoteOutputReport() {
|
||||||
@ -48,10 +58,20 @@ SWGRemoteOutputReport::init() {
|
|||||||
m_center_frequency_isSet = false;
|
m_center_frequency_isSet = false;
|
||||||
sample_rate = 0;
|
sample_rate = 0;
|
||||||
m_sample_rate_isSet = false;
|
m_sample_rate_isSet = false;
|
||||||
buffer_rw_balance = 0.0f;
|
queue_length = 0;
|
||||||
m_buffer_rw_balance_isSet = false;
|
m_queue_length_isSet = false;
|
||||||
|
queue_size = 0;
|
||||||
|
m_queue_size_isSet = false;
|
||||||
sample_count = 0;
|
sample_count = 0;
|
||||||
m_sample_count_isSet = false;
|
m_sample_count_isSet = false;
|
||||||
|
correctable_errors_count = 0;
|
||||||
|
m_correctable_errors_count_isSet = false;
|
||||||
|
uncorrectable_errors_count = 0;
|
||||||
|
m_uncorrectable_errors_count_isSet = false;
|
||||||
|
tv_sec = 0;
|
||||||
|
m_tv_sec_isSet = false;
|
||||||
|
tv_u_sec = 0;
|
||||||
|
m_tv_u_sec_isSet = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
@ -60,6 +80,11 @@ SWGRemoteOutputReport::cleanup() {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
SWGRemoteOutputReport*
|
SWGRemoteOutputReport*
|
||||||
@ -77,10 +102,20 @@ SWGRemoteOutputReport::fromJsonObject(QJsonObject &pJson) {
|
|||||||
|
|
||||||
::SWGSDRangel::setValue(&sample_rate, pJson["sampleRate"], "qint32", "");
|
::SWGSDRangel::setValue(&sample_rate, pJson["sampleRate"], "qint32", "");
|
||||||
|
|
||||||
::SWGSDRangel::setValue(&buffer_rw_balance, pJson["bufferRWBalance"], "float", "");
|
::SWGSDRangel::setValue(&queue_length, pJson["queueLength"], "qint32", "");
|
||||||
|
|
||||||
|
::SWGSDRangel::setValue(&queue_size, pJson["queueSize"], "qint32", "");
|
||||||
|
|
||||||
::SWGSDRangel::setValue(&sample_count, pJson["sampleCount"], "qint32", "");
|
::SWGSDRangel::setValue(&sample_count, pJson["sampleCount"], "qint32", "");
|
||||||
|
|
||||||
|
::SWGSDRangel::setValue(&correctable_errors_count, pJson["correctableErrorsCount"], "qint32", "");
|
||||||
|
|
||||||
|
::SWGSDRangel::setValue(&uncorrectable_errors_count, pJson["uncorrectableErrorsCount"], "qint32", "");
|
||||||
|
|
||||||
|
::SWGSDRangel::setValue(&tv_sec, pJson["tvSec"], "qint32", "");
|
||||||
|
|
||||||
|
::SWGSDRangel::setValue(&tv_u_sec, pJson["tvUSec"], "qint32", "");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QString
|
QString
|
||||||
@ -103,12 +138,27 @@ SWGRemoteOutputReport::asJsonObject() {
|
|||||||
if(m_sample_rate_isSet){
|
if(m_sample_rate_isSet){
|
||||||
obj->insert("sampleRate", QJsonValue(sample_rate));
|
obj->insert("sampleRate", QJsonValue(sample_rate));
|
||||||
}
|
}
|
||||||
if(m_buffer_rw_balance_isSet){
|
if(m_queue_length_isSet){
|
||||||
obj->insert("bufferRWBalance", QJsonValue(buffer_rw_balance));
|
obj->insert("queueLength", QJsonValue(queue_length));
|
||||||
|
}
|
||||||
|
if(m_queue_size_isSet){
|
||||||
|
obj->insert("queueSize", QJsonValue(queue_size));
|
||||||
}
|
}
|
||||||
if(m_sample_count_isSet){
|
if(m_sample_count_isSet){
|
||||||
obj->insert("sampleCount", QJsonValue(sample_count));
|
obj->insert("sampleCount", QJsonValue(sample_count));
|
||||||
}
|
}
|
||||||
|
if(m_correctable_errors_count_isSet){
|
||||||
|
obj->insert("correctableErrorsCount", QJsonValue(correctable_errors_count));
|
||||||
|
}
|
||||||
|
if(m_uncorrectable_errors_count_isSet){
|
||||||
|
obj->insert("uncorrectableErrorsCount", QJsonValue(uncorrectable_errors_count));
|
||||||
|
}
|
||||||
|
if(m_tv_sec_isSet){
|
||||||
|
obj->insert("tvSec", QJsonValue(tv_sec));
|
||||||
|
}
|
||||||
|
if(m_tv_u_sec_isSet){
|
||||||
|
obj->insert("tvUSec", QJsonValue(tv_u_sec));
|
||||||
|
}
|
||||||
|
|
||||||
return obj;
|
return obj;
|
||||||
}
|
}
|
||||||
@ -133,14 +183,24 @@ SWGRemoteOutputReport::setSampleRate(qint32 sample_rate) {
|
|||||||
this->m_sample_rate_isSet = true;
|
this->m_sample_rate_isSet = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
float
|
qint32
|
||||||
SWGRemoteOutputReport::getBufferRwBalance() {
|
SWGRemoteOutputReport::getQueueLength() {
|
||||||
return buffer_rw_balance;
|
return queue_length;
|
||||||
}
|
}
|
||||||
void
|
void
|
||||||
SWGRemoteOutputReport::setBufferRwBalance(float buffer_rw_balance) {
|
SWGRemoteOutputReport::setQueueLength(qint32 queue_length) {
|
||||||
this->buffer_rw_balance = buffer_rw_balance;
|
this->queue_length = queue_length;
|
||||||
this->m_buffer_rw_balance_isSet = true;
|
this->m_queue_length_isSet = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
qint32
|
||||||
|
SWGRemoteOutputReport::getQueueSize() {
|
||||||
|
return queue_size;
|
||||||
|
}
|
||||||
|
void
|
||||||
|
SWGRemoteOutputReport::setQueueSize(qint32 queue_size) {
|
||||||
|
this->queue_size = queue_size;
|
||||||
|
this->m_queue_size_isSet = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
qint32
|
qint32
|
||||||
@ -153,6 +213,46 @@ SWGRemoteOutputReport::setSampleCount(qint32 sample_count) {
|
|||||||
this->m_sample_count_isSet = true;
|
this->m_sample_count_isSet = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
qint32
|
||||||
|
SWGRemoteOutputReport::getCorrectableErrorsCount() {
|
||||||
|
return correctable_errors_count;
|
||||||
|
}
|
||||||
|
void
|
||||||
|
SWGRemoteOutputReport::setCorrectableErrorsCount(qint32 correctable_errors_count) {
|
||||||
|
this->correctable_errors_count = correctable_errors_count;
|
||||||
|
this->m_correctable_errors_count_isSet = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
qint32
|
||||||
|
SWGRemoteOutputReport::getUncorrectableErrorsCount() {
|
||||||
|
return uncorrectable_errors_count;
|
||||||
|
}
|
||||||
|
void
|
||||||
|
SWGRemoteOutputReport::setUncorrectableErrorsCount(qint32 uncorrectable_errors_count) {
|
||||||
|
this->uncorrectable_errors_count = uncorrectable_errors_count;
|
||||||
|
this->m_uncorrectable_errors_count_isSet = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
qint32
|
||||||
|
SWGRemoteOutputReport::getTvSec() {
|
||||||
|
return tv_sec;
|
||||||
|
}
|
||||||
|
void
|
||||||
|
SWGRemoteOutputReport::setTvSec(qint32 tv_sec) {
|
||||||
|
this->tv_sec = tv_sec;
|
||||||
|
this->m_tv_sec_isSet = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
qint32
|
||||||
|
SWGRemoteOutputReport::getTvUSec() {
|
||||||
|
return tv_u_sec;
|
||||||
|
}
|
||||||
|
void
|
||||||
|
SWGRemoteOutputReport::setTvUSec(qint32 tv_u_sec) {
|
||||||
|
this->tv_u_sec = tv_u_sec;
|
||||||
|
this->m_tv_u_sec_isSet = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
bool
|
bool
|
||||||
SWGRemoteOutputReport::isSet(){
|
SWGRemoteOutputReport::isSet(){
|
||||||
@ -164,12 +264,27 @@ SWGRemoteOutputReport::isSet(){
|
|||||||
if(m_sample_rate_isSet){
|
if(m_sample_rate_isSet){
|
||||||
isObjectUpdated = true; break;
|
isObjectUpdated = true; break;
|
||||||
}
|
}
|
||||||
if(m_buffer_rw_balance_isSet){
|
if(m_queue_length_isSet){
|
||||||
|
isObjectUpdated = true; break;
|
||||||
|
}
|
||||||
|
if(m_queue_size_isSet){
|
||||||
isObjectUpdated = true; break;
|
isObjectUpdated = true; break;
|
||||||
}
|
}
|
||||||
if(m_sample_count_isSet){
|
if(m_sample_count_isSet){
|
||||||
isObjectUpdated = true; break;
|
isObjectUpdated = true; break;
|
||||||
}
|
}
|
||||||
|
if(m_correctable_errors_count_isSet){
|
||||||
|
isObjectUpdated = true; break;
|
||||||
|
}
|
||||||
|
if(m_uncorrectable_errors_count_isSet){
|
||||||
|
isObjectUpdated = true; break;
|
||||||
|
}
|
||||||
|
if(m_tv_sec_isSet){
|
||||||
|
isObjectUpdated = true; break;
|
||||||
|
}
|
||||||
|
if(m_tv_u_sec_isSet){
|
||||||
|
isObjectUpdated = true; break;
|
||||||
|
}
|
||||||
}while(false);
|
}while(false);
|
||||||
return isObjectUpdated;
|
return isObjectUpdated;
|
||||||
}
|
}
|
||||||
|
@ -47,12 +47,27 @@ public:
|
|||||||
qint32 getSampleRate();
|
qint32 getSampleRate();
|
||||||
void setSampleRate(qint32 sample_rate);
|
void setSampleRate(qint32 sample_rate);
|
||||||
|
|
||||||
float getBufferRwBalance();
|
qint32 getQueueLength();
|
||||||
void setBufferRwBalance(float buffer_rw_balance);
|
void setQueueLength(qint32 queue_length);
|
||||||
|
|
||||||
|
qint32 getQueueSize();
|
||||||
|
void setQueueSize(qint32 queue_size);
|
||||||
|
|
||||||
qint32 getSampleCount();
|
qint32 getSampleCount();
|
||||||
void setSampleCount(qint32 sample_count);
|
void setSampleCount(qint32 sample_count);
|
||||||
|
|
||||||
|
qint32 getCorrectableErrorsCount();
|
||||||
|
void setCorrectableErrorsCount(qint32 correctable_errors_count);
|
||||||
|
|
||||||
|
qint32 getUncorrectableErrorsCount();
|
||||||
|
void setUncorrectableErrorsCount(qint32 uncorrectable_errors_count);
|
||||||
|
|
||||||
|
qint32 getTvSec();
|
||||||
|
void setTvSec(qint32 tv_sec);
|
||||||
|
|
||||||
|
qint32 getTvUSec();
|
||||||
|
void setTvUSec(qint32 tv_u_sec);
|
||||||
|
|
||||||
|
|
||||||
virtual bool isSet() override;
|
virtual bool isSet() override;
|
||||||
|
|
||||||
@ -63,12 +78,27 @@ private:
|
|||||||
qint32 sample_rate;
|
qint32 sample_rate;
|
||||||
bool m_sample_rate_isSet;
|
bool m_sample_rate_isSet;
|
||||||
|
|
||||||
float buffer_rw_balance;
|
qint32 queue_length;
|
||||||
bool m_buffer_rw_balance_isSet;
|
bool m_queue_length_isSet;
|
||||||
|
|
||||||
|
qint32 queue_size;
|
||||||
|
bool m_queue_size_isSet;
|
||||||
|
|
||||||
qint32 sample_count;
|
qint32 sample_count;
|
||||||
bool m_sample_count_isSet;
|
bool m_sample_count_isSet;
|
||||||
|
|
||||||
|
qint32 correctable_errors_count;
|
||||||
|
bool m_correctable_errors_count_isSet;
|
||||||
|
|
||||||
|
qint32 uncorrectable_errors_count;
|
||||||
|
bool m_uncorrectable_errors_count_isSet;
|
||||||
|
|
||||||
|
qint32 tv_sec;
|
||||||
|
bool m_tv_sec_isSet;
|
||||||
|
|
||||||
|
qint32 tv_u_sec;
|
||||||
|
bool m_tv_u_sec_isSet;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user